다중 인증(MFA) 및 2단계 인증(2FA)은 사용자가 시스템에 액세스하기 위해
두 가지 이상의 검증 양식을 제공해야 하는 보안 방법이다.
일반적으로 비밀번호와 사용자가 가지고 있는 것(휴대전화, 토큰) 또는
사용자 자신에 대한 정보(지문) 등의 정보를 결합하여 사용한다.
두 방법 모두 비밀번호가 유출되거나 손상되어도 권한이 없는 개인이
액세스 하는 것을 어렵게 하여 보안을 강화한다.
MFA란 개인이 인증에 있어 두 가지 이상의 수단을 제공해야 하는 인증 절차이다.
일반적으로 아이디와 패스워드만을 요청하는 방식에서 벗어나,
추가적인 인증 수단을 요구함으로써 보안을 강화한다.
OTP는 4-8 자리의 임의 숫자로, 이메일이나 문자, 전용 앱에서 확인할 수 있다.
이 코드는 사용자가 주기적으로 또는 매번 인증을 요청할 때마다 재생성되며,
처음 가입할 때 할당받은 시드값과 단순 증가하는 카운터 또는 무작위의 시간값을
기반으로 랜덤하게 생성된다.
1. 사용자가 알고 있는 정보(지식) - 패스워드, PIN 번호, OTP 등.
2. 사용자가 가지고 있는(소지) 것 - 뱃지, 핸드폰, USB 키 등.
3. 사용자 자체로 존재하는(본질적인) 것 - 지문, 음성인식 과 같은 생체정보.
현재는 MFA에 머신러닝 과 AI 를 결합하여 새로운 형태의 인증 방법을 시도중이다.
Location-based : 인증과정에서 사용자의 IP주소를 이용하여 위치를 확인하여
허가된 지역에 있을 경우에만 인증을 시키는 과정
Adaptive Authentication / Risk-based Authentication : 사용자가 인증을
시도하는 상황, 시간 등 다양한 요소를 고려하여 평소와는 다른 행동이
감지될 경우 추가적인 인증 수단을 요청
2FA는 MFA의 하위집합으로, 인증 수단을 두가지 사용하는 기술을 말한다.
갯수의 차이도 있으나, 2FA는 신원 도용을 방지하기 위해 시간에 민감한
일회용 암호만을 사용한다. 몇 초에서 1분마다 생성되는 하드웨어 토큰,
휴대전화 푸시알림 및 SMS 인증, 음성 기반 인증을 사용한다.
일반적으로 보안 수준이 높은 기업(의료시설, 정부기관 또는 금융기관)은
2단계 인증 대신 다중 인증을 선택하며, 그 외의 모든 온라인 개인 및 비즈니스
계정에는 2단계 인증이 도움이 될 수 있다.