I recently used auth0 to implement passwordless login (via "magic link" emails) for a client project. Auth0's documentation is not great, but some of their blog posts are pretty good. In any case, if you're interested in WebAuthN, you could do worse than reading what Auth0 has to say about it:<p><a href="https://auth0.com/blog/web-authentication-webauthn-overview-demo-tool/" rel="nofollow">https://auth0.com/blog/web-authentication-webauthn-overview-...</a>
I don't want to let the password go. It gives me the freedom to rightfully access my service if I just know the secret, without any entanglent to some app, device, or other account.
I think fundamentally most users don't understand anything more complicated than passwords. Passwords are easy. They make sense. A kindergartener understands the idea of a secret word that only they know.<p>Tokens, certificates, FIDO -- it's black magic. Therefore people don't trust it.<p>It has to be as easy and intuitive as passwords or it's a non-starter.<p>That's why the SMS codes (though insecure) are so popular. People understand "enter this number that I just texted to you"
I don't understand how does it work. If I'm using just desktop and don't have mobile phone or any specialized hardware, I can't login?
Does anyone else find these informal specifications difficult to digest?<p>The informative appendices link to papers on TPM and the like but it's hard to find a formal description of the protocol, or at least the sensitive parts, that could be independently validated or verified.<p>Has there been any work to formally verify/validate the design of this protocol that I'm not seeing?
Shameless plug of a WebAuthn relying party (RP) library that I implemented recently (Python server, JS client): <a href="https://github.com/pyauth/pywarp" rel="nofollow">https://github.com/pyauth/pywarp</a><p>Having worked with a few different standards before, I was pleasantly surprised by how easy to understand and ergonomic (<a href="https://github.com/google/mundane/blob/master/DESIGN.md" rel="nofollow">https://github.com/google/mundane/blob/master/DESIGN.md</a>) the WebAuthn spec was.
Almost there; now we just need some cross-platform implementations with synced credentials, and support from a couple major sites. Ideally some password managers will step in and implement support, and Google will add support to their own login flow as a primary authentication factor.
Still waiting for Google Chrome and Firefox to support User Verification in the form of PIN prompts and Resident Keys for true passwordless login (at the moment WebAuthN in Chrome is basically just 2FA, no option for Passwordless).<p>Hopefully soon!
Somewhat random thought: is Challenge-Response sufficient or should it be 'Challenge-Challenge-Response' so that the client only answers a challenge it requested? Otherwise, what's to stop an XSS attack on page A from effectively MITM page B by overriding the event listener for the login on page A, asking to sign for page B, then exfiltrating the response?<p>EDIT: looks like the dialog attempts to give you some information, but it doesn't say WHICH profile on the domain and people could certainly not pay attention to the domain in that prompt (I had to check if it existed because I hadn't noticed).
If only Microsoft hadn't chosen to use the code-name Hailstorm for its authentication proposal back in the days (and generally had a better image and a more open approach etc). Would have alleviated a lot of the pain earlier.
The last time I saw 2fa and fido talked about on here, someone recommended a set of 2 keys, but they ones they recommended are now out of stock.<p>Does anyone have a recommendation with the reason?<p>Thanks.<p>Edit: <i>With</i> the reason. Jeez, what a typo.
>Users log in with simple methods such as fingerprint readers, cameras, FIDO security keys, or their personal mobile device.<p>Neither of these methods are simple. I don't have a camera or fingerprint reader, idk what is FIDO security key or how to get one, and mobile phone can be lost or cease working at any moment so it's not a reliable method of authentication.
How easy will it be to implement? We should keep in mind the most dangerous guys out there store passwords in clear text in databases and other amateurish rookie mistakes. Having <i>easy to use</i> / <i>impossible to f__k up</i> libraries for every major platform is going to be critical.
I was saying for a long time that a new protocol for a biometric driven login scheme should become the new default. We use biometrics to log into our phone, then a password manager uses the same biometric to authenticate on the same device to log me into a website by auto populating the username + password for me. Afterwards I'll get a 2FA confirmation on the same device which again I'll have to confirm via the same biometric. Instead of having so many moving parts which all boil down to authenticate via a single vector (my fingerprint or eye) on a single device we might as well have a new auth scheme and get away with insecure passwords and expensive password managers and replace them all with a new biometric driven login scheme.<p>Yes, there are still some issues that biometrics don't solve, but they should not be a concern to most websites. If everything authenticates me via my AppleID (which uses FaceID or Fingerprint) then I only need to remember one password for Apple - which is just the same as remembering one password for a third party password manager - except it's overall much safer and better for me as a user as I don't have to upload all my online identities to yet another third party that I don't know anything about (= password managers).
I moved from primarily using a MacBook Pro to an iMac Pro a few months ago, and have struggled to find a non-awkward FIDO U2F key due to the ports being on the back. I'm really looking forward to a decent range of BLE U2F keys that are supported on Desktop and Mobile.
tl;dr: Every downside to 2fa is out of scope, so this doesn't solve them, and doesn't require sites solve them.<p>It then suggests using this as both factors.<p>Most of all is reliability.<p>all "Something you have" based factors have one key issue, reliability.<p>Backup codes are not a solution, I'm not going to have those when i'm at a friends house and get an alert the server is dead but i left my token at home.<p>Customer service is not a solution, its hard getting me to change my address in the millions of places that have it, now I have to call up, to change my token, because I lost it and have no idea where the fuck i put the backup codes? Across the millions of websites I have an account on? Where each provides their own backup codes?<p>Backup tokens are barely a solution. In that they only work once, lose your backup token and you are back to the above. At the least you now have to buy another one to become the new backup and go and load it on to all of your sites.<p>I can't lose, break, forget at home, or otherwise invalidate a password. I can forget it outright, something we know a lot of about, and something we have workflows setup to deal with, some better than others, but I can't just one day lose it and get locked out of <i>everything</i>, I would have to forget all of my passwords simultaneously to do that.<p>2fa for people who care about it seeing adoption: cloneable tokens. I shouldn't need to re-setup my token across every site when it lose it. Habadab about security all you want, as long as this is a barrier to entry it will stay a barrier.<p>Also, with fancy crypo, it would be piss easy to make a token key base where each token had its own key and that key can be revoked, but in a way where all tokens work out of the box once you add 1 to a site.
Is it only me or at first glance this VentureBeat article looks like popup-ridden page from late 90s?<p><a href="https://imgur.com/a/vjGuFKs" rel="nofollow">https://imgur.com/a/vjGuFKs</a><p>(yes, I know it's off topic)