FIDO UAF: Difference between revisions
From IT Wiki
No edit summary |
No edit summary |
||
(5 intermediate revisions by the same user not shown) | |||
Line 12: | Line 12: | ||
| | | | ||
RP 애플리케이션 | RP 애플리케이션 | ||
(Relying-Party Application) | (Relying-Party Application) | ||
|| | || | ||
Line 26: | Line 27: | ||
| | | | ||
ASM | ASM | ||
(Authenticator Specific Module) | (Authenticator Specific Module) | ||
|| | || | ||
Line 45: | Line 47: | ||
| | | | ||
RP 서버 | RP 서버 | ||
(Relying-Party Server) | (Relying-Party Server) | ||
|| | || | ||
Line 54: | Line 57: | ||
* RP 서버의 요청을 받아서 인증을 처리하고 결과를 RP 서버로 반환 | * RP 서버의 요청을 받아서 인증을 처리하고 결과를 RP 서버로 반환 | ||
|} | |} | ||
= 11가지 규격 = | |||
# 아키텍처 개요 규격 | |||
# 프로토콜 규격 | |||
# 응용 API와 전송 바인딩 규격 | |||
# 인증장치 인터페이스 모듈 API 규격 | |||
# 인증장치 명령어 규격 | |||
# 인증장치 메타데이터 규격 | |||
# 인증장치 메타데이터 서비스 규격 | |||
# 공통상수 규격 | |||
# AppID와 Facet규격 | |||
# 보안 참조 규격 | |||
# 용어 해설 규격 | |||
= 절차 = | = 절차 = | ||
;크게 등록(Registration), 인증(Authentication), 거래확인(Transaction Confirmation), 해지(Deregistration)로 구성 | ;2. 프로토콜 규격 상의 내용 | ||
크게 등록(Registration), 인증(Authentication), 거래확인(Transaction Confirmation), 해지(Deregistration)로 구성 | |||
== 등록(Registration) == | == 등록(Registration) == | ||
* '''FIDO 인증장치에서 생성된 보안 정보를 FIDO 서버에 등록하는 과정''' | * '''FIDO 인증장치에서 생성된 보안 정보를 FIDO 서버에 등록하는 과정''' | ||
* 사용자의 인증정보(예:지문특징정보)를 어떻게 FIDO 인증장치에 등록해야 하는지 다루지 않음 | * 사용자의 인증정보(예:지문특징정보)를 어떻게 FIDO 인증장치에 등록해야 하는지 다루지 않음 | ||
** FIDO 인증장치를 제공하는 기업에서 사용자 인증정보 등록절차를 스스로 결정 | ** FIDO 인증장치를 제공하는 기업에서 사용자 인증정보 등록절차를 스스로 결정 | ||
* [[파일:FIDO UAF 등록.png]]<ref>출처:TTA</ref> | |||
* '''프로세스''' | * '''프로세스''' | ||
# 사용자가 | # 사용자가 서비스에 ID/패스워드를 등록한 상태에서 인증 수단을 지문으로 변경 요청한다. | ||
# | # 서비스는 사용자 패스워드를 확인한 후에 FIDO 등록 요청 메시지를 FIDO 서버에 보낸다. | ||
# FIDO 서버는 응용 서비스의 인증정책이 포함된 FIDO 등록 요청 메시지를 생성하고 응용 서버와 응용 애플리케이션을 통해 FIDO 클라이언트에 전달한다. | # FIDO 서버는 응용 서비스의 인증정책이 포함된 FIDO 등록 요청 메시지를 생성하고 응용 서버와 응용 애플리케이션을 통해 FIDO 클라이언트에 전달한다. | ||
# FIDO 인증장치는 사용자로부터 지문을 입력 받고 등록된 지문과 일치한다고 판단하면, 해당 FIDO 서버에 사용자를 등록하기 위한 공개키-개인키 쌍을 생성한다. | # FIDO 인증장치는 사용자로부터 지문을 입력 받고 등록된 지문과 일치한다고 판단하면, 해당 FIDO 서버에 사용자를 등록하기 위한 공개키-개인키 쌍을 생성한다. | ||
Line 70: | Line 88: | ||
== 인증(Authentication) == | == 인증(Authentication) == | ||
* [[파일:FIDO UAF 인증.png]]<ref>출처:TTA</ref> | |||
# 사용자는 응용 애플리케이션을 통해 사용자 인증을 요청한다. | # 사용자는 응용 애플리케이션을 통해 사용자 인증을 요청한다. | ||
# 응용 애플리케이션은 응용 서버에 FIDO 인증을 요청하고 응용 서버는 FIDO 서버에 FIDO 인증 요청 메시지를 요청한다. | # 응용 애플리케이션은 응용 서버에 FIDO 인증을 요청하고 응용 서버는 FIDO 서버에 FIDO 인증 요청 메시지를 요청한다. | ||
Line 77: | Line 96: | ||
# FIDO 서버는 등록 프로토콜 수행 중에 FIDO 서버에 저장되었던 공개키를 이용하여 전자서명을 확인하고 인증 결과를 반환한다. | # FIDO 서버는 등록 프로토콜 수행 중에 FIDO 서버에 저장되었던 공개키를 이용하여 전자서명을 확인하고 인증 결과를 반환한다. | ||
= 같이 보기 = | |||
* [[FIDO]] | * [[FIDO]] | ||
* [[바이오정보]] | * [[바이오정보]] |
Latest revision as of 15:43, 21 August 2019
- FIDO Universal Authentication Framework
아키텍처[edit | edit source]
- 사용자 디바이스와 서버로 나뉘며, RP 애플리케이션과 RP 서버의 TLS 통신 통해 연동
디바이스[edit | edit source]
- 서비스를 제공하는 RP 애플리케이션과 사용자 인증을 수행하기 위한 FIDO 클라이언트로 나뉜다.
구분 | 설명 |
---|---|
RP 애플리케이션 (Relying-Party Application) |
|
FIDO 클라이언트 |
|
ASM (Authenticator Specific Module) |
|
인증장치 (Authenticator) |
|
서버[edit | edit source]
구분 | 설명 |
---|---|
RP 서버 (Relying-Party Server) |
|
FIDO 서버 |
|
11가지 규격[edit | edit source]
- 아키텍처 개요 규격
- 프로토콜 규격
- 응용 API와 전송 바인딩 규격
- 인증장치 인터페이스 모듈 API 규격
- 인증장치 명령어 규격
- 인증장치 메타데이터 규격
- 인증장치 메타데이터 서비스 규격
- 공통상수 규격
- AppID와 Facet규격
- 보안 참조 규격
- 용어 해설 규격
절차[edit | edit source]
- 2. 프로토콜 규격 상의 내용
크게 등록(Registration), 인증(Authentication), 거래확인(Transaction Confirmation), 해지(Deregistration)로 구성
등록(Registration)[edit | edit source]
- FIDO 인증장치에서 생성된 보안 정보를 FIDO 서버에 등록하는 과정
- 사용자의 인증정보(예:지문특징정보)를 어떻게 FIDO 인증장치에 등록해야 하는지 다루지 않음
- FIDO 인증장치를 제공하는 기업에서 사용자 인증정보 등록절차를 스스로 결정
- [1]
- 프로세스
- 사용자가 서비스에 ID/패스워드를 등록한 상태에서 인증 수단을 지문으로 변경 요청한다.
- 서비스는 사용자 패스워드를 확인한 후에 FIDO 등록 요청 메시지를 FIDO 서버에 보낸다.
- FIDO 서버는 응용 서비스의 인증정책이 포함된 FIDO 등록 요청 메시지를 생성하고 응용 서버와 응용 애플리케이션을 통해 FIDO 클라이언트에 전달한다.
- FIDO 인증장치는 사용자로부터 지문을 입력 받고 등록된 지문과 일치한다고 판단하면, 해당 FIDO 서버에 사용자를 등록하기 위한 공개키-개인키 쌍을 생성한다.
- FIDO 인증장치는 생성된 공개키와 공개키의 증명(attestation) 정보가 포함된 FIDO 등록 응답 메시지를 응용 애플리케이션과 응용 서버를 통해 FIDO 서버에 전달하며, 생성된 개인키는 FIDO 인증장치 내에 저장한다.
- FIDO 서버는 공개키의 증명 정보를 인증장치 메타데이터를 이용해 확인하고, FIDO 등록 응답 메시지 내의 사용자 공개키를 FIDO 서버에 저장한 후, 그 결과를 반환한다.
인증(Authentication)[edit | edit source]
- 사용자는 응용 애플리케이션을 통해 사용자 인증을 요청한다.
- 응용 애플리케이션은 응용 서버에 FIDO 인증을 요청하고 응용 서버는 FIDO 서버에 FIDO 인증 요청 메시지를 요청한다.
- FIDO 서버는 FIDO 인증 요청 메시지를 생성하고 응용 서버와 응용 애플리케이션을 통해 FIDO 클라이언트에 전달한다.
- FIDO 인증장치는 사용자로부터 지문을 입력 받고 등록된 지문과 일치한다고 판단하면, FIDO 인증장치는 등록 프로토콜 수행 중에 생성되었던 개인키를 이용해 전자서명을 생성한다.
- FIDO 인증장치는 전자서명이 포함된 FIDO 인증 응답 메시지를 응용 애플리케이션과 응용 서버를 통해 FIDO 서버에 전달한다.
- FIDO 서버는 등록 프로토콜 수행 중에 FIDO 서버에 저장되었던 공개키를 이용하여 전자서명을 확인하고 인증 결과를 반환한다.