Basic cyber security says that passwords should be encrypted and hashed, so that even the company storing them doesn’t know what the password is. (When you log in, the site performs the same encrypting and hashing steps and compares the results) Otherwise if they are hacked, the attackers get access to all the passwords.

I’ve noticed a few companies ask for specific characters of my password to prove who I am (eg enter the 2nd and 9th character)

Is there any secure way that this could be happening? Or are the companies storing my password in plain text?

  • Skull giver
    link
    fedilink
    92 years ago

    Theoretically: Shamir’s Secret sharing with a limited amount of secret material available to the helpdesk could form a relatively secure method to validate k knowledge of the password without disclosing all of it.

    Practically: pretty sure they just store (part of) your password in plaintext. Getting SSS working can be difficult and it’s much easier to just pretend your password is stored safely instead.

    In between those two you have intermediate options (hashing a bunch of combinations of position + salt + character with a very large amount of rounds) but if we’re talking about two characters, you may as well just store the characters in the dagaabse directly

    • @[email protected]
      link
      fedilink
      English
      1
      edit-2
      2 years ago

      Shamir’s secret sharing, which was new to me, still means the password must be unencrypted though!? Otherwise there’s no secret that can be shared. You can’t get individual characters of non-reversible-hashed passwords.

      Reading the Wikipedia page about Shamir’s secret sharing I don’t see anything about sharing part of the secret data, only that the decryption key is split-shared.

        • @[email protected]
          link
          fedilink
          English
          12 years ago

          So in this case the shared partial secret key would be a part of the secret. That seems like a bad idea, bad practice for security. But I see how it’d work.

          • Skull giver
            link
            fedilink
            English
            22 years ago

            It’s not necessarily bad practice, that’s exactly how such a system should work, assuming the keys material is good enough not to be brute forced easily. SSS is better if you combine strong key material (actual cryptographic keys, for example) but reading out ECDSA keys over the phone is quite the hassle.

            I’ve never actually encountered a business that asked for my password over the phone and I would feel sketched out regardless of how good their implementation might theoretically be. It’s better than voice identification, but I’d rather keep my passwords to myself.