クリスマスも終わり気づけば今年の残り日数もわずかとなりましたね🎄
本記事では、2025年9月にfinalizeされた OpenID for Verifiable Credential Issuance 1.0 (以下OPenID4VCI) のID2とFinalの差分を整理していきたいと思います!
(漠然と大きく変わった印象がありましたが、差分がまとまった記事を発見できなかったのでゆるく見ていこうという気持ちです🐈⬛)
| カテゴリ | ID2 | Final |
|---|---|---|
| Authorization Request |
wallet_issuer と user_hint を定義 |
wallet_issuer と user_hintは削除 |
| Authorization Request |
format を定義 |
format を削除し、claims を追加 |
| Credential Request |
proof(単一)または proofs(配列)を選択可能 |
proofs(配列)に一本化、proof は削除 |
| Credential Request | - |
credential_request_encryption を追加。リクエスト自体の暗号化が可能 |
| Credential Respons | 複数のクレデンシャル発行時、異なる暗号化データを含んでよい (MAY) | 複数のクレデンシャル発行時、異なる暗号化データを含むべき (SHOULD) |
| Credential Response |
jwk, alg, enc で構成 |
alg を削除し、 zip を追加 |
| Proof Type | ldp_vp |
W3Cの定義に合わせて di_vp に変更 |
| Credential Respons |
interval は issuance_pending エラー時に返却 |
transaction_id 返却時は interval が必須(REQUIRED) |
| Credential Request Error |
unsupported_credential_type , unsupported_credential_format を定義 |
unsupported_credential_type , unsupported_credential_format を削除し、 unknown_credential_configuration , unknown_credential_identifier を追加 |
| Credential Error Response | クレデンシャルを即時発行できない場合は issuance_pending を返す |
issuance_pending エラーを削除 |
| Metadata | パス末尾に /.well-known/... を結合 |
ホストとパスの間に挿入するルールを定義(例:host/.well-known/tenant) |
| Metadata |
signed_metadata で署名付きJWTを提供 |
signed_metadata を削除し、 application/jwt メディアタイプによる取得をサポート |
| Metadata |
credential_issuer を定義 |
credential_issuer がmetadataの取得に使用したURLと完全に一致するという要件を追加(MUST) |
| Metadata | - |
credential_request_encryption を追加 |
| Metadata |
display, claims を定義 |
display, claims などをまとめる credential_metadata を追加。発行されたクレデンシャルの使用および表示に関連する情報を含む |
| 一括発行の制限 |
batch_size は正の整数 |
batch_size は 2 以上であることが必須 (MUST) |
改めて洗い出すとやはりある程度変更がありますね。
個人的には、パラメータの入れ子の位置は地味に混乱ポイントなのでよく読みながら実務でも対応を進めていきたい所存です。
毎月読んでくださっている方がいるかは定かではないですが、今年もありがとうございました!
来年もどうぞよろしくお願いいたします🎍