chore: simplify metadata statement check#777
Merged
Spomky merged 2 commits intoweb-auth:5.3.xfrom Dec 20, 2025
Merged
Conversation
cca1b23 to
9aa1a6a
Compare
9aa1a6a to
216f36e
Compare
216f36e to
1584181
Compare
Contributor
|
Hi @zll600, Many thanks for this PR. You’re right, this class was getting quite hard to read and maintain. |
Contributor
Author
|
Hi @Spomky, Really thanks. Your changes make sense to me 👍 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Target branch: 5.3.x
Resolves issue #
Overview
I submit this PR aims to make two changes for the CheckMetadataStatement
Simplify the Implementation
Current CheckMetadataStatement works really well and is excellent. But I think it's a little bit complex to understand the source code.
For example, we are checking the trust path of the none and self type attestation.
webauthn-framework/src/webauthn/src/CeremonyStep/CheckMetadataStatement.php
Lines 84 to 96 in 4d7c777
There are some points I think are a little bit complex to understand why we call the checkCertificateChain here
Add background info to explain the rationale
Current implementation handles aaguid
00000000-0000-0000-0000-000000000000with special ways. But no explanation for it. I add more background to explain why we implement like this.Note
I think the current implementation is really good. I opened this PR because I have some questions when reading the source code. Feel free to close this PR.