Salt
A random, non-secret value stored with each password hash and fed into the hashing function, so identical passwords produce different hashes and precomputed tables are useless. Generate a unique salt for every password with a CSPRNG; NIST SP 800-63B requires at least 32 bits.
- Defined in
- NIST glossary: salt
Covered in
Password storage: hashing parameters and rehash on login
Choose Argon2id, scrypt, PBKDF2 or bcrypt with current minimum parameters, store a versioned hash, and upgrade old hashes after a successful login without overwriting a reset.
Choose cryptographic algorithms and parameters by job
A sourced quick reference for October 2026: which algorithm and parameters to use for encryption, hashing, passwords, MACs, signatures, key agreement, key derivation, randomness and TLS, the matching APIs in Node.js, Python, Java, Go and .NET, and where post-quantum migration stands.
Practice: Insecure randomness lab: Generate unguessable API keys · Password hashing lab: Verify and upgrade an Argon2 password hash on login