デジタル認証情報の保存について

認証情報マネージャー Holder API を使用すると、Android ホルダー(「ウォレット」とも呼ばれます)アプリでデジタル認証情報を管理し、検証者に提示できます。

認証情報マネージャーのデジタル認証情報 UI を示す画像
図 1. デジタル認証情報セレクタの UI。

認証情報の形式

認証情報は、さまざまな認証情報形式でホルダーアプリに保存できます。これらの形式は、認証情報の表現方法に関する仕様であり、それぞれに認証情報に関する次の情報が含まれています。

  • タイプ: 大学の学位や運転免許証などのカテゴリ。
  • プロパティ: 姓名などの属性。
  • エンコード: 認証情報の構造化方法(SD-JWT、mdoc など)

  • 有効性: 認証情報の真正性を暗号で検証する方法。

各認証情報形式では、エンコードと検証の方法が若干異なりますが、機能的には同じです。

レジストリは次の 2 つの形式をサポートしています。

検証者は、認証情報マネージャーを使用するときに、SD-JWT と mdoc の OpenID4VP リクエストを行うことができます。選択内容は、ユースケースと業界の選択によって異なります。

認証情報メタデータの登録

認証情報マネージャーは、所有者の認証情報を直接保存するのではなく、認証情報のメタデータを保存します。ホルダーアプリは、まず RegistryManager を使用して認証情報マネージャーに認証情報メタデータを登録する必要があります。この登録プロセスでは、次の 2 つの主な目的を果たすレジストリ レコードが作成されます。

  • 照合: 登録された認証情報のメタデータは、将来の検証リクエストとの照合に使用されます。
  • 表示: カスタマイズされた UI 要素が、認証情報セレクタ インターフェースでユーザーに表示されます。

OpenId4VpRegistry クラスを使用してデジタル認証情報を登録します。このクラスは、mdoc と SD-JWT の両方の認証情報形式をサポートしています。検証者は、これらの認証情報をリクエストするために OpenID4VP リクエストを送信します。

認証情報の発行方法

認証情報の発行は、次の 2 つの方法でトリガーできます。

  • カード発行会社が開始するフロー: ユーザーがカード発行会社のアプリまたはウェブサイトから VDC の発行リクエストをトリガーします。たとえば、ウェブサイトでユーザーに「パスポートをウォレットに追加する」オプションを提供できます。発行元は、Credential Manager 発行 API を呼び出して、OpenID4VCI 認証情報オファー リクエストを送信します。このようなリクエストを処理するには、ホルダーはまず認証情報マネージャーと統合してメタデータを登録する必要があります。認証情報マネージャーには、ユーザーが選択できる関連オプションが表示されます。ユーザーがホルダー オプションを選択すると、ホルダー アプリケーションが呼び出され、発行を完了するために必要な手順に進むことができます。
  • ホルダー主導のフロー: ユーザーがホルダー アプリケーションから VDC の追加をリクエストします。たとえば、ホルダーは「パスポートを追加」ボタンを提供できます。この場合、ホルダーはサポートされている発行元のリストとメタデータを保持します。この機能を完了するために、Android 認証情報マネージャーと統合する必要はありません。