google / webauthndemo

An example Node.js Relying Party implementation of the WebAuthn specification
https://try-webauthn.appspot.com
Apache License 2.0
549 stars 120 forks source link

Register New Credentials goes into infinite loop when using both options DiscoverableCredentials=Preferred and UserVerification=Preferred #104

Open ivkina opened 1 year ago

ivkina commented 1 year ago

Looks like there is a problem in how latest Chrome handles the following authenticatorSelection criteria during navigator.credentials.create call: authenticatorSelection: {residentKey: 'preferred', userVerification: 'preferred'}

image

Chrome first allows to register the key which is correct

image

but then after successful registration it goes into a loop and presents another dialog asking to verify your identity with try-webauthn.appspot.com

image.

If you remove (residentKey: 'preferred') from authenticatorSelection - use just {userVerification: 'preferred'}, then it works fine. Tested with Yubico 5 PIN protected series key

It worked also fine with previous version of Chrome (not the current released in July 2022 - 103.0.5060.134 (Official Build) (64-bit)).