Here is the text of the NIST sp800-63b Digital Identity Guidelines.

  • orclev@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 month ago

    A KDF is not reversible so it’s not encryption (a bad one can be brute forced or have a collision, but that’s different from decrypting it even if the outcome is effectively the same). As long as you’re salting (and ideally peppering) your passwords and the iteration count is sufficiently high, any sufficiently long password will be effectively unrecoverable via any known means (barring a flaw being found in the KDF).

    The defining characteristic that separates hashing from encryption is that for hashing there is no inverse function that can take the output and one or more extra parameters (secrets, salts, etc.) and produce the original input, unlike with encryption.

    • frezik@midwest.social
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      1 month ago

      OK. How do you reconcile that with “Hashing passwords isn’t even the best practice at this point”? Key derivation functions are certainly the recommended approach these days. If they are hashes, then your earlier post is wrong, and if they aren’t hashes, then your next post was wrong.