OpenID Foundation DCP WG 活動レポート (2024 年 3 月)
執筆日: 2026-05-22(遡及執筆) この記事は 2024 年 3 月の活動を遡及的にまとめたレポートです。
1. 概要
Digital Credentials Protocols Working Group(以下「DCP WG」)は、Issuer-Holder-Verifier モデルに基づく検証可能クレデンシャル(W3C VC、IETF SD-JWT VC、ISO/IEC 18013-5 mDL など)の発行・提示・交換に関するプロトコル群を所管する OpenID Foundation の WG である。2024 年 3 月時点での共同議長は Kristina Yasuda(Microsoft)、Joseph Heenan(Authlete)、Torsten Lodderstedt(SPRIND)の 3 名体制で、定例コールは DCP WG + SIOP call 名義で APAC 友好枠(火曜 PST midday)と EU 友好枠(木曜 PST 8AM / 5PM CEST)の 2 系統が運用されていた。
2024 年 3 月の DCP WG は、OID4VCI 1.0 第 1 次 Implementer's Draft (ID1) の公開レビュー終了 (3/24) と OIDF 全会員投票 (3/18–4/1) を最大の節目 とし、それと並行して OID4VP の Implementer's Draft 3 (ID3) に向けた仕様アイテム選定と決着 が進められた月であった。OID4VCI は当時まだ AB/Connect WG 配下の文書として運用されており、DCP WG ML 上では公開レビュー終了直前の最終クロスチェックと、投票後すぐに発出される予定の「AB/Connect WG から DCP WG への所管移管 (Call for Adoption)」の前段整理が進行した。
本月の主軸テーマは大きく次の 5 系統である。
- OID4VCI ID1 投票プロセスの本格化: 2/8 開始の 45 日間公開レビューが 3/24 に終了し、Marie Jordan(OIDF Secretary)からの Notice of Vote が 3/11 に発出。早期投票が 3/18 開始、公式投票期間は 3/25–4/1 に設定された。WG ML 内に投票呼びかけ・最終コメントが集中
- OID4VP の ID3 アイテム合意形成: 3/26 APAC コール(議事録 #000239)で Joseph Heenan が「SD-JWT VC profile、request_uri extension、mdoc/mdl fixes、client_id_scheme security improvements」の 4 点を ID3 ターゲットとして提案し WG 合意を得た。同コールで PR #59 (request_uri extension) が 4 か月半の議論を経て 3/26 にマージ
- W3C Digital Credentials API(当時 Browser API と呼称)プロファイル化議論の本格化: Torsten Lodderstedt が 3/5 に Issue #125 を起票し OID4VP の Browser API プロファイル提案を提示。3/26 コールで「OIDC4VP の Appendix として PR を作成」する方向で WG 合意。これが 4/14 起票の PR #155 の起点となる
- Presentation Exchange (PE) の扱いを巡る根本的議論: Oliver Terbu が 3/5 にフォーマット固有クエリ言語提案(#000192)、Orie Steele が 3/11 に「PEv1 凍結 + PEv2 別ドキュメント化 + W3C/WICG トラック分離」案(#000207)、Sakurann が 3/12 に Issue #129 で「PEv2 の mandatory-to-implement 最小プロファイル」案を提示。3 種類の対案が同時並行で動く月であった
- client_id_scheme のセキュリティ強化: Daniel Fett が 3/5 に Issue #124 を起票し、「
(client_id, client_id_scheme)を組として扱うべき」という根本的な指摘。OID4VP のセキュリティモデルに対するこの月の最大の技術的指摘となり、48 コメントの長期議論を引き起こした
WG 主要メンバー(Kristina Yasuda、Joseph Heenan、Torsten Lodderstedt、Daniel Fett、Tobias Looker、Oliver Terbu、Paul Bastian、Brian Campbell、Michael Jones、John Bradley、Christian Bormann、Jan Vereecken、Orie Steele、David Chadwick、Pedro Felix、Sebastien Bahloul、Juba Saadi 他)に加え、3/28 Atlantic コールには Paolo de Rosa(European Commission)と Ajay Gupta(California DMV)がゲスト参加 し、Browser API 上での OID4VP の要件と期待を直接 WG に伝達した点が本月のもう一つの注目イベントである。
メーリングリスト openid-specs-digital-credentials-protocols 上の 3 月送信投稿は通算 約 60 件(メッセージ番号 000190〜000243、HAIP リポジトリの bot 投稿を含む)で、月の前半(3/5・3/14 コール)・中盤(3/19・3/21 コール)・後半(3/26・3/28 コール、PR #59 マージ)の 3 山構造であった。同時期に IETF 119(Brisbane、3/16–22)で SPICE BOF が開催され WG charter が IESG 承認、DCP WG メンバーの多くが IETF と OIDF の両標準化ストリームを横断する状況下にあった。
2. 公開された仕様・ドラフト改訂
OID4VCI 1.0 ID1 公開レビュー終了と投票開始
本月のもっとも重要なマイルストーンは OID4VCI 1.0 を OpenID Implementer's Draft (ID1) として承認するための公式手続きが投票フェーズに入った ことである。
- 公開レビュー期間: 2024-02-08 〜 2024-03-24(45 日間、Public Review Period for Proposed Implementer's Draft)
- Notice of Vote 発出: 2024-03-11(Notice of Vote for Proposed Implementer's Draft of OpenID for Verifiable Credential Issuance)
- 早期投票開始: 2024-03-18(レビュー完了済みメンバー向け)
- 公式投票期間: 2024-03-25 〜 2024-04-01
- 投票対象版: openid-4-verifiable-credential-issuance-1_0-ID1.html(draft 13)
Notice of Vote の本文は「The official voting period will be between Monday, March 25, 2024 and Monday, April 1, 2024, once the 45 day review of the specification has been completed」と公式期間を定めつつ、レビューを完了したメンバー向けに 3/18 からの早期投票枠も用意するという運用であった。3 月末時点では結果未公表であったが、WG ML 上では「the OID4VCI specification is now in the formal voting period」(3/21 EU 友好枠コール議事録 #000225 関連討議)と認識共有が進んだ。
なお、当時 OID4VCI は依然として AB/Connect WG 配下の文書として公開アナウンスされており、所管が DCP WG に移管されるのは ID1 承認後の Call for Adoption(4/15 発出)を経た 4 月以降である。3 月時点の WG ML 内議論ではすでに 「ID1 承認後即座に DCP 移管の手続きに入る」という運用が前提化 されていた。
OID4VP Editor's Draft の進捗(GitHub PR)
openid/OpenID4VP リポジトリで 3 月にマージされた PR は 7 件。エディトリアル修正が多いが、最後の PR #59 (request_uri extension) のマージ が本月最大の技術的成果である。
| PR | タイトル | マージ日 | 著者 |
|---|---|---|---|
| #102 | Change title to editor's draft | 3/5 | awoie |
| #114 | Relax language on PE | 3/6 | awoie |
| #121 | Fix did client_id_scheme example request object | 3/6 | jogu |
| #119 | Clarify that alg_values_supported is optional | 3/7 | awoie |
| #123 | Fix SIOPv2+VP example | 3/18 | jogu |
| #126 | Require state/nonce to only contain URL safe characters | 3/21 | jogu |
| #59 | request_uri extension | 3/26 | tlodderstedt |
PR #59: request_uri extension(3/26 merge)
Torsten Lodderstedt 起票(2023-11-02)の 4 か月半に及んだ大型 PR。OID4VP の advanced flow(Issue #45)を 簡素化かつプライバシー強化 する設計で、本月 3/19 APAC・3/21 EU・3/26 APAC の 3 回のコールで集中議論を経てマージされた。
PR 本文によれば、本拡張は以下を実現する:
- 初期リクエスト署名による request_uri コールバック経由のユーザトラッキング防止(initial request signing で wallet 側がコールバックを発火する前に verifier 認証可能)
- wallet capability への request object のチューニング(クライアント・サーバ間の能力交換)
- wallet identity と capability の verifier への早期 attest(advanced flow 内での attestation chain 確立)
- presentation request の暗号化 と wallet 提供 nonce の signed presentation request object への組み込み
3/14 APAC コール(議事録 #000213)では「Response 構造を pure JSON にすべきか」を巡って Orie Steele が「many libraries reject alg: none」と pure JSON 優先を主張、Joseph Heenan が「servers can leverage accept headers」と中間案を提示、最終的に Torsten が「OAuth の慣行に揃え、form-encoded request と JSON-encoded response の組み合わせ」で着地させた。3/26 APAC コールで「PR #59 received extensive approvals and was scheduled for merging」と確認、その日のうちにマージ。
このマージにより OID4VP の advanced flow は request_uri を通じた wallet-driven な capability negotiation と signed initial request という設計に確定し、4 月以降の Browser API プロファイル化 (#155) の前提となる基盤が整った。
PR #126: state/nonce の URL-safe 制限(3/21 merge)
Joseph Heenan 起票。state と nonce を URL-safe 文字に限定する変更。Implementer's Draft 3 ターゲットの軽量修正で、3/21 EU 友好枠コールで合意のうえマージ。
PR #114: Relax language on PE(3/6 merge)
Oliver Terbu 起票。Presentation Exchange への参照表現を緩和し、後続の「PE 簡素化」「PE 後継言語」議論の余地を仕様文言上で開けた変更。後述する Issue #129(Sakurann 提案)や Issue #136(Tobias 提案)への伏線。
OID4VCI Editor's Draft の進捗(GitHub PR)
openid/OpenID4VCI リポジトリで 3 月にマージされた PR は 2 件。
| PR | タイトル | マージ日 | 著者 |
|---|---|---|---|
| #281 | Change token endpoint example to use private_key_jwt | 3/7 | jogu |
| #277 | Addresses issue #273 | 3/7 | babisRoutis |
ID1 投票期間中の凍結運用が反映され、エディトリアル修正のみ。新規大型 PR は控えられた。
SIOPv2 リポジトリ
openid/SIOPv2 リポジトリでは 3 月に新規 Issue / PR が確認できなかった(Issue #21 "Response mode direct_post description seems inconsistent with OID4VP" のみ)。SIOPv2 仕様の openid.net 公開版が引き続き参照される運用であった。
oid4vc-haip-sd-jwt-vc リポジトリ
HAIP リポジトリでは多数の Issue コメントが ML に bot 配信されたが、新規 PR マージはなかった。3/19 APAC コールで「HAIP からの suggestion」を巡り「client_metadata と presentation_definition の重複時は client_metadata を leading source とする」という整理が PR #115 の方向性として WG 合意 された(議事録 #000216)。これは 4 月マージの OID4VP PR #115(SD-JWT VC プロファイル)に直接反映された方針合意である。
3. ミーティングと議論
2024 年 3 月の DCP WG 定例コール(DCP WG + SIOP call)は APAC 友好枠 = 火曜 PST midday、EU 友好枠 = 木曜 PST 8AM の 2 系統。ML から確認できる 3 月の開催状況は以下のとおり。
| 開催日 | 種別 | 議事録 |
|---|---|---|
| 2024-03-05(火) | APAC 友好枠 | #000197 Kristina Yasuda |
| 2024-03-07(木) | EU 友好枠 | (ML 上に明示の議事録投稿は確認できず) |
| 2024-03-14(火) | APAC 友好枠 | #000213 Jan Vereecken |
| 2024-03-14(木) | EU 友好枠 | #000214 Wen, Jin |
| 2024-03-19(火) | APAC 友好枠 | #000216 Jan Vereecken |
| 2024-03-21(木) | EU 友好枠 | #000225 Christian Bormann |
| 2024-03-26(火) | APAC 友好枠 | #000239 Orie Steele |
| 2024-03-28(木) | Atlantic 枠(特別ゲスト回) | アジェンダ #000243 Kristina Yasuda(議事録投稿は確認できず) |
加えて、Kristina Yasuda が 3/25 付で #000235・#000236 で「4/9 APAC・4/11 EU コール取消」、#000233・#000234 で「5/7 APAC・5/9 EU コール取消(後者は EIC 2024 Berlin との衝突)」を予告。月末段階で 4 月以降のスケジュール調整 が ML 上に明示された。
3-1. 2024-03-05 APAC 友好枠コール(議事録 #000197、Kristina Yasuda)
参加者: Joseph Heenan、Daniel Fett、Christian Bormann、Tobias Looker、Jin Wen、Torsten Lodderstedt、Dima Postnikov、Brian Campbell、Mike Jones、Sebastien Bahloul、Orie Steele、George Fletcher。
主要議題と決定:
- PR #59 (request_uri extension): 「initial request signing をやめて verifier に capability を
client_metadataで送信させ、wallet は限定データセットを返す POST にすることで user tracking を防ぐ」案を議論。最終的な MUST/SHOULD と response 形式の調整が継続課題として残った - OID4VP と Browser API の統合: 「verifier の non-web trust infrastructure ベース認証」と「ephemeral key による response 暗号化での replay 防止」を要件として整理。WG 全体として「OID4VP を broader browser API framework 内でサポートする」方向性を確認
- クエリ言語論争の入口: Tobias Looker が「credential format ごとの新クエリ言語」案を提示。Presentation Exchange (PE) からの脱却に向けた根本的議論の口火を切る発言(後述の Issue #129 / Issue #136 の前哨)
- 管理事項: サマータイム切替の影響に注意(noon PST を基準)。post-IIW Hybrid DCP セッション(4/19)の登録呼びかけ、OAuth Security Workshop 提出締切リマインド
3-2. 2024-03-14 APAC 友好枠コール(議事録 #000213、Jan Vereecken)
参加者: 17 名。Joseph Heenan、Kristina Yasuda、Brian Campbell、Daniel Fett、Michael Jones、Orie Steele、Torsten Lodderstedt 他。
主要議題と決定:
- OID4VP クエリ言語の意思決定方法論: Torsten が「wallet activation 自体は scope 外、wallet が open してから先が DCP の議論対象」と発言し、議論の境界を明示
- Minimum Presentation Exchange Profile(Sakurann 提案、Issue #129 の前段): 立場が分かれた
- Oliver Terbu: 「PE はあるクレデンシャル形式に対して format-agnostic ではない」
- Kristina Yasuda: 「PE は mdoc 実装に対して機能している(PE has functioned adequately for mdoc implementations)」
- Michael Jones: 「単一クレデンシャル提示シナリオに profile を限定すべき」
- Tobias Looker: 「類似 syntax で異なる処理は ambiguity を生み、潜在的に危険(promote ambiguity and might be potentially dangerous)」と警告
- PR #59 (request_uri extension): response 形式と encoding 一貫性が論点。Orie が「pure JSON response 推し(many libraries reject
alg: none)」、Joseph が「server は accept header を使える」、Torsten が「OAuth の慣行どおり request は form-encoded、response は JSON-encoded」と着地点を提示
アクション: Torsten が PR #59 への全フィードバックをレビュー、Jan が PR #115(SD-JWT VC プロファイル)の merge 準備、Paul Bastian が Issue #93(batch issuance)を進める、チーム全体で Issue #91 の方向性を再評価。
3-3. 2024-03-14 EU 友好枠コール(議事録 #000214、Wen, Jin)
参加者: 18 名。Kristina Yasuda、Torsten Lodderstedt、Oliver Terbu 他。
主要議題: OID4VP クエリ言語の 2 案併存:
- Proposal 1: Format-Specific Query Language(Oliver Terbu): 「Simplify queries by being more precise and having less implementation complexity, especially for non-JSON credential formats like CBOR」とし、JSON-LD / JWT / CBOR 横断で verifier の preference を順序付き配列で表現 する構造を提案
- Proposal 2: PE Minimum Profile(Kristina Yasuda): 「a mandatory minimum profile of Presentation Exchange (PE) for OpenID for VP」を定義し、basic features を捕捉しつつ「JSON schema 全体の引き渡し」のような複雑な要素は除外する。Implementer フィードバックへの応答として大規模な disruption を避ける案
WG として「継続討議、関連ドキュメントレビュー、実装フィードバックを集めて最終判断」と合意。APAC コールでの上記論点(Tobias の警告、Mike の単一クレデンシャル絞り込み案)と併せて、月後半の Issue #129(3/12)と Issue #136(3/26)の起票につながった。
並行して PR #59 の POST request capability とプライバシー(wallet metadata の取り扱い)も議論。今後のイベント(OIDF Workshop 4/15、IIW 4/16–18)の告知も実施。
3-4. 2024-03-19 APAC 友好枠コール(議事録 #000216、Jan Vereecken)
参加者: 12 名。Joseph Heenan、Daniel Buchner、Oliver Terbu、Torsten Lodderstedt、Jan Vereecken、Kim Hamilton Duffy 他。
主要議題と決定:
- PR #115 (SD-JWT VC プロファイル、
client_metadata): 「the suggestion from HAIP is acceptable for everyone」と全員合意。client_metadataと presentation definition の両方に現れるメタデータについてはclient_metadataを leading source として negotiation を進める ことを確認 - PR #126 (state/nonce の URL-safe): マージ承認
- PR #128 (mDL examples): ISO 仕様(特に encryption と signed requests)との不整合を指摘。ISO 18013-7 が authoritative なのか、別途ガイダンスが必要かが議論された
- Interop Profile: EU LSP(POTENTIAL)向けに 「軽量 HAIP プロファイル」 を定義する方針: wallet attestation と DPoP を optional、client_id_scheme は
x509_san_dnsのみ必須
アクション: Torsten が PR #59 全フィードバックを再レビュー、Jan が PR #115 の merge 準備完了、Paul Bastian が Issue #93(batch issuance)を進行、チーム全体で Issue #91 の用語と方向性を再評価。
3-5. 2024-03-21 EU 友好枠コール(議事録 #000225、Christian Bormann)
参加者: 15 名。Torsten Lodderstedt、Joseph Heenan、David Chadwick、Oliver Terbu、Ryan Galluzzo(NIST)他。
主要議題と決定:
- OpenID4VP Browser API Profile: W3C Digital Credentials API と OID4VP の統合提案を議論。Torsten が「
web_originという新しい client identifier scheme」で wallet 呼び出しのセキュリティを担保する方針を説明。WG として 「Appendix として PR を作成し、ID3 後に merge」 で合意(→ 4/14 PR #155 起票につながる) - PR #59 (request_uri extension): client identity 検証要件を 「MUST refuse」→「SHOULD refuse」に緩和 で合意(client credentials が trust framework と一致しないケースの取扱い)。David Chadwick が wallet 検証手順のドキュメント改訂を担当
- OID4VP ID3 タイムライン: Joseph が「すぐに ID3 に進む」方針を提案。ISO のような外部組織への安定参照点を提供することが目的。ID3 ターゲット項目: SD-JWT VC profile、request_uri extension、mdoc/mdl fixes、client_id_scheme security improvements
- Interop Event Planning: Torsten が LSP(POTENTIAL)向け interop イベント用テストトラックを提示。Oliver が「Track 1 要件の緩和でより広範な参加を促進」を要請
アクション: Browser API profile PR の作成、request_uri ドキュメントの改訂(Chadwick)、ID3 readiness のためのオープン PR レビュー。
3-6. 2024-03-26 APAC 友好枠コール(議事録 #000239、Orie Steele)
参加者: 19 名。Sam Goto(Google Chrome)、W3C 関係者、各種デジタル ID 組織代表 を含む拡大版コール。
主要決定:
- Browser API 提案: WG として W3C Digital Credentials API 提案を OIDC4VP の Appendix として PR 化することに合意。この API は「replace custom schemes, and help wallet discovery and invocation and support cross device flows」を目的とする
- PR #59 (request_uri extension): 「extensive approvals」を受けて 当日中にマージ(4 か月半の議論を経て決着)
- コール取消通知: 4/9 と 4/11 のコールを OAuth Security Workshop との衝突で取消
活発な議題:
- SD-JWT VC 実装: unsecured payload の取扱いと、algorithm negotiation を
client_metadataとpresentation_definitionのいずれに置くかを継続議論 - RP Authentication: 標準的な Web PKI 外の EU 証明書を wallet が信頼するための規制要件を議論
- Credential Selection: capability negotiation の dead-end を防ぐため、初期リクエストに十分なメタデータを含める方法を議論
アクション: チームが EU interop プロファイルをレビュー、翌週木曜に高レベル要件議論を予定、Conformance Test 用の Java 開発者ポジションが採用中。
3-7. 2024-03-28 Atlantic 枠コール(アジェンダ #000243、Kristina Yasuda)
本月の特別回。Kristina Yasuda が「2 部構成」のアジェンダで運営:
- 第 1 部: 特別ゲストセッション
- Paolo de Rosa(European Commission)
- Ajay Gupta(California DMV)
- 議題: 「OpenID4VP over Browser API、特に要件・タイムライン・期待値」
- 非 OIDF メンバーの参加を許可(ただし IPR 上の配慮から仕様議論は回避)
- 第 2 部: 通常仕様作業
- OID4VP の
client_id_schemeセキュリティ考察(Daniel Fett の Issue #124 連動) - Credential Issuer Metadata の profile サポート
- OID4VP のオープン PR(SD-JWT VC、mdoc セクション)
- OID4VP の
告知:
- Conformance Team が Java 開発者を採用中
- 4/9・4/11 コール取消(OAuth Security Workshop との衝突)
- EU interop event プロファイル群がレビュー可能
EU 側当局(EC)と米国側当局(California DMV)の両方を同じコールに招き、Browser API 上の OID4VP の要件を直接 WG にインプットする運用は、本月の DCP WG が 「グローバル規制要件と仕様設計の同期化」 を強く意識していた証左である。
4. メーリングリストの主要スレッド
3 月の openid-specs-digital-credentials-protocols ML には 6 件の bot 投稿(HAIP リポジトリの issue/PR コメント転送)を含む合計約 60 件の投稿があった。事務連絡・キャンセル通知を除いた技術討議のうち、特に重要なスレッドを取り上げる。
4-1. 「Contribution: query syntax proposal」(#000192 起点、Oliver Terbu、2024-03-05)
Oliver Terbu(MATTR)による 「Format-specific identity credential query syntax (OID4VC)」 PDF(129KB)の WG 公式投稿。OIDF GitHub 上で既に共有済みのドキュメントを ML にもクロスポストし、AB/Connect と DCP の両 WG 向けに正式コントリビューションとして登録。
このスレッドは Tom Jones との 「PE の根本的設計の是非」を巡る論戦 に発展(#000193〜#000200):
- Tom Jones: 「OAuth syntax を使ってユーザに表示し承認させるメッセージを作るのは informed consent のために『completely unusable』」と痛烈批判。issue 2121 で代替案を出したが手続き的に削除されたと主張
- Joseph Heenan: 「wallet はユーザに『何が verifier に共有されるか』だけを示す。OAuth Connect と同じく、ユーザはリクエスト内容ではなく送信内容に同意する。passport しか持たない wallet で『複数文書タイプから identity data を要求された』と説明する意義はない。OS-level の credential selection は WICG digital-identities の所掌」と反論
- Tom Jones: 「WICG はクエリを理解していない」と再反論し、disengage 表明
これは月末に 「PE 後継議論は DCP WG が主導するか、WICG にゆだねるか」 という戦略的論点に成熟する伏線として位置づけられる。
4-2. 「OIDC4VP v3」スレッド(#000207 起点、Orie Steele、2024-03-13)
Orie Steele(Transmute)が OID4VP の作業構造に関する根本的再編案 を提示。
- 論拠: ISO mDoc と OAuth JWT VC の相互運用性は現行 PEv1 仕様で既に実証済。これ以上の継ぎ接ぎは非効率
- 3 トラック分離案:
- PEv1(凍結):
urn:ietf:params:oauth:oidc:vp:pe:v1— draft 20 を即時凍結 - PEv2(別文書):
urn:ietf:params:oauth:oidc:vp:pe:v2— 継続改善(自分は bandwidth 不足で参加しない) - W3C/WICG トラック:
urn:ietf:params:oauth:oidc:vp:w3c:v1— format-specific クエリ言語を WICG と協調設計(こちらに自分はコミット)
- PEv1(凍結):
反応:
- Tom Jones (#000208): 「
No PE / WICG understands the queries」議論時に scope 外と言われ disengage した経緯から、「I wish you guys would make up your mind」と組織的明確性を要求 - Oliver Terbu (#000209): 関連する正式提案として openid/OpenID4VP#129 へのリンクを提示し議論を集約
この提案は WG として正式採択されなかったが、「PE の凍結 + 後継言語を別ワークアイテムにする」という構造的選択肢を WG に明示的に提示した点で 5 月以降の Issue #178(Daniel Fett の新クエリ言語提案)への伏線 となった。
4-3. 「LSP POTENTIAL Interop Event」(#000211、Torsten Lodderstedt、2024-03-14)
EU の POTENTIAL Large Scale Pilot(EC funded、EU 19 か国 + ウクライナの 140+ 公私アクター参加)向けの相互運用イベントの WG 内告知。Torsten が 3 種類のドラフト仕様文書(Google Docs)への WG レビューを要請:
- OID4VCI + mDL/mdoc プロファイル
- OID4VCI + PID/SD-JWT VC プロファイル
- OID4VP + PID/SD-JWT VC プロファイル
3/14 EU 友好枠コールでの議論を踏まえた follow-up であり、DCP WG として EU 規制対応の interop プロファイル定義を実質的に主導 する位置づけが本投稿で明示された。
3/25 に Gail Hodges が #000231 で 登録手続きの追加詳細(Bundesdruckerei の Detlev Rien 経由、Wavestone の Jade Pasquier に Excel 提出)を案内。David Chadwick の質問 (#000240) に Paul Bastian (#000241) が「remote 開催、参加組織は会期中も実装を調整可能」と回答。
4-4. 「OIDF Workshop 4/15 and DCP Working Group Hybrid WG Meeting 4/19 (Silicon Valley)」(#000212、Gail Hodges、2024-03-12)
Gail Hodges が 4 月の Silicon Valley 連続イベント を WG ML に告知:
- OIDF Workshop(4/15、Google Sunnyvale、無料): openid.net/registration-oidf-workshop-monday-april-15-2024/
- DCP WG Hybrid Meeting(4/19、Google Sunnyvale、対面無料): eventbrite.com/.../841453930357 経由で対面登録、Google からの advance registration が必要
Mike Leszcz の #000204(3/11 リマインダ、初回送信は 2/16)と併せて、IIW 38(4/16–18 別途有料)を挟んで「4/15 OIDF Workshop → 4/16-18 IIW → 4/19 DCP Hybrid」という Silicon Valley 連続ストレッチが 3 月中旬時点で確定。
4-5. 「SPICE Consensus Call」(#000187、Orie Steele、2024-03-01)
Orie Steele による IETF SPICE WG charter 採択前の consensus call への参加呼びかけ。「There is still time to have your support or concerns counted」と DCP WG メンバーへの IETF mail archive 上の議論への参加を促す。IETF 119(3/16-22 Brisbane)での SPICE BOF・charter 承認に直結する WG 横断的投稿。
5. GitHub 上の議論
3 月の DCP 配下リポジトリで起票・議論された主要 issues/PRs を整理する。
5-1. openid/OpenID4VP#124 — client_id_scheme security considerations
- 起票: 2024-03-05、Daniel Fett
- クローズ: 2024-10-03(48 コメントの長期議論)
Daniel Fett による OID4VP のセキュリティモデルへの根本的指摘。
When
client_id_schemeis used, there can be multiple client_ids in the same ecosystem that belong to different clients. One of those clients could be malicious, compromised or the client_id scheme could allow for spoofing/impersonating client ids. One such insecure/spoofable client must not endanger the security of other clients in the same ecosystem.
具体的指摘:
- プロトコル全体:
client_id_schemeパラメータがclient_idを namespace 化するので、aud値や Verifier Attestation JWT のsub値など、client_idが現れるすべての箇所にもclient_id_schemeを伴うべき - クレデンシャル内: SD-JWT KB-JWT では
audに並んでclient_id_scheme用の別 claim を設けるべき - Section 12.1: 「VP を
client_idとnonce値にバインドする」記述群を(client_id, client_id_scheme)組としてバインドする記述に修正 - セキュリティ考察: 異なる
client_id_scheme下の同名client_idの混同に関する考察を追加すべき
「Everywhere where a party checks a client id (especially the AS and the client), it must check the tuple (client_id, client_id_scheme) instead」と汎用ルール化を要求。OID4VP ID3 ターゲットに 3/21 EU コールで明示的に組み入れられた「client_id_scheme security improvements」 の起点。
5-2. openid/OpenID4VP#125 — Proposal for OpenID 4 VP profile for the W3C Digital Credentials API
- 起票: 2024-03-05、Torsten Lodderstedt
- クローズ: 2024-07-09(PR #155 マージで解決)
Torsten Lodderstedt による W3C Digital Credentials API(Browser API)上の OID4VP プロファイル化の初提案。Google Docs での草案を示し、「DCP WG として新仕様アイテム(new specification)にすべきか」を Issue 上で問う。
Please comment on this issue whether you think the DCP WG should be a new DCP WG item (i.e. a new specification).
3/26 APAC コールで WG 合意(「OIDC4VP の Appendix として PR を作成」)を取得し、4/14 に PR #155 として具体化される。本月最大の 新 WG アイテム提案 であった。
5-3. openid/OpenID4VP#129 — The proposal for a mandatory to implement minimum profile of PEv2 in OpenID4VP
- 起票: 2024-03-12、Sakurann(Kristina Yasuda)
- クローズ: 2024-05-28
3/14 EU 友好枠コールで Kristina が提示した「PE 最小プロファイル案」の正式 Issue 化。
This is the proposal for a standalone section in OpenID4VP that defines a query language that is a subset/profile of PEv2.
It would be required for the Wallet and the Verifier to implement query language as defined in this section. This profile is meant to be a strict subset of PE as all mandatory to implement PE features are included. Features of PE not mentioned in this profile do not need to be implemented to be compliant with this profile.
Issue #112 で挙げられていた懸念への対応状況も明示:
- 「PE の機能セットが膨大」→ mandatory-to-implement に限定することで対応
- 「PE のプロトコル非依存設計の複雑さ」→ MTI プロファイル範囲では大きくは複雑化しない
- 「OIDF がクエリ言語の制御を取り戻す時間」→ 部分的に対応(OID4VP 内に明確な要件記述)
- 「JSON Path / JSON Pointer の使用」→ PE の根本要素であり、本アプローチでは解決しない
Oliver の format-specific 案、Orie の 3 トラック分離案と並んで、3 月の PE 後継問題における第 3 の主要対案 として位置づけられる。
5-4. openid/OpenID4VP#134 — Add a mechanism for a wallet to detect cross-device flows
- 起票: 2024-03-19、Oliver Terbu(awoie)
- コメント数: 38(本月の活発議論 Issue)
Oliver Terbu が クロスデバイスフロー検出のメカニズム を提起。
Wallets that want to actively reject cross-device flows have no reliable mechanism to detect whether the request was received from a cross-device channel. For example, a camera app on the mobile phone might scan a QR Code displayed on a desktop browser, invoking the wallet with an OID4VP authz request.
提案: verifier が OID4VP authz request または request object に 専用パラメータ を含め、wallet 側がそれに基づいてリクエストを拒否可能とする。フィッシング耐性とユーザ意図確認のための実用的仕様変更。
5-5. openid/OpenID4VP#141 — Verifier/Relying Parties need to be able to verify authenticity and validity of (European Digital Identity) Wallets
- 起票: 2024-03-29、Torsten Lodderstedt
- コメント数: 70(本月最大の議論 Issue)
Torsten Lodderstedt による eIDAS Article 5a, 5., (a), viii 対応 のための WG 内技術提案。
'European Digital Identity Wallets shall, in particular (…) support common protocols and interfaces (…) for relying parties to verify the authenticity and validity of European Digital Identity Wallets;'
「Wallet Instance Attestation / Wallet Attestation / Wallet Trust Anchor」と呼ばれる credential を wallet が verifier に提示し、対応鍵の PoP で authenticity / validity を示す方式を前提に、3 つの設計選択肢を提示:
- POST request での Wallet Attestation 送信: wallet が request URI への POST で Wallet Attestation と PoP を同送。「attestation based client authentication」ドラフトの syntax を活用可能
- vp_token に含めて返却: verifier が他の attestation と同様に request し、wallet は
vp_token内で返す。仕様変更なし - JARM response の JOSE header に含める: verifier が特別パラメータで request、Wallet Attestation の PoP 鍵で response を sign、Wallet Attestation は JARM 構造の JOSE header に格納
月末の起票だが 70 コメントの大議論に発展。eIDAS 規制要件と OID4VP プロトコル設計を直接接続する月最大の論点 となった。
5-6. openid/OpenID4VP#136 — Credential format and supported algorithm negotiation
- 起票: 2024-03-26、Tobias Looker(tplooker)
- コメント数: 10
3/26 コール直後に Tobias Looker が起票。client_metadata と presentation_definition の重複問題 を仕様文言として整理する提案。
In essence this establishes that the client metadata takes precedent over the formats element in the presentation definition. ... I would prefer we strengthen the language in OpenID4VP to make it clear that the format property of the presentation definition should never be used and instead use only client metadata for this negotiation. Supporting doing the negotiation around this information in two places is likely to create significant confusion.
Tobias は「presentation_definition の format プロパティは一切使うべきでなく、client_metadata のみで negotiation すべき」と一方化を主張。これは 3/19 APAC コールでの「HAIP からの suggestion」WG 合意(client_metadata を leading source とする)を仕様文言として強化する提案であり、PE の表面積を更に縮小させる方向の発言。
5-7. openid/OpenID4VP#132 — JSON encoded requests instead of form encoded requests
- 起票: 2024-03-14、Torsten Lodderstedt
- コメント数: 15
Torsten Lodderstedt が PR #59 議論の派生として 「Direct post と Request URI POST の両 request を form-encoded から JSON-encoded に切り替えるか」 を Issue として独立化。3/14 APAC コールでの Orie / Joseph / Torsten の議論を Issue 化したもので、最終的に 3/14 コールの結論「OAuth 慣行に揃え request は form-encoded」が維持された。
5-8. openid/OpenID4VP#120 — Enhancing Privacy by Not Notifying Relying Party of Faulty Requests
- 起票: 2024-03-02、Giuseppe De Marco(peppelinux)
- コメント数: 6
EUDI Wallet の文脈で Giuseppe De Marco が提起。OID4VP Section 6.4 のエラー応答(invalid_request、invalid_client、access_denied 等)が ユーザの preference や wallet 脆弱性に関する情報を意図せず RP に開示する可能性 を指摘し、特定シナリオでは wallet が RP にエラーを通知しないことを推奨/要求する記述追加を提案。プライバシー強化系の小さな提案だが、エラー応答経由のサイドチャネルへの注意喚起として記録に残る。
5-9. openid/OpenID4VP#116 — Improvement on x509_san_dns & x509_san_uri
- 起票: 2024-03-01、Babis Routis
- コメント数: 3
x509_san_dns 利用時に「FQDN of the redirect_uri value MUST match the Client Identifier」という記述が redirect_uri 専用で、direct_post.jwt 利用時に response_uri を使うケースに対応していないことを指摘。仕様文言の正確性向上を求めた小規模だが正確な PR の入り口。
5-10. openid/OpenID4VCI#282 — Double user authorization
- 起票: 2024-03-02、Fabri(fabrii)
- コメント数: 15
Is it possible for an issuer to require double authorization? ... Issuer generates a pre-authorized code through a business process. Issuer wants the user to also use an "Authorization Code Flow" against an Identity provider.
「pre-authorized code + その後に Authorization Code Flow」を二段階で要求できるか、というユーザ寄りの質問。OID4VCI の Authorization model 設計上の限界を浮かび上がらせた Issue で、実装側からの要件提起として継続討議。
5-11. openid/OpenID4VP#135 — Clarify JWT envelope for direct_post.jwt in error cases
- 起票: 2024-03-19、Oliver Terbu(awoie)
direct_post.jwt で client_metadata に encryption 鍵がなく response を JWE 化できない場合の挙動を整理: 「(a) response を返さない (b) alg=none で送る(危険)(c) sign する(鍵がない)」のいずれが正しいか、implementation considerations への追加を提案。SD-JWT VC + JARM 暗号化を巡る運用上の角を取りに行く Issue。
6. 関連イベント
IETF 119 Brisbane(2024-03-16 〜 22)
IETF 119 が Brisbane Convention Centre で開催(onsite 674 名・online 597 名)。DCP WG と密接に関係する 2 件の主要動向:
- SPICE BOF(Secure Patterns for Internet CrEdentials): BOF Chair は Hannes Tschofenig。CBOR エンコーディングと COSE 暗号アジリティを活用したデジタルクレデンシャル基盤(運転免許証、ワクチン証明、B2B、B2G)を扱う。BOF 後に SPICE WG charter が IESG 承認 され、IETF と W3C / OIDF(特に Verifiable Credentials 領域)の協調が公式化された
- OAuth WG セッション: OID4VCI / OID4VP が依存する OAuth 関連ドラフトの議論。DCP WG 共同議長を含む実装者が直接参加
DCP WG 内では Orie Steele が 3/1 に #000187 で SPICE consensus call への参加を呼びかけ、DCP WG メンバーと IETF SPICE BOF が直接連結された。
EU LSP POTENTIAL Interop Event 準備
3/14 と 3/25 に Torsten Lodderstedt と Gail Hodges が WG ML 上で告知。EU 19 か国 + ウクライナの 140+ 公私アクターが参加する POTENTIAL Large Scale Pilot が主催する remote interop event に向けて、DCP WG として OID4VCI + mDL/mdoc、OID4VCI + PID/SD-JWT VC、OID4VP + PID/SD-JWT VC の 3 プロファイル案を提示。3/19 APAC コールで「HAIP の軽量プロファイル(wallet attestation と DPoP optional、x509_san_dns のみ client_id_scheme)」が EU LSP 向け interop の基本線として WG 合意。EU 規制対応への DCP WG の主導的役割が明確化した月であった。
3/28 Atlantic 枠コール(EC + California DMV ゲストセッション)
§3-7 参照。Paolo de Rosa(European Commission)と Ajay Gupta(California DMV)が同じコールに対面参加 し、Browser API 上の OID4VP の要件・タイムライン・期待値を WG に直接インプット。EU と米国(カリフォルニア州)の両当局を同一コールに招くという運用は DCP WG 史でも記録的なイベント。
4 月 Silicon Valley 連続イベントの確定
3/11-12 の Mike Leszcz・Gail Hodges 投稿により、以下の連続イベント枠が 3 月中旬に確定:
- OIDF Workshop: 2024-04-15(月)、Google Sunnyvale、無料、ハイブリッド
- IIW 38: 2024-04-16–18、Computer History Museum(Mountain View)、別途有料
- DCP WG Hybrid Meeting: 2024-04-19(金)、Google Sunnyvale、対面登録 Eventbrite 経由
OID4VCI ID1 投票結果発表(4/1)直後の Silicon Valley 連続イベント枠が 3 月時点で組み上がった。
7. 今後の予定(2024 年 3 月末時点の視点)
3 月末時点で WG が共有していた当面の予定:
- OID4VCI ID1 公式投票締切(4/1): 投票結果発表後、即座に AB/Connect WG → DCP WG への Call for Adoption を発出する運用が WG 内で前提化
- OID4VP ID3 ターゲット項目の最終調整: 3/21 EU コールで合意した 4 項目(SD-JWT VC profile、request_uri extension、mdoc/mdl fixes、client_id_scheme security improvements)。request_uri extension は 3/26 に PR #59 として既にマージ済
- PR #155 (Browser API プロファイル) の起票: 3/26 WG 合意を踏まえて 4 月前半に OID4VP の Appendix として PR 化予定(→ 4/14 Torsten Lodderstedt が起票)
- PE 後継議論の集約: Oliver の format-specific 案、Orie の 3 トラック分離案、Sakurann の MTI 最小プロファイル案、Tobias の
client_metadata一本化案の 4 案を 4 月以降に整理 - EU LSP POTENTIAL Interop Event: 4 月以降の remote 開催に向けた 3 プロファイル仕上げと参加組織の登録
- OAuth Security Workshop 2024(4/9-12、Rome)と IIW 38(4/16-18 Mountain View): 連続イベントによる 4/9・4/11 コール取消(3/25 に Kristina が正式通知済)、4/15 OIDF Workshop / 4/19 DCP Hybrid との連結
- OpenID Foundation Conformance Team: Java 開発者の採用が継続。OID4VC 系仕様の conformance test 開発要員
8. 参考情報源
DCP WG ML 投稿(pipermail、openid-specs-digital-credentials-protocols)
- Week-of-Mon-20240226/000186 — DCP WG call - Minutes 02-29-2024 (Oliver Terbu, 2/29 議事録、3/1 配信)
- Week-of-Mon-20240226/000187 — SPICE Consensus Call (Orie Steele, 3/1)
- Week-of-Mon-20240304/000192 — Contribution: query syntax proposal (Oliver Terbu, 3/5)
- Week-of-Mon-20240304/000193 〜 #000200 — Tom Jones / Joseph Heenan の query syntax 論争スレッド
- Week-of-Mon-20240304/000197 — minutes Re: [agenda] APAC-friendly DCP WG + SIOP call (Kristina Yasuda, 3/5 議事録)
- Week-of-Mon-20240311/000204 — REMINDER: Registration Open for DCP WG Meeting at Google on Friday, April 19, 2024 (Mike Leszcz, 3/11)
- Week-of-Mon-20240311/000207 — OIDC4VP v3 (Orie Steele, 3/13)
- Week-of-Mon-20240311/000208 — Re: OIDC4VP v3 (Tom Jones)
- Week-of-Mon-20240311/000209 — Re: OIDC4VP v3 (Oliver Terbu)
- Week-of-Mon-20240311/000211 — LSP POTENTIAL Interop Event (Torsten Lodderstedt, 3/14)
- Week-of-Mon-20240311/000212 — OIDF Workshop 4/15 and DCP Working Group Hybrid WG Meeting 4/19 (Gail Hodges, 3/12)
- Week-of-Mon-20240311/000213 — [minutes] APAC-friendly DCP WG + SIOP call (Jan Vereecken, 3/14 議事録)
- Week-of-Mon-20240311/000214 — [minutes] EU-friendly DCP WG + SIOP call (Wen, Jin, 3/14 議事録)
- Week-of-Mon-20240318/000216 — [minutes] APAC-friendly DCP WG + SIOP call (Jan Vereecken, 3/19 議事録)
- Week-of-Mon-20240318/000225 — [minutes] EU-friendly DCP WG + SIOP call (Christian Bormann, 3/21 議事録)
- Week-of-Mon-20240325/000231, 000240, 000241, 000242 — EU Digital Wallet - Potential LSP Interop Event スレッド (Gail Hodges / David Chadwick / Paul Bastian, 3/25-27)
- Week-of-Mon-20240325/000233 〜 #000236 — Canceled event 通知シリーズ (Kristina Yasuda, 3/25-26)
- Week-of-Mon-20240325/000239 — DCP WG + SIOP Call: 2024-03-26 Minutes (Orie Steele, 3/26 議事録)
- Week-of-Mon-20240325/000243 — DCP WG + SIOP Call: 2024-03-28 Atlantic call Agenda (Kristina Yasuda, 3/28 アジェンダ)
GitHub Issues / PRs
OID4VP
- openid/OpenID4VP#59 — request_uri extension (tlodderstedt, 3/26 merge)
- openid/OpenID4VP#102 — Change title to editor's draft (awoie, 3/5 merge)
- openid/OpenID4VP#114 — Relax language on PE (awoie, 3/6 merge)
- openid/OpenID4VP#116 — Improvement on
x509_san_dns&x509_san_uri(babisRoutis, 3/1) - openid/OpenID4VP#119 — Clarify that alg_values_supported is optional (awoie, 3/7 merge)
- openid/OpenID4VP#120 — Enhancing Privacy by Not Notifying Relying Party of Faulty Requests (peppelinux, 3/2)
- openid/OpenID4VP#121 — Fix did client_id_scheme example request object (jogu, 3/6 merge)
- openid/OpenID4VP#123 — Fix SIOPv2+VP example (jogu, 3/18 merge)
- openid/OpenID4VP#124 —
client_id_schemesecurity considerations (danielfett, 3/5) - openid/OpenID4VP#125 — Proposal for OpenID 4 VP profile for the W3C Digital Credentials API (tlodderstedt, 3/5)
- openid/OpenID4VP#126 — Require state/nonce to only contain URL safe characters (jogu, 3/21 merge)
- openid/OpenID4VP#129 — The proposal for a mandatory to implement minimum profile of PEv2 in OpenID4VP (Sakurann, 3/12)
- openid/OpenID4VP#130 — Support for plain JSON response from Request URI (tlodderstedt, 3/14)
- openid/OpenID4VP#131 — Add Section describing Processing Rules for Authorization Request (tlodderstedt, 3/14)
- openid/OpenID4VP#132 — JSON encoded requests instead of form encoded requests (tlodderstedt, 3/14)
- openid/OpenID4VP#134 — Add a mechanism for a wallet to detect cross-device flows (awoie, 3/19)
- openid/OpenID4VP#135 — Clarify JWT envelope for direct_post.jwt in error cases (awoie, 3/19)
- openid/OpenID4VP#136 — Credential format and supported algorithm negotiation (tplooker, 3/26)
- openid/OpenID4VP#137 — Clarify what successfully processing a response means (direct_post) (javereec, 3/27)
- openid/OpenID4VP#141 — Verifier/Relying Parties need to be able to verify authenticity and validity of (European Digital Identity) Wallets (tlodderstedt, 3/29)
- openid/OpenID4VP#142 — Appendix 'A' is labelled "Examples" but contains normative text (jogu, 3/29)
OID4VCI
- openid/OpenID4VCI#277 — Addresses issue #273 (babisRoutis, 3/7 merge)
- openid/OpenID4VCI#281 — Change token endpoint example to use private_key_jwt (jogu, 3/7 merge)
- openid/OpenID4VCI#282 — Double user authorization (fabrii, 3/2)
- openid/OpenID4VCI#283 — cryptographic_binding_methods_supported feels under described (jogu, 3 月)
- openid/OpenID4VCI#284 — How does an issuer decide which alg from
credential_signing_alg_values_supportedto use (nemqe, 3 月) - openid/OpenID4VCI#286 — Encrypted responses in Batch and Deferred Endpoints (vafeini, 3 月)
- openid/OpenID4VCI#287 — Rework iso mdoc/mdl section (jogu, 3 月)
SIOPv2
- openid/SIOPv2#21 — Response mode
direct_postdescription seems inconsistent with OID4VP (nanderstabel, 3 月)
公式仕様・関連情報
- Public Review Period for Proposed Implementer's Draft of OpenID for Verifiable Credential Issuance — 2024-02-08 公開、レビュー期間 2/8〜3/24(45 日)
- Notice of Vote for Proposed Implementer's Draft of OpenID for Verifiable Credential Issuance — 2024-03-11 発出、公式投票期間 3/25〜4/1(早期投票 3/18 開始)
- OpenID for Verifiable Credential Issuance 1.0 - ID1 (draft 13) — 投票対象版
- DCP WG ページ — WG スコープと共同議長一覧
関連イベント
- IETF 119 — Brisbane, 2024-03-16〜22
- SPICE BOF Request — IETF 119 で WG charter 承認
- Registration Open for OpenID Foundation Hybrid Workshop at Google (April 15, 2024) — DCP WG ML で 3/11-12 に告知
- POTENTIAL Large Scale Pilot — EU 19 か国 + ウクライナの 140+ 公私アクター参加の interop pilot(DCP WG が profile 群を提供)