跳到內容

標準合規

TCS 實作了完整的可驗證憑證發行、展示與信任建立的開放標準技術棧。OID4VCI 規範已通過合規測試,OID4VP 規範目前正在合規測試處理中。


標準規格實作內容狀態
OID4VCIOpenID for Verifiable Credential Issuance — 追蹤最新已發布的 Implementer’s Draft預授權碼流程(生產)、憑證 offer 管理、發行方元資料探索。授權碼流程在 roadmap 上。合規通過
OID4VPOpenID for Verifiable Presentations — 追蹤最新已發布的 Implementer’s DraftDCQL 查詢、JAR 請求物件、direct_post 回應模式、VP Token 驗證合規處理中
HAIP v1High Assurance Interoperability Profile 1.0ES256 簽名、X.509 憑證綁定、強制 DPoP nonce、client attestation 支援OID4VCI 通過 / OID4VP 處理中
SD-JWT VC draft-10IETF SD-JWT-based Verifiable Credentials —— 鎖定於 draft-ietf-oauth-sd-jwt-vc-10dc+sd-jwt 憑證格式、選擇性揭露、Type Metadata Documents(§6)已實作
DPoPRFC 9449 — Demonstrating Proof-of-Possession使用 JWK thumbprint 的 token 綁定、伺服器發行的 nonce、JTI 重播保護已實作
PKCERFC 7636 — Proof Key for Code Exchange授權碼流程的 S256 challenge 方法已實作
JARRFC 9101 — JWT-Secured Authorization RequestsOID4VP 驗證流程的已簽名請求物件已實作
PARRFC 9126 — Pushed Authorization Requests授權重新導向前的伺服器端 session 建立已實作
OAuth 2.0 AS MetadataRFC 8414 — OAuth 2.0 Authorization Server Metadata/.well-known/oauth-authorization-server 探索端點已實作
ISO 27001資訊安全管理管理 TCS 基礎設施和流程的操作安全控制組織聲明認證
ISO 27701隱私資訊管理憑證資料處理和儲存的隱私控制組織聲明認證

TCS 實作了 OID4VCI 定義的兩種發行流程:

  • 預授權碼流程(生產):發行方建立含有預授權碼的憑證 offer,持有者錢包以此 code 換取 access token,再用 token 請求憑證。無需使用者與 authorization server 互動。
  • 授權碼流程(roadmap,尚未上生產):錢包透過 PAR 發起發行流程、在授權端點完成身份驗證、接收授權碼、換取 access token,再請求憑證。底層原語(PAR、PKCE)已實作並通過 conformance 測試;發行端 flow: "authorization-code" 切換尚未串接完整。請見 Roadmap

生產流程支援符合 HAIP 要求的 DPoP 綁定 token。

TCS 實作了 OID4VP v1,具備以下能力:

  • DCQL(Digital Credentials Query Language) 查詢,用於指定所需憑證
  • JAR(JWT-Secured Authorization Requests)application/oauth-authz-req+jwt content type 簽名請求物件
  • direct_post 回應模式 用於 VP Token 提交
  • 跨裝置和同裝置流程,含 session 狀態輪詢和選填的 redirect URI

HAIP 定義了 OID4VCI 和 OID4VP 的受限規範,用於高保證使用場景。TCS 滿足 HAIP 要求,包括:

  • ES256(P-256)作為 X.509 綁定憑證的必要簽名演算法
  • 每個 token 和憑證請求強制使用 DPoP nonce
  • Client attestation JWT 支援(OAuth-Client-AttestationOAuth-Client-Attestation-PoP headers)
  • dc+sd-jwt 作為憑證格式

TCS 使用 IETF SD-JWT VC 規範作為憑證格式,鎖定於 draft-ietf-oauth-sd-jwt-vc-10。這有別於 W3C Verifiable Credentials Data Model 2.0 — 根據 IETF SD-JWT VC §1.2,兩個規範相互排斥。

主要特性:

  • 格式識別符:dc+sd-jwt
  • 透過 _sd 機制進行選擇性揭露的扁平聲明結構
  • 透過 Schema Registry 提供的 VCT URI 進行 type metadata 探索
  • 展示期間持有者 proof-of-possession 的 Key Binding JWT

DPoP 透過將 access token 綁定至客戶端的金鑰對來防範 token 竊取。TCS 強制執行:

  • JWK thumbprint(jkt)綁定與每個 access token 一起儲存
  • 伺服器發行的 DPoP nonce,300 秒到期
  • JTI(JWT ID)重播保護,以資料庫追蹤為後端
  • IAT(issued-at)驗證,最大期限 300 秒,時鐘偏差容忍 60 秒
  • 支援演算法:EdDSA、ES256

所有授權碼流程都要求使用 S256 challenge 方法的 PKCE。code verifier 和 challenge 在 token 交換期間進行驗證,防止授權碼攔截。

