はじめに
Credential Handler API のデモを試してみたのでその備忘録を残します。
あくまで個人の備忘録であり、やったことを淡々と記載しているだけ(一部妄想含む)なので細かいことは実際に調べてみてください。
ちゃんとした解説付きで動作を確認したい方はこの記事ではなく、公式が用意している以下の動画を確認すると良いでしょう。
https://www.youtube.com/watch?v=bm3XBPB4cFY
Wallet
まず、WalletのURLにアクセスするといきなりダイアログがでます。
ここで、ドメインごとにCredentialを管理していることを匂わせるメッセージがでます(既視感)。

[Allow] を押下すると以下の画面が表示されます。
とりあえず[LOGIN]を押下します。

JaneDoeという名前でログインしたようです。
ここでWalletでの操作は終わりになります。

Issuer
IssuerのURLにアクセスします。
まず [RECEIVE A CREDENTIAL]を押下します。

以下のダイアログがでます。
IssuerがCredentialを送りたいそうなので [Next] を押下します。

Store Credentials ダイアログが表示されます。
先ほどログインをおこなったであろうWalletを選択します。

Wallet store() evetのダイアログが表示されます。
Credentialを保管したいかを聞かれているようなので[CONFIRM]を押下します。

Credentialが保管されたようです。[DONE]を押下します。

sotre() operationの結果が表示されます。
今回自分が試した際の結果は以下のとおりです。

Verifier
VerifierのURLにアクセスします。
[PRESENT A CREDENTIAL]を押下します。

Credentials Requestのダイアログが表示されます。
VerifierがCredentialを要求しているようなので[Next]を押下します。

Choose a Wallet ダイアログが表示されます。
Issuer アクセス時と同様にWalletを選択します。

Wallet get() event ダイアログが表示されます。
VerifierがCredentialを要求しているようです。
JanDoeになりきってUniversityDegreeCredentialを提示します。

get() operationの結果が表示されます。
今回自分が試した際の結果は以下のとおりです。

おわりに
今回はとりあえずCHAPIのデモを動かしてみました。
中では複雑なことをしている感がプンプンするので、少しずつ解き明かせていければなという感じです。
また、このAPIの動作に対して既視感がある方もいらっしゃるのではないでしょうか。そうです、ものすごくWebAuthentication APIっぽいです。そんなわけでWebAuthenticationな方々に刺さる一品なのではないでしょうか。