Passkeys are built on the FIDO2 standard (CTAP2 + WebAuthn standards). They remove the shared secret, stop phishing at the source, and make credential-stuffing useless.

But adoption is still low, and interoperability between Apple, Google, and Microsoft isn’t seamless.

I broke down how passkeys work, their strengths, and what’s still missing

  • laranis@lemmy.zip
    link
    fedilink
    English
    arrow-up
    30
    arrow-down
    1
    ·
    6 days ago

    Why do you have the 4-digit PIN? Well, it’s just to unlock the part of your device where the private key is stored.

    And there is the problem I have with passkeys. With a password it is me authenticating to the service I’m using. Pretty straight forward (if you ignore the operating system, web browser, network protocols, etc., but that’s part of using the tech).

    With passkeys you’ve got this third party storing your keys that increases your attack surface. It could be your web browser, your OS, or some cloud provider that you’re now relying on to keep your data safe. I get that for people whose password is “password123” or who aren’t savvy enough to avoid phishing maybe this helps. But with decent opsec this overly complicates authentication, IMO.

    To my point, later in the article:

    Securing your cloud account with strong 2FA and activating biometrics is crucial.

    What’s that now? The weak point is the user’s ability to implement MFA and biometrics? The same users who couldn’t be bothered to create different passwords for different sites? You see how we’ve just inserted another layer into the authentication process without solving for the major weakness?

    With my tinfoil hat on I suspect this push toward passkeys is just another corporate data and/or money grab – snake oil for companies to get their tentacles tighter around your digital existence.

    Happy to be proven wrong.

    • needanke@feddit.org
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      2
      ·
      edit-2
      6 days ago

      How do you currently store your passwords? I would also consider that a third party with an adittional atack surface if you are considering the passkey location one.

      Also your argument

      (if you ignore the operating system, web browser, network protocols, etc., but that’s part of using the tech).

      is faulty. That is because passkeys exist in part to mitigate those atack vectors. Mitm, a compromised browser or client, etc. is less of an issue with passkeys. The information transmitted during an authentication can not be reused on another authentication attempt.

      I don’t agree on passkeys complicating things either. For me the authentication-flow is not more complicated then KeePasses autofill.

      Assuming one can be ‘tech savy’ enough to not fall for fishing is bad. There are quite advanced attacks or you might even just be tired one day and do something stupid by accident.

      What’s that now? The weak point is the user’s ability to implement MFA and biometrics? The same users who couldn’t be bothered to create different passwords for different sites?

      You don’t expext the user to ‘implement’ mfa or biometrics. You expect them to use it. And most places where a novice would store passkeys don’t just expect but enforce it. It is also way simpler to set up biometrics on one device compared to keeping with a good password strategy.

    • Evotech@lemmy.world
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      1
      ·
      edit-2
      6 days ago

      Passkeys can’t be phished.

      That’s the main point.

      Phishing is a reeeeal pain. And something that needs to be solved. Not through training but with technology.

    • sentientRant@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      6 days ago

      Today we use lots of accounts with unique passwords. Obviously these passwords have to be stored somewhere. So I disagree with you when you say it’s a unique passkey thing.

      Passkey has an advantage when it comes to phishing because it doesn’t totally rely on human intelligence or state of mind.

      From a personal experience my data was leaked online, not because of phishing or I was careless. but it was leaked from a well known third party site which I used. They were affected by a very serious breach. Many unlike me use the same passwords for their emails and stuffs. But in case of passkeys there isn’t a shared secret. A breach will be useless.

      • laranis@lemmy.zip
        link
        fedilink
        English
        arrow-up
        3
        ·
        6 days ago

        I think you’re making my point. First, you’re right that passkeys can’t be phished. But access to the passkey manager can be. And now you’ve doubled your exposure to leaky third parties, once with the service you’re accessing and another with the passkey manager.

        • sentientRant@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          3
          ·
          6 days ago

          But the third parties actually have no access to your passkeys. The passkey stored are end to end encrypted blobs. So even if anyone gets hold of it, its useless. But a password for instance when leaked from 3rd party can be used easily as the server will have to decrypt the password at one point. So the means to decrypt the password will be at the server but passkeys aren’t like that. The private passkey can be decrypted only on your device for signing the challenge. Basically your exposure was basically halved.

  • HulkSmashBurgers@reddthat.com
    link
    fedilink
    English
    arrow-up
    60
    arrow-down
    2
    ·
    7 days ago

    The eco-system lock-in makes this a non-starter for me. If I could store the private keys in something like a keepass vault (or that) and do the authentication magic from that I would consider it.

    • cmhe@lemmy.world
      link
      fedilink
      English
      arrow-up
      22
      arrow-down
      4
      ·
      edit-2
      7 days ago

      You can? At least I do that. I host vaultwarden myself and store the passkeys there.

      Passkeys to me are just a better way to autofill in login data.

      • barryamelton@lemmy.world
        link
        fedilink
        English
        arrow-up
        20
        arrow-down
        1
        ·
        7 days ago

        OK, now think how nontechnical people will not be able to do it. They will be tied to Google/X-corp for all credentials, even government ones. Waiting to be banned if their social credit is too low.

        • Frezik@lemmy.blahaj.zone
          link
          fedilink
          English
          arrow-up
          17
          ·
          7 days ago

          That’s the root of the problem. Nontechnical people don’t use good passwords, but all the ideas we have for replacing them are only usable by more technically minded people.

          There are a variety of other reasons why passwords are bad, though.

        • Alaknár@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          10
          arrow-down
          1
          ·
          7 days ago

          OK, now think how nontechnical people will not be able to do it.

          Nontechnical people can use BitWarden/Keeper/Proton Authenticator/any other major system like that instead of self-hosting.

        • cmhe@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 days ago

          True. But I would say that this isn’t an issue intrinsic with passkey. Many people don’t have time/energy or the attitude to think critically about technology and are herded towards Google/X-corp/etc with offers of convenience and because they are often the only offered choice on the web sites. But from the POV of passkey they just act as a password manager.

    • sonofearth@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      7 days ago

      I am not dependent on any ecosystem for passkeys. I have a self-hosted vaultwarden instance that works with Bitwarden clients. I create and store my passkeys over there primarily and in my keepass db (which I primarily use for TOTPs) for redundancy. So if either one gets compromised, I can just delete the passkey for the accounts involved in that database.

  • rekabis@lemmy.ca
    link
    fedilink
    English
    arrow-up
    25
    ·
    7 days ago

    Just don’t take away passwords + TOTP 2FA for those of us who are actually using it correctly.

  • Kyden Fumofly@lemmy.world
    link
    fedilink
    English
    arrow-up
    23
    arrow-down
    1
    ·
    7 days ago

    Tried Passkey in the past. I had many problems, especially could not understand why they must use my google account. Now my google account is gone, don’t gonna go that rabbit hole again, i am happy with my Bitwarden and Aegis.

    • Appoxo@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      6 days ago

      Bitwarden does support access to access keys in (for example) firefox.
      I have not tested outside of browser (firefox). So it may depend on if you use chrome or some other app.

      Edit: Just got a suggestion inside the Amazon app (Android. Yes, I hate Amazon as well but I got a gift card and I hate it even more to give them a free of charge credit) to add a passkey. So it seems to work (semi-)reliable outside of a browser.

    • Dremor@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 days ago

      You can now use thirds parties APIs for Passkey. I use ProtonPass on my part, it works great most of the time, but there are still some apps that have Google provider hard-coded.

  • Korhaka@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    17
    arrow-down
    2
    ·
    6 days ago

    I don’t want to boot up a fucking android VM to run some login app every time I need to log into an unimportant account that realistically I would have used “el-passwordo” for the password if it let me.

    • Jakeroxs@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      6 days ago

      You can use browser extensions, not sure why you’d think you’d have to run an android VM lmfao

      • Korhaka@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        4
        ·
        6 days ago

        I just know the one my employer forces me to use can’t be. Need to use the stupid microsoft app.

        • Jakeroxs@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          6 days ago

          Not sure if that’s actually a “passkey” in the same sense then, MS is doing its own shit for sure. I use vaultwarden/bitwarden and can save standard passkeys there no problem.

  • lucille@piefed.blahaj.zone
    link
    fedilink
    English
    arrow-up
    15
    arrow-down
    1
    ·
    7 days ago

    It seems like the idea behind having the passkeys synced through cloud platforms is to mitigate the device failure risk as much as possible, as any device logged into the cloud account could be used to access the passkey protected accounts. It seems a little short-sighted as it means that the passkeys are limited to AAL2 (as AAL3 requires it to be non-exportable), and depends on the security of the cloud account. The cloud account can’t use anything as secure as a passkey, as it would reintroduce the device failure risk (meaning that your security has been downgraded from AAL3 to AAL2 for no reason).

    It should also be noted that if the cloud account is not phishing-resistant (which it can’t be for reasons stated above), then the accounts protected by passkeys aren’t phishing resistant either, as the cloud account could be phished, which would lead to a compromise of the other accounts.

    At AAL2 you could also just use a password and OTP, which doesn’t have the vendor lock-in problems with cloud synced passkeys and has a wider adoption already.

    In my opinion there is no need for cloud syncing, as device failure risk is negligible if you have a backup security key (as the failure rate of a single security key is already extremely low).

    • Valmond@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 days ago

      Yeah exactly, like make 3 engraved metal plates you can store here and there for recovery, not some stupid cloud account LMAO.

  • NauticalNoodle@lemmy.ml
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    1
    ·
    edit-2
    6 days ago

    if it undermines or circumvents my fifth amendment right not to testify against myself, then I’m not interested in ending the use of passwords.

    • needanke@feddit.org
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 days ago

      You can set a pin on most passkey devices so that it doesn’t serve the authentication without it.

  • lukaro@lemmy.zip
    link
    fedilink
    English
    arrow-up
    6
    ·
    6 days ago

    All I know is a few months back someone setup a passkey on a shared google account at my job and now nobody but knows what the password for our email is. I can use the passkey to sign in with my phone, but only I can do that.

    • sentientRant@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      6 days ago

      I think Google accounts are made usually for single user and thus passkeys. But may be you can try going to the share Google accounts security and there’s an option skip password when possible. Disable it… May be it might work. I’m not sure tough.

    • sfgifz@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      5 days ago

      someone setup a passkey on a shared google account at my job

      I can use the passkey to sign in with my phone, but only I can do that

  • tym@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    6 days ago

    hot take: end users will be more likely to adopt security keys (or device attested passkey which = security key). Physical security, out-of-bounds cryptography to defeat AitM attacks (fake landing pages where six digit codes are stolen and silently used in perpetuity by the bad actor)

    source: my job is to try to get end users to put strong MFA on all the things.

  • Galactose@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    6 days ago

    Yeah totally not going to be misused by corporations with proprietary cryptographic-algorithm

    • cmhe@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      edit-2
      7 days ago

      I store the passkeys in my self hosted vaultwarden, they are a good replacement for auto inserting random passwords via text boxes.

  • sudoer777@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 days ago

    I use Passkeys with Bitwarden in desktop Firefox, but for some reason I can’t get them to work in GrapheneOS/Vanadium even though I have Bitwarden set as my password provider

  • ivanovsky@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    7 days ago

    I’ve been mostly too lazy to look into how to use passkeys. If my normal flow is using 1password for 2fa (on mobile and on the computer), is there a way I can still use that with passkeys? It says they’re supported but I’m not sure how that’d work, because aren’t they device specific?

    I just don’t want me losing access to my phone for whatever reason mean that I lose access to my accounts.

  • xylogx@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 days ago

    Ok I see a lot if discussion on this topic but no one seems to have mentioned the main feature of the spec that makes them phishing resistant: presence detection. This is what makes FIDO resistant to credential replay. The spec is not perfect but it prevents most common phishing attacks.