Verifier Service 以 application/oauth-authz-req+jwt content type 將 OID4VP 請求物件簽名為 JWT。錢包從 request URI 取得已簽名的請求物件,並在處理授權請求前驗證簽名。

Authorization Server 公開一個 PAR 端點,接受授權請求參數並回傳 request_uri。此 URI 隨後用於授權端點,讓敏感參數保留在伺服器端並縮短 URL 長度。

/.well-known/oauth-authorization-server 端點發布 Authorization Server 的功能,包含支援的 grant type、端點、code challenge 方法和 DPoP 簽名演算法。


TCS 對其端點執行 OpenID Foundation 合規測試套件。下表狀態反映各 profile 之必要測試計畫是否全部通過;並不代表已取得 OIDF 認證(合規認證為另一獨立計畫,截至目前尚未取得認證)。

規範測試套件結果
OID4VCI Credential IssuerOID4VCI Conformance Suite通過
OID4VP VerifierOID4VP Conformance Suite處理中
HAIP + OID4VCI IssuerHAIP Conformance Suite + OID4VCI通過
HAIP + OID4VP VerifierHAIP Conformance Suite + OID4VP處理中

合規測試套件模擬錢包客戶端,驗證 TCS 端點對所有必要的協定互動(包括錯誤情況)是否產生符合規範的回應。如需取得最新測試計畫輸出,請聯繫團隊


TCS 支援兩條簽名路徑,根據發行方的金鑰素材選擇:

演算法曲線金鑰類型使用場景憑證 Header
EdDSAEd25519基於 DID使用 IOTA DID 驗證方法的發行方kid 引用 DID 驗證方法
ES256P-256(secp256r1)基於 X.509使用 X.509 憑證的發行方(HAIP 要求)x5c 包含憑證鏈

注意:Holder Service 提供 did:key 生成功能,用於錢包互通性。這是持有者端的能力,不構成額外的發行方簽名路徑 — TCS 發行方簽名僅限於上述兩條路徑。


TCS 支援兩種憑證 proof-of-possession 的密碼學綁定方法:

方法說明
did持有者以對應私鑰簽名 proof JWT,證明其持有 DID 驗證方法
jwk持有者在 proof JWT header 中包含公鑰(JWK 格式),證明其持有獨立金鑰對

TCS 在所有發行流程中使用單一憑證格式:

屬性
格式識別符dc+sd-jwt
選擇性揭露_sd 聲明機制(基於雜湊)
金鑰綁定Key Binding JWT 附加至 SD-JWT 字串
Type metadataVCT URI 解析至 Schema Registry 提供的 Type Metadata Document
聲明結構扁平結構(無巢狀的 credentialSubject 包裝器)

TCS 發行 dc+sd-jwt 憑證並透過 OID4VP DCQL 接受展示。由於兩個協議皆尚未定稿,實際互通性取決於錢包的 profile 選擇(proof type、binding method、request signing)。下表反映 TCS 內部測試 fixtures 目前已實際驗證之內容 — 並非 OpenID Foundation 互通性認證,並刻意保守處理。

錢包發行 (OID4VCI)展示 (OID4VP)備註
Turing Space Holder Service(custodial 錢包)已測試已測試第一方參考路徑;由 TCS 服務測試覆蓋

第三方錢包結果僅在具有日期之測試輸出存在後才會加入本表 — 我們刻意不列出「未測試」錢包,因為即便如此仍可能被解讀為互通性聲明。如需在合作前確認特定錢包整合,請聯繫團隊 — 我們可以安排 profile 對齊測試並分享測試輸出。


為協助採購決策,以下列出 TCS 目前未實作的能力,及其原因或預定時程。

能力狀態備註
ISO/IEC 18013-5 mDoc / mDL未實作TCS 僅發行 dc+sd-jwt。需 EUDIW PID-mDoc 對等支援之部署,需與獨立 mDoc 套件搭配。
W3C VC Data Model 1.1 / 2.0(一般憑證)設計上不支援IETF SD-JWT VC §1.2 規範 W3C VCDM 與 SD-JWT VC 互斥。TCS 唯一產出的 W3C 格式為 DIF Well-Known DID Configuration 之網域連結憑證。
IETF Token Status List(draft-ietf-oauth-status-list路線圖中目前撤銷查詢透過 Trust & Schema Registry,符合規範的 Status List 為已規劃的強化項目。
OpenID Federation / EBSI TIR / ETSI Trusted List 整合未實作TCS 採用單一部署內的範圍限定發行者允許清單。跨生態系信任目前透過 X.509 / x5c 路徑橋接外部 CA — 詳見架構與安全
OID4VCI Authorization Code Flow路線圖中Pre-Authorized Code Flow 為生產路徑;auth-code flow 開發中。
did:web / did:jwk 發行者 DID未實作發行者目前使用 did:iota 或 X.509 憑證 — 詳見 DIDs 之選擇理由。