Passkeys are a trap. Do not use them

(nonfunctional.substack.com)

172 points | by laurex 2 hours ago

18 comments

  • agwa 1 hour ago
    Note that attestation can only be required during credential registration; at login time it's not possible to retroactively require attestation if it wasn't obtained during registration. And browsers will throw up a permission prompt if a website requests attestation. Are Netflix and Twitter currently requesting attestation when people register passkeys, and rejecting the registration if the user declines the permission prompt? I very much doubt it, since Apple's passkey implementation doesn't support attestation.

    Therefore, the author's scenario that sites will wait until most of their users are using attested passkeys and then "flip the switch and start rejecting non-attested passkeys" isn't very plausible.

    Attestation is certainly a stain on the WebAuthn spec, and it would have been better if Chrome and Firefox didn't support attestation (unless perhaps the browser is enrolled in enterprise management), but this blog post is presenting a hypothetical and unlikely scenario. That's not a good enough reason to recommend TOTP instead, given that TOTP is vulnerable to phishing and passkeys aren't.

    If consumer-facing sites start requesting attestation when registering passkeys, they deserve to be vigorously called out, and maybe then the recommendation to use passkeys should be revisited. But until that happens, don't tell people not to use passkeys.

    • throwawayffffas 55 minutes ago
      > at login time it's not possible to retroactively require attestation if it wasn't obtained during registration.

      Of course it is, the site will reject the passkey and require you to create one that is attested.

      > Are Netflix and Twitter currently requesting attestation when people register passkeys, and rejecting the registration if the user declines the permission prompt?

      They could start tomorrow.

      > a hypothetical and unlikely scenario.

      You have not been paying attention, that scenario is where this whole thing is building towards.

      > If consumer-facing sites start requesting attestation when registering passkeys, they deserve to be vigorously called out

      It's going to be the banks first.

      Why called out, it's all for your safety, to make sure you are not using an insecure client that might leak your data.

      • agwa 49 minutes ago
        So they're gonna stop supporting Apple users?
        • throwawayffffas 35 minutes ago
          Nah, Apple is going to provide attestation, and since you can't or won't be able to share keys between accounts, no harm no foul.
          • EA-3167 2 minutes ago
            For a lot of people Apple is the ecosystem they access everything through, including payment processing. That cuts both ways, but Apple has shown a clear preference for protecting user privacy when they could have chosen to do otherwise, presumably because it makes them more money in the long run.

            Why would that suddenly change in Netflix or some other company's favor at Apple's direct expense?

    • xg15 55 minutes ago
      Sorry, bit this is just the standard "boil the frog" playbook that tech companies always use for user-hostile features. It's usually:

      1) There is this new entirely optional feature, but it's not relevant to you, so feel free to ignore it.

      2) The feature is now active by default, but no worries, there is a simple button for you to opt-out.

      3) The feature is active by default, but because we value our users, there is an option in the advanced settings to deactivate it.

      4) Our data shows that 99.9% of users activated the feature, but if you belong to the handful of diehards who still refuse to use it (rolls eyes), you can use this obscure command line flag or about:config entry to turn it off

      5) Managing opt-out infrastructure for the feature has significant maintenance and security cost that we feel, we can no longer justify. Therefore, effective in three months, the opt-out flags will stop working and the feature will become mandatory. According to our metrics, this will affect 0.0001% of our users, so no disruption is expected.

    • hn8726 49 minutes ago
      There's also another scenario - annoy most users into using passkeys, then say "well everyone is using passkeys already, we don't need passwords anymore", and _then_ slowly start requiring attestation. Really I'm not one to look for conspiracy theories, but with the recent pushes around e.g. chat control, it's not that far fetched to assume someone pushes for more control over users' accounts
      • spiderice 0 minutes ago
        Can someone more familiar explain the end goal?

        Would a website want you to have to use Apple Passwords to guarantee that the account you're creating is connected to an Apple account, and thus making it more likely that you're a real, non-anonymous human?

  • danpalmer 1 hour ago
    The very last thing, past the conclusion, the very last footnote is:

    > Addendum: I feel I have made a compelling case for passkeys in this article. And I haven’t even pointed out one of their best security features: they are (in most use cases) domain-bound, meaning they are resistant to what are called Man-In-The-Middle attacks.

    "I made a compelling case... but didn't point out the most important security feature that motivated passkeys in the first place"

    Honestly I don't think this post did make a compelling case. There's a lot of assuming bad faith on the part of the FIDO alliance, while completely missing that preventing MITM attacks was a key design feature. The FIDO alliance members deal with stolen accounts all the time, and passkeys largely solve that. Stealing accounts is almost always done with phishing or social engineering, and passkeys solve the former and reduce the surface for the latter.

    • kevin_nisbet 53 minutes ago
      I sort of started skimming when the article was saying industry solved the problem with text messages and TOTP. I think there are several arguable problems with Passkeys as implemented, but to argue TOTP is equivalent is going to leave lots of people vulnerable.

      The protections against MITM you mentioned is probably the biggest one, but the other one in the back of my mind is TOTP is a shared secret. So a compromise of the server side allows impersonation of users undetected, which can be a big problem. Maybe I'm over reacting because no company has ever lost a copy of it's database and they're all super secure. But, imagine trying to argue as a user I didn't do a thing when there is an audit log saying we challenged the user for TOTP and it was provided, was definitely the users fault.

      • cromka 4 minutes ago
        > solved the problem with text messages

        Especially considering how easy it still is to do a SIM swap.

      • danpalmer 52 minutes ago
        TOTP is this decade's "just have a better password", and we all know how well that went before.
    • throwawayffffas 37 minutes ago
      PKI already prevents man in the middle attacks.

      Users constantly fall for website impersonation, this can be solved by your password manager it just has to check the host and the certificate of the login page.

      Now browsers don't let password managers do that, I wonder why.

      But lets say you don't like the fact that passwords are sent over the wire. I get that I don't like that either. You could just take a random token and have an hmac signature on all your requests, for most cryptographic hashing functions that would probably be quantum secure as well.

      But lets just say you don't want to have a shared secret because you know servers get hacked all the time. Totally legit, I like the way you think, asymmetric cryptography it is.

      How could we possibly do it? Like ssh with pki on top.

      The spec could be literally these 25 words:

      Do what ssh does but request a PKI signed certificate instead of a key signature from the server and validate it against your known CAs.

      • danpalmer 32 minutes ago
        Passkeys are the consumer implementation of PKI to solve these problems.

        There's functionally no alternative for consumer logins, and certainly not one that doesn't require learning what PKI is. "like SSH with PKI" is a bit "draw the rest of the owl".

        • throwawayffffas 23 minutes ago
          PKI is already in place for domain verification. SSh with PKI is exactly what it sounds like, "passkeys" without attestation, hardware, corporate bullshit.
          • danpalmer 19 minutes ago
            Cool, why can't I SSH into Netflix? And how should my non-technical parents set up SSH on their phone?
    • grebc 42 minutes ago
      Why is your grandpa or fictional billions users being MITM’d?

      Passkeys are an end run on general purpose hardware largely under your own control, which is a much bigger issue in scale than dealing with customers who can’t access the services they pay for because of some byzantine security or know your customer laws/procedures.

      • throwawayffffas 32 minutes ago
        For their bank accounts, search tech support scam on youtube to see how that goes. Btw passkeys do nothing to stop this, they probably make it easier since grandpa doesn't have to search for a password or unlock a password manager to send his money to the scammers.
        • danpalmer 29 minutes ago
          Convincing someone to log in to their bank and send you money is strictly harder than convincing someone to log in to their bank.
          • throwawayffffas 21 minutes ago
            There is a middle ground where people are convinced to download a trojan and click ok once.
            • danpalmer 9 minutes ago
              I'm not sure I follow this point? A trojan would fail to exfiltrate passkeys (assuming they're stored securely). It would be able to see a valid login and potentially use that session or exfiltrate the session, but wouldn't be able to get persistent account access. This seems better than stealing a password and getting persistent account access, or possibly stealing a TOTP code for the same. It's bad, but I think it's made better by passkeys? Unless I'm misunderstanding your point.
      • danpalmer 30 minutes ago
        Why are they being MITM'd? Because some people want money and don't mind breaking laws.
        • grebc 26 minutes ago
          Seems to me that the institutions of the FIDO alliance would have better luck chasing these people that break laws.

          Instead we’re increasingly locked out of devices we buy and told/mandated this is how you’ll use them.

          • danpalmer 17 minutes ago
            You want corporations to get more into law enforcement? These things are already crimes, law enforcement agencies already go after them. Would I like more public funding for that? Absolutely. When we've solved crime then let's go back to using passwords, or even just usernames at that point, after all no one will hack them.
            • grebc 14 minutes ago
              Since you’ve made up a question I didn’t ask or intimate, I’ll leave the discussion here.
      • skybrian 35 minutes ago
        There is a reason that banks send increasingly strident text messages that they will never ask for this code.
        • Telaneo 8 minutes ago
          And then undermine that effort by actually asking for that code anyway.
    • xg15 1 hour ago
      Then why do we need all the stuff about attestation and data bits?
      • danpalmer 53 minutes ago
        Because it prevents an attacker from stealing the password. It's both extremely hard to "steal" a passkey, and to phish a login from one. Neither of those are true for passwords, and TOTP only partially solves the stealing part.

        Passkeys aren't solving for security nerds who like portability and have 30 character long passwords, they're solving for grandpa who will happily read their bank's 2FA SMS to the "bank" over the phone. The FIDO alliance has literally billions more of these users than they do users who know what hardware attestation is and how it impacts their auth workflows.

        • xg15 50 minutes ago
          This level of security is perfectly achievable with an unattested passkey.

          And Grandpa will have fun if he has to juggle 20 passkeys with different security requirements on his devices.

          • danpalmer 43 minutes ago
            The security requirements are generally hidden from users. I have never noticed different behaviour between my passkeys.

            But as I said, there are plenty of UX issues with passkeys, those UX issues however don't include getting your accounts hacked, phished, passwords lost in data breaches, etc, which I'd suggest are a lot worse.

      • thadt 38 minutes ago
        So companies can use passkeys and set policies around what hardware they're stored on. IMHO, not particularly useful or desirable for everyday Internet users, but really nice if you have specific requirements.
  • bmitch3020 1 hour ago
    I've yet to voluntarily enable passkeys, for the main reason that I want portability, and not to be tied to any single device that can be lost. I want to be able to backup and lock my credentials in a safe. I also want to control the strength of my credentials for different services, and I don't consider my thumbprint used to unlock my phone to be as strong as a long password in a password manager.

    The first time I was forced to use a passkey implemented within the vendor's app (3rd party password managers were not an option). I quickly closed that account.

    The second time was an app that popped up a passkey opt-in in the middle of a bunch of transaction screens. I quickly realized the error, but there was no easy undo. The opt in was one green button in the middle of the screen. Turning it back off required digging through settings to find the security option to disable, and then confirm my choice multiple times. That process also signed out all my other devices.

    The fact that companies are resorting to dark patterns and forced requirements, where my money is held hostage, should be pretty good evidence of how poorly the passkey rollout is going.

    • BadBadJellyBean 1 hour ago
      You can put your passkey in another safe. I store mine in my vaultwarden. You can also do keepass with a plugin. You don't have to store it on your phone.
      • embedding-shape 45 minutes ago
        > I store mine in my vaultwarden.

        Can you export it from there? My main gripe with passkeys in 1Password is that seemingly you can't export them, unless you export it to "someone else", which isn't clear if that someone can be just "you".

    • rkagerer 41 minutes ago
      Silicon Valley suffers an utter lack of comprehension of the concept of consent. As another commenter pointed out some time ago, if we were in a nightclub they'd be the creepy guy that keeps coming up to you asking:

      Want to dance? Yes | Maybe Later

  • david_shaw 1 hour ago
    This is a (very long and) well-written treatise against passkeys in their common and disparate forms. It's worth reading, and brings up several interesting and often concerning points.

    I don't agree with the conclusion, though.

    TOTP is great, flexible, and keeps the user in control; however, using a passkey in a flexible password manager (Bitwarden, keepass, 1Password, etc) really does continue to give the user control. And the user experience is dramatically easier than filling in TOTP codes.

    To advocate for TOTP over passkeys, we're already relying on an application to generate those numbers (authenticator apps, password managers, etc). I see no reason to not simply continue using those pieces of software to manage passkeys, too.

    • oefrha 28 minutes ago
      > using a passkey in a flexible password manager (Bitwarden, keepass, 1Password, etc) really does continue to give the user control. And the user experience is dramatically easier than filling in TOTP codes.

      See my comment here https://news.ycombinator.com/item?id=50049311 about userVerification: required. Passkey in 1Password used to be on par or slightly more difficult than filling in TOTP codes (need to click to approve rather than browser extension autofill and even auto-submit on a large number of websites) but that’s no longer true with a good number of websites requiring userVerification. Now you have to type in your login password on desktops without biometrics. Forum thread: https://www.1password.community/1password-at-home-31/user-ve...

    • lukeschlather 1 hour ago
      I can't use a passkey on a device unless I can install my password manager on that device and I am comfortable giving that device access to my passkeys. Passwords are simply unparalleled in their flexibility. You're never going to be locked out because <bluetooth, your TPM, your phone, ...> isn't working today.

      I think the bit about TOTP was mostly a joke, the problem with passkeys is that they're billed as a replacement for passwords but they mix lots of MFA concerns in and make interoperability essentially impossible a lot of the time.

      • johnduhart 1 hour ago
        > I can't use a passkey on a device unless I can install my password manager on that device and I am comfortable giving that device access to my passkeys.

        That's simply not true. I'm able to log onto GitHub on my corporate device using a passkey that's kept in 1Password on my iPhone.

        https://bughunters.google.com/blog/passkeys

      • Grombobulous 1 hour ago
        But you can be locked out if the provider decides you need to change your password after a breach, or you forget the password, or you enter the wrong password in too many times.

        They’re both equally disposable. You can reset a password just like you can reset a passkey.

      • jazzyjackson 47 minutes ago
        > You're never going to be locked out because …

        Yeah and neither will anyone else!

    • cvadict 42 minutes ago
      > using a passkey in a flexible password manager (Bitwarden, keepass, 1Password, etc) really does continue to give the user control.

      Sure, but if you read the article you would know that deal can (and will undoubtedly) be altered. The passkey issuer can demand that the passkey be hardware-backed, and I've already run into passkeys that cannot be stored in bitwarden out in the wild (i.e. they REQUIRE that I use a TPM-backed store in my computer). Eventually it will be a particular TPM-backed store running on an attested platform. Now that's not generally the case today, but make no mistake, that IS the ultimate goal... You will only access valuable services from devices that you fundamentally have no control over (e.g. locked down OS's with attestation before you can access X,Y,Z), so that you can't steal from netflix, skip the sponsor segments on youtube, block ads in your web browser, etc. etc. etc. If you want a preview of how this might all work from the technical side, just look into how TEE works for large-scale GPU deployments right now.

    • nonfunctional 1 hour ago
      I completely agree that KeePassXC and other password managers give you total user control, and they do support "passkeys" -- but crucially, not all kinds of passkeys. KeePassXC has no remote attestation support, nor hardware-backing support, and nor do I think it should.

      My claim is not that passkeys couldn't give you control in principle. It's that the standard readily allows for websites to prevent you from being allowed to exercise that control, and the unclear messaging and UX around passkeys means most users will not even notice should this happen.

  • Grombobulous 1 hour ago
    I don’t know if it’s productive for me to talk about how a headline is off-putting, but I’m going to mention it because, well, it’s a headline, and a headline is a strong first impression.

    Is the audience of this article the kind of people who are already using passkeys and like them? Because, if so, we’re starting at a deficit here. The author is out to get my beloved passkeys that have saved me so much time and pain.

    Are passkeys perfect? No. Are they even very good for no-technical users? Absolutely not…they’re incredibly confusing for that kind of person if you ask me.

    However, for my workflow, I’ll take them over a password+2FA type of situation where logging in is such an annoyance. The security part of the discussion is very interesting and a lot of the things in this article are stuff that I didn’t know before reading it.

    The issue is that, putting on my user hat, I just don’t care. As long as my accounts are reasonably secure I’m much more concerned about ease of use and workflow.

    • throwawayffffas 27 minutes ago
      You don't care, until you use the wrong apple pay card and apple nukes your account and you can no longer login to anywhere because all your keys are in your now remotely bricked iphone.

      Substitute apple with google, pay card with youtube comment and iphone with android for the "open" experience.

      • rogerrogerr 10 minutes ago
        > the wrong apple pay card

        Expand on this? Haven't heard of this failure mode.

    • nonfunctional 1 hour ago
      The intended audience is people who are not yet using passkeys, or have just started (due to all the websites demanding them now) but don't really know what they are.

      I apologize that the headline is provocative. I thought for a long time about how to appeal to both people who are barely aware of what passkeys are but also not put off people who like them. I considered calling them a "Trojan Horse" in the headline as I do in the body (i.e. legitimately lovely, but with a terrible and unobvious problem) but "trojan" has another connotation in computer security.

      Nonetheless, I said what I meant. Convenience is how they get you. This convenience didn't have to come with a trap, but thanks to the way it was designed, it does.

      • MBCook 1 hour ago
        You know what’s a great way to get me to not read something? Shitting on it immediately and making it seem like the articles just going to be another pointless rant.

        The title put me off completely.

        I’m tired of people shitting on everything. Especially without offering any advice on how to improve things. It’s exhausting to read. And apparently it’s not even the point of the article. So why is it the title?

        Very very strange choice.

        • 9x39 50 minutes ago
          >Especially without offering any advice on how to improve things. >And apparently it’s not even the point of the article.

          It wasn't a pointless rant, you're seemingly primed for something that didn't happen here.

          It's a good argument that passkeys are a trap while TOTPs offer the security you need but avoid the absolute control passkeys may hand over, so stick with those.

      • Grombobulous 1 hour ago
        Sure, I think your logic makes sense, and I don’t want to overemphasize complaints about headlines.

        Regarding how I feel about passkeys after reading your article, logically I am reading what you wrote and conceptually understand the trap, it’s just hard to wrap my head around what kind of situation would cause this trap to “catch” me so to speak.

        I.e., the upside is real and immediate, the downside is theoretical and tied to future uncertainty.

        • nonfunctional 1 hour ago
          You're right, I didn't explain in much detail the motivation that will push websites to start requiring the remote attestation flag to be set. I will try to cover that in a future article.

          But as for how it could "catch" you: if you use FOSS devices that are unattestable (as is the case for the LineageOS phone and Linux laptop I exclusively use), you may one day find you can't use many websites.

  • newCrotchSmell 8 minutes ago
    Curious if the author can provide examples of things we ever had ultimate control over?

    None of us had a say in our existence itself. Skin color. If we cannot have a say over our provenance itself "ultimate control" is just an empty phrase.

    Their concerns about big corp might hold some meager merit but "beware the avarice of rich people who view you as a sheep in their flock whether you want it or not" isn't really new.

  • skybrian 1 hour ago
    Ideally, passkeys should be cattle, not pets. You should have more than one per account, saved to more than one password manager. Then it's fine if they're not copyable because you can get another.
    • Arainach 1 hour ago
      > more than one password manager

      I'm sorry, what? Who has more than one password manager (other than a personal/work split)? That's absurd and not something anyone I've heard of would put up with

      • JasonSage 1 hour ago
        Want to guess how many non-tech individuals save passwords in Chrome on desktop and in iOS on their iPhone?
        • Arainach 1 hour ago
          At that point you don't have a password manager, you have a bunch of passwords you know and you just left "remember this" checked.
      • skybrian 42 minutes ago
        It's not that hard. Chrome and something else. (Such as iOS.) A different kind of backup authentication method would work too.
      • cowboylowrez 1 hour ago
        if I can't have two password managers for redundancy then none it is.
  • oefrha 39 minutes ago
    I’m an advocate for passkeys and I abolished passwords and embraced discoverable passkeys for our org’s key internal systems exclusively. So the battle cry of a title immediately put me on the defensive, unfortunately. The urge to not read is strong. A more measured title may help here.

    But there’s definitely a kernel of truth here. 1Password recently began to enforce userVerification: required[1][2], and suddenly on the desktop without TouchID I have to enter my login password to use the passkey on a good number of websites. I didn’t sign up for 1Password 15 years ago so that I have to enter both my very complex master password and very complex login password to sign into websites, the “one password” contract is suddenly broken after 15 years. This experience independently alarmed me about the additional constraints potential of the passkey standard and power wielded by the FIDO Alliance and partnering organizations addressed in TFA, which are, to be clear, useful for security in an organization. (We use userVerification: preferred now btw.)

    Therefore, I believe the passkey technology is great for enforcing a standard of security in an organization and stand by my choice for my org. But as a general purpose B2C auth tech, if the additional constraints become widely adopted, user freedom will be seriously harmed.

    Edit: I asked Opus 5.5 to vibe code a passkey auth solution in Go a few times without saying anything specific about userVerification. It chose required each time. So expect to see more of these. Oh and vibe coding auth without understanding it entirely is bad, please don’t do that.

    [1] https://web.dev/articles/webauthn-user-verification

    [2] https://www.1password.community/1password-at-home-31/user-ve...

    • throwawayffffas 19 minutes ago
      Substitute the title for Passkeys Considered Harmful.
  • Cider9986 1 hour ago
    Passkeys make it feel like the site is trying to get more info about me; it seems harder to maintain multiple accounts with passkeys. They feel worse for anonymity than a password where you know exactly what you're pasting into the site.

    Although this isn't true because actually with a password you have to choose how to generate it and everyone chooses different ways.

    • pshc 1 hour ago
      Passkeys only give a random public key + some capability bits, whereas almost all password logins ask for your email or phone number, for the inevitable reset dance likely facilitated over antiquated email or SMS. Realistically the latter is much leakier.
    • nonfunctional 1 hour ago
      My understanding is that TOTP and physical security keys both share very little information about you. Perhaps passkeys, being part of a standard that the FIDO Alliance keeps updating, may some day be expected to reveal considerably more information. And the limited number of remote-attestation-approved passkey managers might someday all start start volunteering such information regardless.
  • wry_xy 1 hour ago
    I've been complaining about passkeys for a long time and it was driving me crazy that it seemed to be the one thing that Big Tech, tech-savvy people, and normies were all on the same page about. The recent PR push a few months back was overwhelming.

    Passkeys in theory are great, but the capabilities of the spec are worrying. Defaults can and do change, and when they do, so follows 99% of the population, and then you find yourself either getting blocked out of services because your hardware/software doesn't comply, or you give in.

    But on the other end, it might not matter anyways. Apple, Google, Cloudflare, are already pushing similar garbage and now you increasingly have to scan a QR code that verifies your mobile hardware to use a desktop.

  • ttul 29 minutes ago
    TOTP is susceptible to man in the middle attacks. Passkeys are not. That alone is a solid reason to favor Passkeys!
    • throwawayffffas 12 minutes ago
      The objection is not against using keys for authentication, it's against the standard including attestation provisions, because there is an incredibly large space for abusing these to limit user freedom.
  • tgma 1 hour ago
    Hard disagree. Phishing is a major problem. Passwords+OTP are phishable[1]--passkeys are not (the signature is bound to the domain and cannot be forwarded). That alone makes passkeys worthwhile for the vast vast majority of consumers. This is not a theoretical threat model. You simply cannot realistically expect even a savvy consumer to be able to save themselves from phishing all the time. One mistake and they are fucked.

    If you write a long article about the merit of passkeys and there is no occurrence of the string "phish" in your article, I am afraid I cannot take your rant seriously.

    Again, this stuff is not merely theoretical. YubiKeys have been a thing at Google and other major tech companies for almost two decades now and the effects are well-studied.

    [1]: I have found for some weird reason, this is often overlooked and misunderstood in the industry. People even know about SIM swaps and stuff like that, but don't realize OTP is not phishing-proof.

    • kccqzy 34 minutes ago
      Phishing is a major problem, but it happens less than you think. Password managers are also checking the domain before supplying a saved password. A user who relies on autofilling the password every time will notice when their password manager suddenly does not autofill.

      Yubikeys are a great second factor honestly. But do you want to use a Yubikey as a passkey? Sorry you are likely dissatisfied. Many websites and apps (especially apps) support passkeys but would prohibit using your Yubikey as a passkey.

    • AlotOfReading 17 minutes ago

          YubiKeys have been a thing at Google and other major tech companies for almost two decades now and the effects are well-studied.
      
      My experience is that yubikeys have a tendency to get lost, get cleared, get mixed up (which of my 4 identical yubikeys has the right passkey?), stop working reliably from random USB issues, etc. And worse, yubikeys are awful to use. Like am I seriously supposed to take off my phone case every time I want to plug in a yubikey to the USB-C port (which may or may not be working depending on whether moisture has condensed in the port) so I can use the one mobile browser that supports them to retrieve a passkey every time I want to log in?

      No, fuck that. Just let me use an SSH cert at that point. The existence of phishing is a comparatively minor evil.

  • Havoc 1 hour ago
    Knowing how big tech works this will get forced down throats desired or not
    • Gigachad 1 hour ago
      I'm in small tech saas and users having their accounts breached because they share a password with 100 other services is a constant. I have had to set forced 2FA on many products because we take the blame when the user has their account compromised.

      Passkeys offer the same and more security but are less of a pain for the user.

      • nonfunctional 1 hour ago
        If you also support TOTP and physical security keys as an alternative to passkeys, that should be enough to provide a stable long-term alternative for users of FOSS devices. And of course, RP-side you can choose to never require the remote attestation flag to be set.

        Convenience is precisely the thing that big tech established tech platforms want to reward their users with to keep them around. The undeniable convenience of passkeys didn't have to come with a standard that is threatening against unattestable devices like my Linux phone. But it does, and that means passkeys are a way that the industry can discourage people away from using non-Google/Apple/Microsoft-approved devices.

  • drhagen 1 hour ago
    Can someone tell why the whole standard for authentication on the web is not just this:

    me: Can you show me my stuff?

    website: HTTP 401, who are you? I understand EasyAuth 1.0, if that is good for you.

    me: Sure, here's my EasyAuth 1.0: Hi <website>, I'm <user_id>. The time is <timestamp>. Signed, <digital_signature>.

    • 5G_activated 1 hour ago
      You have described, at a high level, passkeys.
      • agwa 1 hour ago
        Well, it's a fair question why Webauthn ended up so much more complicated, which has unquestionably been a hindrance to adoption.
        • drhagen 48 minutes ago
          Admittedly, my experience comes from OAuth and Webauthn. I have yet to try to implement passkeys. My exposer to passkeys comes completely from long blog posts complaining about it.
    • drhagen 1 hour ago
      Ok, I guess you also need a way to say "Oh, and next time I talk to you I'll use public key <public_key>."
    • ajross 1 hour ago
      Because you or someone needs to publish "<digital_signature>" in a way that cannot be forged, stolen, MiTM'd, or otherwise compromised. Basically the key generating that signature just becomes another password, far more difficult to use in practice, and sharing all the same disadvantages.

      So no one implements it for site-local login. Even the biggest sites like Amazon, for example, still use old-school passwords+2FA.

      The way secure auth works for small sites is that a third party[1] authenticates you, who the website trusts more than mere users. And that's where all the complexity comes up. You need something secure stored on your known-secure device, a password alone won't do.

      [1] In practice Google or Meta. Occasionally Apple or Microsoft. Everyone else is noise.

      • drhagen 1 hour ago
        > far more difficult to use in practice

        I guess I am envisioning the user agent doing all of this. You go to a site and create click account, your browser shows a pop-up: "<website> is asking you create an EasyAuth account. Would you like to create an account on this site?" If you click yes, then the user agent does this in the background:

        website: Sure you can have an account. Use this token <token> once and this ID <user_id> forever.

        me: Ok, here's your token <token> for ID <user_id> and my public key is <public_key>. Signed, <digital_signature> to prove it works on my end.

        Maybe generating a unique public key for each website is not substantially better than generating a password, but at least a signature cannot get stolen on the server side or in transit. You wouldn't have to change your public key if their database got slurped.

        Passwords also aren't standardized, so they are pain to generate (special characters required or disallowed?). They don't reliably autofill into a website. You still have to go through a manual flow to login; user-agent doesn't just keep you logged in. I guess I would be fine if the user-agent knew how to authenticate me to every website.

        Maybe this is what the passkey system was before it got designed-by-committee'd into oblivion. I am just always amazed by how complex authentication is when the user-agent should be able to handle this rather painlessly.

  • jesse_dot_id 27 minutes ago
    I love passkeys. 1Password handles them beautifully.
  • Starlevel004 1 hour ago
    I tried using a passkey to log in to something and it gave me an error and I simply didn't care about trying to fix it. So passwords it is for me.
  • shmerl 2 hours ago
    > What’s important to know is that unlike with any other kind of login credential, you do not have ultimate control over your passkeys.

    Use proper password managers, like keepassxc. Then you have control. But problem is that not all sites support that. If you can't use the above - then yes, passkeys are bad, especially if they become mandatory.

    • turtletontine 1 hour ago
      If you keep reading the article, you’ll see that the claim is current (unattested) passkeys are a stepping stone to “attested passkeys”. Attested passkeys would require remote attestation with OS, TPM, and password manager all working together, and would allow websites to require things like hardware backed non transferable passkeys that you don’t control. This has always been my suspicion and I do think it’s worth worrying about.
      • shmerl 58 minutes ago
        Sure, if they are actively pushing for that, it's bad. But otherwise passkeys are OK. It's a neat way to use private / public key pair instead of a dummy password.