‹ BackHN Continuity

Thread

I don't like passkeys

853 points · 819 comments · ethanhawksley

  1. drtz · · focus · HN ↗
    Passkeys do marginally improve security against MITM and phishing attacks, but they are primarily for protecting the lowest common denominator from themselves: people who re-use passwords and/or don't use a password manager.

    If you use multiple devices throughout the day, registering passkeys in all of these systems becomes a big headache with O(m*n) complexity, so putting the passkeys in a password manager is the only realistic solution. But this still breaks the login flow for a very common use case: how do I log in on a device that I don't own? With a password in a password manager I at least have the option of manually typing the password.

    The biggest problem, though, is how users are pushed into it without any warning or knowledge of what they're signing up for. I've accidentally set up passkeys just by clicking an okay button a few times in the past and had to go back and figure out how to undo it after being blocked from login on another computer (which computer was I on again?).

    1. judge2020 · · focus · HN ↗
      > how do I log in on a device that I don't own?

      This is solved by passkey-implementing software and devices (with Bluetooth) allowing you to log in with a QR code (Webauthn via CTAP hybrid transport). iOS and Android support this, and it’s generally not a locked-down thing if other devices wanted to do it too.

      The only use case left is in “how do I login if all my devices are stolen/fall into a body of water” in which there really isn’t an answer beyond “get (a|your) device back, sign back into your password manager, use that to get back into critical accounts”.

      1. 201984 · · focus · HN ↗
        What if the computer you want to log in on doesn't have Bluetooth? Probably most public computers (like ones in libraries) don't have it.
        1. limagnolia · · focus · HN ↗
          The website should display a qr code you can scan with your phone that allows you to then login, unfortunately a lot of sites don't implement this, and some don't implement backup codes. This isn't the fault of passkeys per se, but of poor implementations.
          1. 201984 · · focus · HN ↗
            How does scanning the barcode with your phone log you into the computer? Does your phone need network access for that?
            1. jon-wood · · focus · HN ↗
              There's a whole set of fallbacks built in to the standard, including Bluetooth, local network connections, and going via a relay server. All of them eventually end up with your device signing something and handing that back to the browser on the other device to complete the authentication flow.
              1. thwarted · · focus · HN ↗
                I cannot speak to how accurate your description is, but this description sounds like there are multiple weak points and multiple attack vectors that open this up to increased risk of compromise, undermining the very security stance it's supposed to provide.
                1. sgerenser · · focus · HN ↗
                  See my response above... I believe the description is incorrect, and bluetooth is required to prove physical proximity.
                2. LocalPCGuy · · focus · HN ↗
                  The spec is quite thorough and well thought out in this regard. Despite what it "sounds like" when described, it is very secure, even with a variety of implementations. What is far weaker is that most sites that offer passkeys also offer a multitude of fallback recovery options.
              2. sgerenser · · focus · HN ↗
                AFAIK, the "scan this QR code" method of signing in with a passkey on a phone on a device w/o the passkey requires Bluetooth. There's some type of handshaking that goes on in order for you to prove you're in physical proximity of the device you are logging in on, to prevent phishing attacks.
                1. sgerenser · · focus · HN ↗
                  Since I might have made someone mad... to clarify, as I understand it, Bluetooth is absolutely required for this "Scan the QR code" flow to work. However, it's also possible the actual authentication traffic to travel over a different pathway (wifi, cellular), but the bluetooth part is always required though to prove proximity. So on e.g. a library computer without Bluetooth enabled, you would not be able to log in with a passkey on your phone.
                  1. dwaite · · focus · HN ↗
                    Right - you can treat the protocol as having:

                    1. Initiation (QR code, NFC in draft)

                    2. (Proximal) negotiation (BLE key exchange)

                    3. Communication (over websockets or a direct L2CAP channel)

                    The challenge is that a devices without bluetooth (at least today) don't have another common way to wirelessly judge proximity. A desktop/laptop without bluetooth likely either doesn't have NFC, or has bluetooth disabled by policy and would likely have cross-device passkeys disabled by policy as well.

              3. MrMetlHed · · focus · HN ↗
                Is this why I keep getting notifications that such-and-such a website wants access to devices on my local network? I've been denying those left and right lately and didn't understand what on earth they needed access to that for.
                1. TeMPOraL · · focus · HN ↗
                  Android 17? If yes, then that's because they added a new permission specifically to block apps from LAN access, then bundled it together with "nearby devices" because the concept of "local network" is apparently too difficult for normies to understand or something.
                2. dwaite · · focus · HN ↗
                  That&#x27;s likely Google&#x27;s implementation of Local Network Access (<a href="https:&#x2F;&#x2F;wicg.github.io&#x2F;local-network-access&#x2F;" rel="nofollow">https:&#x2F;&#x2F;wicg.github.io&#x2F;local-network-access&#x2F;).

                  The browser delegates passkey plumbing up to the core platform typically, so it already should have the appropriate permissions.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.