FIDO란?
기존의 비밀번호보다 안전하면서 편리한 인증수단(지문, 홍채, 얼굴, 정맥, 음성, 뇌파)으로 인증 프로토콜과 인증수단을 분리하여 보안과 편리성이 높다는 평가를 받으며 스마트 모바일 환경에 접속한 인증기술이라는 점에서 주목 받고 있는 신기술입니다.
FIDO 1.0은 모바일 기반의 UAF와 웹 기반의 U2F의 두 가지 인증 표준을 통해 동작
UAF
사용자 디바이스 인증기법을 온라인 서비스와 연동해서 사용자를 인증하는 기술
U2F
기존 패스워드를 사용하는 온라인 서비스에서 2번째 인증요소로 강한 인증을 사용자 로그인시에 추가할 수 있는 기술
FIDO 시스템은 FIDO서버, FIDO클라이언트, ASM(Authenticator Specific Module), 인증자(Authenticator)로 구성되어 있습니다.
FIDO 서버: 인증장치에 대한 정책을 설정하고 사용자의 공개키를 등록·관리 및 검증
FIDO 클라이언트: FIDO 서버의 정책에 따라 인증자를 필터링하고 ASM과 RP 클라이언트 간의 중계 역할
ASM(Authenticator Specific Module): FIDO 클라이언트의 요청을 인증자로 전달하고 인증자에서 생성된 응답 값을 FIDO 클라이언트로 전달하는 중계역할을 수행
인증자(Authenticator): 생체 인증 등으로 사용자를 사용자 단말에서 로컬 인증하고 서버에서의 원격 인증을 위한 공개키/개인키 쌍을 생성하여 개인키를 이용해 전자서명을 수행
FIDO의 주요 기능은 인증과 거래 확인을 위해 공개키 기반 전자서명을 활용하여 공개키 등록, 전자서명 생성 및 검증(인증과 거래확인), 등록 해지 과정으로 구성
등록: 생성된 공개키를 검증서버에 등록하는 과정
① 사용자는 서버(FIDO 서버)로 사용자 정보의 등록을 요청
② 서버는 사용자 단말(FIDO 클라이언트)로 인증정보를 요청하고 관련 정책을 전송
③ 사용자는 인증장치를 통해 생체정보를 입력하고 인증자는 입력된 생체정보를 이용하여 비 대칭키 쌍(공개키/개인키)을 생성
④ 사용자 단말은 생성된 공개키와 Attestation6)을 전송
⑤ 서버는 사용자 단말로부터 전달받은 사용자 공개키를 저장
인증: 검증서버의 챌린지(Challenge)에 전자서명값을 생성 및 검증하는 과정
거래확인: 인증과정과 동일하며 챌린지에 거래내역이 포함되어 전자서명 값을 생성 및 검증하는 과정
① 사용자는 서버(FIDO 서버)로 인증/거래확인을 요청
② 서버는 검증을 위한 인증시도(Challenge)를 생성하여 사용자 단말(FIDO 클라이언트)로 전송
③ 사용자는 등록된 생체 인증 정보를 통해 단말에 저장된 개인키를 추출하고 개인키를 이용하여 서버로부터 전달받은 인증시도(또는 거래 원문데이터)를 전자서명
④ 사용자 단말은 서명된 인증시도(또는 거래 원문데이터)를 서버로 전송
⑤ 서버는 공개키를 이용하여 사용자 단말로부터 전달받은 내용의 위·변조 여부를 검증
등록 해지: 저장된 개인키를 삭제하여 등록을 해지하는 과정
'개발 > FIDO' 카테고리의 다른 글
[FIDO] FIDO Certification (2) | 2022.10.05 |
---|---|
[FIDO] FIDO2 (0) | 2022.06.15 |