-
-
Notifications
You must be signed in to change notification settings - Fork 176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nuget v2.0.2 - attestation option "direct" - TPM class #305
Comments
I don't recall seeing anything like this before, do you have a sample clientDataJson that exhibits this behavior? |
Hi Aseigler, Sorry for the late response. So decode of array below:- '{"type":"webauthn.create","challenge":"ztuB2Bt0h_t4sPpMraDctA","origin":"https://localhost:41111","crossOrigin":false,"other_keys_can_be_added_here":"do not compare clientDataJSON against a template. See https://goo.gl/yabPex"}' Thanks |
I was looking for the attestation statement. I'm unaware of a current platform that would encode a TPM attestation statement in such a way that you would end up with a malformed statement. There was a Firefox specific issue that could cause corruption like this, but it was fixed several months ago. |
Hi! |
I suspect this is going to be due to TPM attestations quietly being made with ES256 instead of RS256, which got fixed here. We need to get a new build cut to get this on Nuget, I don't think we have one with this in it. |
No, the last release (3.0) doesn't have the changes as far as I can see. Would be nice to get the fix out. |
Please let us know ASAP if v3.0.1 does not fix the problem. |
Thanks for the quick release, the problem is solved, the registration is working again. 🙌 However, another problem has emerged that did not exist before. On .Net 6, the System.Json.Text serializer now seems to choke on the return value in the MakeAssertion function. It throws this exception: The problem can also be recreated in your current master branch if you register a new credential in the demo app under Custom. As a workaround I am not returning the complete result of MakeNewCredentialAsync(..), but returning a new CredentialMakeResult only with status="ok". |
Thanks for the report!
|
Hi,
We have noticed an issue.
When using the attestation option "direct" then clientDataJson appears to have 118 bytes when the tpm/ pubarea class expects 84. This throws an exception "throw new Fido2VerificationException("Leftover bytes decoding pubArea");" in TPM.cs line 634.
We were able to replicate the issue on your codebase changing attestation_type variable in custom.register.js to "direct".
We've temporarily changed our codebase to use "none" until fixed. Is there an alternative?
Please let me know if you need further details.
Thanks
Himesh
The text was updated successfully, but these errors were encountered: