Skip to content

[PQ] Make cmtgKeys extension output a list - #2487

Open
nsatragno wants to merge 1 commit into
w3c:2338-cmtgfrom
nsatragno:20_multi_cmtg
Open

nsatragno wants to merge 1 commit into
w3c:2338-cmtgfrom
nsatragno:20_multi_cmtg

Conversation

@nsatragno

@nsatragno nsatragno commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

Rename the CMTG key extension from cmtgKey to cmtgKeys and make its client output a sequence<AuthenticationExtensionsCmtgKeyOutputs>. The authenticator extension output and unsigned extension output become index-matched CBOR arrays.

Authenticators currently MUST return exactly one entry, and Relying Parties MUST treat an output with more than one entry as invalid. The list format leaves room for future extensions, such as algorithm transitions (#2417), to return more than one key.

Also rename the CMTG section IDs and update the explainer.

Closes #2472

  • Modified Web platform tests (link)

Implementation commitment:

Documentation and checks

  • Updated explainer

Preview | Diff

Rename the CMTG key extension from cmtgKey to cmtgKeys and make its
client output a sequence<AuthenticationExtensionsCmtgKeyOutputs>. The
authenticator extension output and unsigned extension output become
index-matched CBOR arrays.

Authenticators currently MUST return exactly one entry, and Relying
Parties MUST treat an output with more than one entry as invalid. The
list format leaves room for future extensions, such as algorithm
transitions (w3c#2417), to return more than one key.

Clients fail the operation with an "UnknownError" if the outputs are
malformed or have mismatched lengths, since the signed keys cannot be
removed from the authenticator data.

Also rename the CMTG section IDs and update the explainer.

Fixes w3c#2472
@nsatragno
nsatragno requested a review from timcappalli October 14, 2026 20:55
@nsatragno
nsatragno marked this pull request as ready for review October 14, 2026 20:55

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant