디지털 사용자 인증 정보는 암호화 방식으로 확인할 수 있는 문서이며 사용자를 인증, 승인 또는 기타 방식으로 사용자 정보를 제공하는 데 사용할 수 있습니다. 이러한 ID는 일반적으로 모바일 운전면허증, 디지털 여권, 탑승권과 같은 항목입니다. 이러한 ID는 디지털 지갑이라는 가상 컨테이너에 있으며 액세스하고 검색하는 방법을 지정하는 W3C 표준의 일부입니다. 이 표준은 웹 사용 사례의 경우 W3C 인증 관리 API를 사용하고 Android에서는 인증 관리자의 DigitalCredential API를 사용하여 구현됩니다.
디지털 사용자 인증 정보 이해하기
실제 세계에서는 사용자가 지갑에 신원을 보관하고 요청이 있을 때 요청자에게 신원을 제시할 수 있습니다.
이 경우 사용자는 일반적으로 하나의 지갑을 보유하고 있으며 요청자에게 표시하기 위해 지갑에서 요청된 사용자 인증 정보를 가져옵니다. 지갑은 대부분 호환되며 일반적으로 동일한 항목을 저장할 수 있습니다.
디지털 인증서의 주요 차이점은 다음과 같습니다.
- 사용자는 다양한 사용자 인증 정보를 포함할 수 있는 여러 지갑을 보유하고 있을 것으로 예상됩니다. 지갑은 지갑 내에 저장할 수 있는 사용자 인증 정보를 결정합니다.
- 이제 요청자는 실제 사람이 아닌 애플리케이션이며 인증자로 불립니다.
- 사용자 인증 정보 프레젠테이션은 소프트웨어에서 이루어집니다. 즉, API 노출 영역이 사용자 인증 정보를 가져와 표시합니다. Android에서는 Credential Manager가 이 역할을 합니다.
따라서 인증 관리자는 이전에 사용자가 처리했던 여러 역할을 수행합니다.
- Android에서 월렛이 인증 관리자 UI에 표시되려면 인증 관리자에 사용자 인증 정보 메타데이터를 등록해야 합니다.
- 인증 관리자는 요청에 따라 지갑에서 사용자의 인증 정보를 일치시키고 사용자가 선택할 수 있는 목록을 표시합니다.
- 사용자가 목록에서 사용자 인증 정보를 선택하면 인증 관리자가 지갑을 호출하고 지갑은 나머지 거래(UI 표시 등)를 처리하고 사용자 인증 정보를 애플리케이션에 반환합니다.
이 흐름은 다음과 같습니다.
사용자 환경
Android 흐름에서 볼 수 있듯이 사용자는 적절한 사용자 인증 정보를 선택하기 위해 인증 관리자 UI와 한 번만 상호작용하면 됩니다. 다음은 선택기가 표시되는 방식의 예입니다.

기준
디지털 사용자 인증 정보 요청은 OpenID4VP 표준을 사용하여 생성됩니다. 디지털 인증 정보 데모 사이트에서 요청 예시를 확인할 수 있습니다.
디지털 사용자 인증 정보 응답은 일반적으로 표준화된 사용자 인증 정보 형식으로 반환됩니다. 이러한 프로토콜은 다양한 표준 기관에서 유지관리하며 W3C 증명 서명, sd-jwt, mdoc 등이 있습니다.
맞춤 프로토콜도 가능하지만 애플리케이션에서는 표준 프로토콜 중 하나를 사용하는 것이 좋습니다.
사용해 보기
Android 지갑 및 웹 기반 인증자로 여러 플랫폼에서 디지털 사용자 인증 정보 흐름을 테스트할 수 있습니다.
- Android 휴대전화에 CMWallet 공개 샘플을 설치합니다.
저장소에서 가져와 Android 스튜디오에서 직접 설치하거나 https://github.com/digitalcredentialsdev/CMWallet/actions으로 이동하여 최신 빌드를 선택하여 최신
app-debug.apk
파일에 액세스하면 됩니다. - CMWallet을 열어 인증 관리자에 메타데이터를 등록합니다. 기기가 서로 연결되도록 블루투스가 사용 설정되어 있는지 확인합니다.
- https://digital-credentials.dev/로 이동하여
Request Credentials (OpenID4VP)
를 선택합니다. - 경고 메시지를 수락하고 휴대전화로 QR 코드를 스캔한 다음 '패스키 사용'을 선택하고 확인을 탭하여 사용 가능한 사용자 인증 정보를 표시합니다.
- CMWallet에서 사용자 인증 정보를 선택하여 브라우저로 돌아갑니다. 브라우저에 반환된 사용자 인증 정보가 표시됩니다.
참고 항목
- Credential Manager를 사용하여 앱에서 디지털 사용자 인증 정보를 요청하는 방법을 자세히 알아보려면 Credential Verifier API 페이지를 참고하세요.
- 인증 관리자를 사용하여 디지털 지갑을 빌드하는 방법을 자세히 알아보려면 인증 홀더 API 페이지를 참고하세요.