인증 관리자 Holder API를 사용하면 Android 소지자('지갑'이라고도 함) 앱에서 디지털 사용자 인증 정보를 관리하고 확인자에게 제시할 수 있습니다.

사용자 인증 정보 형식
사용자 인증 정보는 다양한 사용자 인증 정보 형식으로 소지자 앱에 저장할 수 있습니다. 이러한 형식은 사용자 인증 정보를 표현하는 방법에 관한 사양이며, 각 형식에는 사용자 인증 정보에 관한 다음 정보가 포함됩니다.
- 유형: 대학 학위 또는 운전면허증과 같은 카테고리입니다.
- 속성: 이름 및 성과 같은 속성입니다.
인코딩: 사용자 인증 정보가 구조화되는 방식(예: SD-JWT 또는 mdoc)
유효성: 사용자 인증 정보의 진위 여부를 암호화 방식으로 확인하는 방법입니다.
각 사용자 인증 정보 형식은 인코딩 및 검증을 약간 다르게 수행하지만 기능적으로는 동일합니다.
레지스트리는 두 가지 형식을 지원합니다.
- SD-JWT: IETF SD-JWT 기반 검증 가능한 사용자 인증 정보 (SD-JWT VC) 사양을 준수합니다.
- 모바일 문서 또는 mdoc: ISO/IEC 18013-5:2021 사양을 준수합니다.
검증자는 인증 관리자를 사용할 때 SD-JWT 및 mdoc에 대한 OpenID4VP 요청을 할 수 있습니다. 선택은 사용 사례와 업종 선택에 따라 달라집니다.
사용자 인증 정보 메타데이터 등록
인증 관리자는 소지자의 사용자 인증 정보를 직접 저장하지 않고 사용자 인증 정보의 메타데이터를 저장합니다. 소지자 앱은 먼저 RegistryManager를 사용하여 인증 관리자에 인증 정보 메타데이터를 등록해야 합니다. 이 등록 프로세스는 다음 두 가지 주요 목적을 수행하는 레지스트리 레코드를 만듭니다.
- 일치: 등록된 사용자 인증 정보 메타데이터는 향후 인증자 요청과 일치하는 데 사용됩니다.
- 표시: 맞춤설정된 UI 요소가 사용자 인증 정보 선택기 인터페이스에서 사용자에게 표시됩니다.
OpenId4VpRegistry 클래스를 사용하여 디지털 인증서를 등록합니다. 이 클래스는 mdoc 및 SD-JWT 인증서 형식을 모두 지원합니다. 검증자는 OpenID4VP 요청을 전송하여 이러한 사용자 인증 정보를 요청합니다.
사용자 인증 정보 발급 방법
사용자 인증 정보 발급은 다음 두 가지 방법으로 트리거할 수 있습니다.
- 발급기관에서 시작하는 흐름: 사용자가 발급기관 애플리케이션 또는 웹사이트에서 VDC를 발급하라는 요청을 트리거합니다. 예를 들어 웹사이트에서 사용자에게 '월렛에 여권 추가' 옵션을 제공할 수 있습니다. 발급기관은 Credential Manager 발급 API를 호출하여 OpenID4VCI 사용자 인증 정보 제공 요청을 합니다. 이러한 요청을 처리하려면 소지자가 먼저 인증 관리자와 통합하여 메타데이터를 등록해야 합니다. 인증 관리자는 사용자가 선택할 수 있는 관련 옵션을 표시합니다. 사용자가 소지자 옵션을 선택하면 소지자 애플리케이션이 호출되고 발급을 완료하는 데 필요한 단계를 진행할 수 있습니다.
- 소지자 시작 흐름: 사용자가 소지자 애플리케이션에서 VDC를 추가하도록 요청합니다. 예를 들어 홀더는 '여권 추가' 버튼을 제공할 수 있습니다. 이 경우 소지자는 지원되는 발급기관 목록과 메타데이터를 유지합니다. 이 기능을 완료하기 위해 Android 인증 관리자와 통합할 필요는 없습니다.