3 ms·
Passkeys are simply over-engineered. A passwordless login system need only the following: - $AUTHENTICATOR is one of (browser extension, browser, OS, hardware)
by franga2000 2y ago
Passkeys are simply over-engineered. A passwordless login system need only the following:
- $AUTHENTICATOR is one of (browser extension, browser, OS, hardware)
- $AUTHENTICATOR stores mappings ($SITE,$PUBKEY) => $PRIVKEY
- $SITE can ask $AUTHENTICATOR to generate a new $PRIVKEY and give it its $PUBKEY
- $SITE can ask $AUTHENTICATOR to sign a challenge with the $PRIVKEY corresponding to one of the $PUBKEYs for that $SITE
- the user can pick which $PRIVKEYs are synced and which can be exported (depending on $AUTHENTICATOR capabilities)
Bonus points for adding a way to do the authentication off-device through QR codes, so $AUTHENTICATOR one one device can authenticate a session on another device (like using a phone to log into $SITE on the desktop, perhaps for the purpose of adding another authenticator there).
- commandersaki 2y agoFully agree. I'd say the overengineering is to support competing vendor interests and introducing crap like attestations. Though, I believe some extra engineering is needed for the constrained resources on a hardware token authenticator.