--
You received this message because you are subscribed to the Google Groups "FIDO Dev (fido-dev)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fido-dev+u...@fidoalliance.org.
To view this discussion visit https://groups.google.com/a/fidoalliance.org/d/msgid/fido-dev/CACHSkNoh34r4zRq019AXfzm-Xef-irKG1jEE3cfRsJCUu97UMw%40mail.gmail.com.
www.allthenticate.com | Chad Spensky, Ph.D. Founder and CEO M: (601) 80-31337 Houston, TX 77002 |
While this thread focuses on physical security keys, I'd like to address the broader UI/UX challenges we're facing with passkey adoption.
The core issue is a fundamental mismatch between authentication ceremony design and user mental models. Current FIDO implementations, shaped by security requirements and browser ecosystems, create experiences that feel disconnected from the user's primary context—the web application they're actually trying to use. The case with the physical key is simply one of such situations.
When users are signing into an application, they're focused on that specific service and their relationship with it. However, the current approach pulls them into generic authentication flows that often feel foreign, confusing and / or imcomplete. This context switching disrupts the user's natural workflow and creates friction.
The web application possesses crucial contextual information—user history, subscription status, onboarding state—that could significantly improve the authentication experience. Unfortunately, security boundaries prevent this contextual data from informing the authentication ceremony, leaving generic systems to make assumptions without full knowledge of the user's situation.
I'm not advocating for web applications to have complete control over authentication flows. Rather, I'm suggesting that completely isolating them from the process contributes to the current adoption challenges we're seeing with passkeys. The lack of contextual integration, regardless of how much user research we conduct, will always limit our ability to create truly intuitive experiences.
This disconnect between security requirements and user experience design may be one factor limiting broader passkey adoption. Finding ways to better integrate contextual information while maintaining security boundaries could help bridge this gap.
I wouldnt even say you have to set a default, but just a simple "where do you want to store" dialog right from the start which could offer any local password managers, your phone and the obvious option for external USB/NFC/BT FIDO Devices depending on what the platform supports (I made a lil mockup, see attachment).
To distinguish you need to have some sort of an ID. Again, you do not want to ask the user. And again there is nothing that helps this other can create a random ID in the browser's local storage. Ouch..
How and when do I decide to prune passkeys?
@tim sure users will always be confused somehow, but literally hiding the option the user might need behind a cancel/back button, seems even more crazy at least in my eyes.regarding pruning, I think Claude meant on the RP side rather than on the password manager side. and that's obviously a hard thing as an rp couldn't see whether a user still has access to a certain passkey just never really uses it because it's e.g. on an emergency backup stick.
Someone pointed me to this discussion, having done a fair bit of work in security UI I thought I'd add my $0.02 (+ 40% tariff for US readers): The reason why password managers are popular isn't because of some conspiracy to block everything else but because they're the least unusable authentication mechanism out there. Second is probably TOTP stuff like Authy (there are also very unusable TOTP implementations, UI research rates Authy as the best). Anything involving PKI or crypto tokens or requiring cryptographic protocols is last, no matter what else you add to the list. For example one very usable but toe-curling to crypto purists mechanism is used by some payment provider whose name I can't remember where they recognise your email address on checkout and send you an SMS to auth the payment, with no credit card details or PII being sent anywhere. It works, it's very easy to use, and it's a lot more secure than typing your credit card details into some random web site, it just wouldn't ever get suggested by a cryptographer or security expert.Unfortunately the response from the crypto community has been to design ever more awkward but eminently conference-paper-worthy cryptographic protocols and mechanisms for replacing passwords that then fail to deploy because they're still as unworkable as they were the last twenty times the same thing was tried. There's a good paper written some years ago by Cormac Herley et al "The Quest to Replace Passwords: A Framework for Comparative Evaluation of Web Authentication Schemes" which provides a checklist for what it'd take to create something that can displace the ubiquitous passwords. It also probably functions as a decent predictor of how likely a proposed replacement will be to fail in the marketplace...
Dear all,If this has become a high-level philosophical discussion about whether or not we should replace passwords, I would be happy to add some thoughts:1. A password is simply an authenticator.2. If you have other forms of authentication it is entirely unnecessary.There are so many ways to authenticate now without passwords, and I would argue considerably better ways (FIDO being one), that I believe that the time has come to remove them entirely. No more leaked password databases on the darkweb, no more password resets.Some IaaS products already allow me to do this (Okta, for example, allows me to remove passwords as an authenticator - Set up a passwordless sign-in experience | Okta Identity Engine).If you would like some ideas about eCommerce using credit cards, I would be happy to discuss them out of this forum, but I do not believe anyone should ever have to enter their credit card details online. I believe a vendor-specific token could be generated, for each eCommerce vendor, linked to the card, controlled on the bank side so that it could only ever credit accounts belonging to the vendor. The database on the eCommerce side stores the token only, so if the database is ever leaked, the attacker can only ever obtain a token that can credit the vendor bank account (essentially useless). Perhaps this could also be controlled on the user side in a simple menu on their internet banking app (e.g. this token for this vendor is active/inactive, perhaps even for purchases up to a certain amount, so they can even deactivate the token when they are not making purchases through a specific vendor). No more leaked credit card databases on the internet, and no more having to enter the credit card details, simply, "would you like to make payments through this website?" If yes, a token is generated by the bank in a single input box for storage in the database. It makes accounting simpler on the internet banking app too, the user could filter all payments based on the token, and the transactions could be displayed.Kind regards,David
To view this discussion visit https://groups.google.com/a/fidoalliance.org/d/msgid/fido-dev/db160142-1d0d-4bc6-84ce-3d1f9dd2ec78n%40fidoalliance.org.