Handle malformed assertion signatures #642
Open
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.
So far this PR is only the unit tests that illustrate what (I think) is a problem, and I am interested in feedback before I attempt the fix.
My expectation was that any type of invalid signature, regardless of how malformed it was, would throw the
Fido2VerificationExceptionwith message "Signature does not match". But, as illustrated by these unit tests, some signatures throw other exceptions:and
Should the
VerifyAsyncmethod trap these exceptions or should the underlyingCryptoUtils.SigFromEcDsaSigthrow aFido2VerificationException? I see that another method in that file,HashAlgFromCOSEAlg, does throw aFido2VerificationException.