Multi-Factor Authentication
서로 다른 인증 요소를 2개 이상 사용하는 모든 인증 방식
MFA는 하나의 기술을 말하는게 아니라, 여러 종류의 인증 요소 조합으로 만들어진다
| 요소 | 의미 | 예시 |
| Knowledge | 내가 아는것 | 비밀번호, PIN 번호 |
| Possession | 내가 가진것 | 휴대폰, OTP, 보안키 |
| Inherence | 나 | 지문, 얼굴 |
위의 것들을 조합해서 만듬
1. 비밀번호 + OTP (Knowledge + Possession)
가장 많이 쓰는 MFA임
일반적인 비밀번호와 OTP 인증을 통해 이루어진다
이 구성은 보안이 괜찮고, 구현이 쉬워서 일반적인 MFA로 활용한다
2. 비밀번호 + SMS or 이메일 코드 (Knowledge + Possession)
비밀번호와 문자 인증으로 이루어진 구조
이 구조는 쉽고, 사용자 친화적이다
그러나 SMS의 경우 SIM 탈취로 인해 해킹의 우려가 있고, 이메일 또한 탈취당할 가능성이 있다
그래서 일반적으로 OTP가 SMS/이메일보다 안전하다
3. 비밀번호 + 생체 인증(Knowledge + Inherence)
비밀번호와 지문, 혹은 얼굴을 통해 이루어지는 MFA
스마트폰, Windows Hello, Mac TouchID 등이 대표적이다
이 방식은 매우 빠르고, 편하고, 보안이 높다곤 하는데 우리나라에선 다 뚫린 케이스가 있었다...
4. 비밀번호 + 보안키(FIDO / WebAuthn, Knowledge + Possession)
비밀번호와 USB 보안키 방식의 MFA
Google, Git, AWS, 기업 계정에서 보통 사용한다
이 방식은 매우매우 강력하고, 피싱을 방지해서 기업에서 많이들 쓴다
5. Passkey / Passwordless MFA(Possession + Inherence, 내가 가진것 + 나 자신)
기기 인증이나 지문/얼굴을 통해 이루어지는 MFA
Google, Apple, MS에서 사용해볼 수 있음
비밀번호 없이 이루어진다는 특징이 있음
이 방식은 피싱이 거의 불가해서 매우 안전하다
6. 3단계 이상 MFA
3단계 이상은 보통 은행, 정부, 대기업 규모나 AWS Root 계정에서 사용할 수 있다
비밀번호 + OTP + 지문 / 비밀번호 + OTP + 보안키 형태가 일반적이라고 함
Security에서
로그인 - MFA - token 발급의 구조로 설계해볼 수 있다
'Spring Boot' 카테고리의 다른 글
| Spring을 실행했더니 8080 포트를 이미 사용중일 때 (0) | 2026.04.26 |
|---|---|
| [IntelliJ] .env를 통해 application.yml에 환경변수 적용법 (0) | 2026.03.15 |
| Spring Boot 3.xx와 비교한 4.xx의 특징 (0) | 2026.03.08 |
| OAuth : OpenID Connect(OIDC) (0) | 2025.10.18 |
| OAuth : 워크플로우 (0) | 2025.10.15 |