You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Offering a versioned golden-vector set for the delegate SD-JWT chain layer (the ~~ wire format mandates travel on), plus a standing CI cross-check against this repo that works as a drift canary while the chain layer tracks a moving draft.
This picks up the conformance-vectors thread from Discussion #262 and complements #265, which covers open_mandate_hash / JCS canonicalization — the layer below. These vectors cover the chain layer above it: disclosure hashing, _sd/sd_hash linkage, hop composition on the ~~ wire, and nested merchant_authorization binding.
What exists today
A vector set keyed to exact revisions (inventory and change policy: docs/ap2-vectors.md):
Two-way cross-verified: an independently written verifier (built from the RFCs, no shared code with this repo) accepts reference-minted chains byte-for-byte, and the reference verifier accepts chains minted by the independent implementation, including constraint and schema checks.
The canary offer
Our CI reinstalls this repo at the pin on every run and byte-compares chain computation (disclosure digests per RFC 9901 §5.1, sd_hash, canonical chain segments) against the independent implementation. In practice that means: when the draft or this repo's chain machinery moves, the divergence surfaces immediately as a byte diff keyed to a commit.
If useful, happy to:
publish a new keyed vector set for each draft/reference revision (existing sets never mutate, so implementers can diff behavior across revisions);
report any observed divergence here as a small issue keyed to the commit that introduced it;
contribute the cross-check as an optional workflow in this repo, if you'd rather run the canary yourselves.
No action needed on your side for (1) and (2) — this is mostly a "this exists, use it if it helps" note, and I'd rather align with however you're planning official conformance vectors than run ahead of it.
Summary
Offering a versioned golden-vector set for the delegate SD-JWT chain layer (the
~~wire format mandates travel on), plus a standing CI cross-check against this repo that works as a drift canary while the chain layer tracks a moving draft.This picks up the conformance-vectors thread from Discussion #262 and complements #265, which covers
open_mandate_hash/ JCS canonicalization — the layer below. These vectors cover the chain layer above it: disclosure hashing,_sd/sd_hashlinkage, hop composition on the~~wire, and nestedmerchant_authorizationbinding.What exists today
A vector set keyed to exact revisions (inventory and change policy: docs/ap2-vectors.md):
draft-gco-oauth-delegate-sd-jwt-00e1ea56dThe canary offer
Our CI reinstalls this repo at the pin on every run and byte-compares chain computation (disclosure digests per RFC 9901 §5.1,
sd_hash, canonical chain segments) against the independent implementation. In practice that means: when the draft or this repo's chain machinery moves, the divergence surfaces immediately as a byte diff keyed to a commit.If useful, happy to:
No action needed on your side for (1) and (2) — this is mostly a "this exists, use it if it helps" note, and I'd rather align with however you're planning official conformance vectors than run ahead of it.