Join our Newsletter — 33% off our NHI Course

Password Hashing

Password Hashing is the process of converting a password into a fixed-length cryptographic value before storage. It limits exposure if a database is stolen, but weak or fast hashes are still crackable offline. Defenders should use strong, salted password hashing and review cost settings as hardware improves.

What Password Hashing Does

Password hashing turns a plaintext password into a fixed-length digest before it is stored, so the original secret is not kept in recoverable form. The value is designed to be one-way, which means defenders validate future logins by recomputing the hash rather than decrypting stored passwords.

That design matters because the database is usually the prize. If stored password material is stolen, the attacker may still have to crack it offline, and the difficulty of that work depends heavily on the hash algorithm, salting, and computational cost.

Why Salts and Work Factors Matter

A salt adds uniqueness to each stored password record, which prevents identical passwords from producing identical hashes and makes precomputed cracking far less effective. A work factor, or cost setting, intentionally slows each guess so that large-scale offline cracking becomes expensive and time-consuming.

Strong password hashing is therefore not just about choosing a named algorithm, but about using it in a way that remains resistant as hardware improves. Fast hashes that were acceptable for integrity checks are usually poor choices for password storage because attackers can test enormous numbers of guesses very quickly.

How Password Hashing Fits into Authentication Security

Password hashing protects the stored verifier, not the login process itself. It reduces the blast radius of a password database theft, but it does not stop credential stuffing, phishing, replay, or session theft if an attacker learns the password through other means.

That distinction is important in modern authentication design, where password storage, password policy, MFA, account lockout, and session protection solve different problems. A strong hash helps defend the repository; it does not make weak passwords safe, and it does not replace stronger authentication controls.

Good practice is to pair hashing with broader password hygiene, including breached-password checks, sensible length requirements, and controls that reduce password reuse. For readers who want the surrounding policy context, Password Security and Password Manager Guide covers the operational side of password handling.

Where Defenders Review and Maintain It

Password hashing should be reviewed as a living control, not a one-time implementation choice. As hardware becomes faster and attack tooling improves, the same cost setting can become too cheap for an offline attacker, so organisations need periodic reassessment of algorithm choice, work factor, and migration plans.

It also belongs in the wider control stack for credential protection, including storage hardening, database access restrictions, backup security, and incident response procedures for credential exposure. NIST control guidance on authentication and system security provides useful framing for that broader program, and NIST SP 800-53 Rev 5 Security and Privacy Controls is a relevant reference point.

Risk and Threat Considerations

Weak password hashing turns a database breach into an offline cracking problem, which means the attacker can work without interacting with your environment and often without being detected. The risk grows when hashes are fast, unsalted, reused across systems, or derived from passwords that appear in common wordlists.

Failure mechanism: Attackers steal the password database, then use GPU-accelerated guessing, precomputed tables, or password-spraying data sets to recover real passwords from weak digests.

Impact: Recovered passwords can lead to account takeover, lateral movement, privilege escalation, and reuse attacks against other services where users recycled the same secret.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

NIST SP 800-53 Rev 5 and CIS Controls v8 set the technical controls, while ISO/IEC 27001:2022 defines the regulatory obligations.

Framework Control / Reference Relevance
NIST SP 800-53 Rev 5 IA-5 — Authenticator Management Defines secure management of authenticators, including credential handling for passwords.
IA-2 — Identification and Authentication (Organizational Users) Passwords and their storage are part of authenticating organizational users.
SI-4 — System Monitoring Credential theft and offline cracking often surface through compromise detection and review.
Recommendation — Use IA-5 to manage password lifecycle, storage protections, and periodic reassessment of hashing strength. Apply IA-2 to ensure stored password verifiers support secure user authentication flows. Use SI-4 to monitor for credential exposure indicators and post-breach abuse.
CIS Controls v8 CIS-5 — Account Management Password storage and handling support secure account lifecycle and authentication hygiene.
Recommendation — Strengthen account management to reduce password reuse, stale credentials, and takeover risk.
ISO/IEC 27001:2022 A.8.24 — Use of cryptography Password hashing is a cryptographic protection applied to stored authentication material.
Recommendation — Define approved password hashing methods and review cryptographic parameters periodically.

Practitioner Guidance

Why practitioners should care: Password hashing is one of the last lines of defence after a storage compromise, so the control has to stay ahead of attacker hardware, not just pass a code review. Treat algorithm choice, salt handling, and cost tuning as part of security maintenance, not implementation trivia.

What to watch for: Fast legacy hashes, inconsistent hashing libraries, weak or missing salt handling, and stale work factors that no longer impose meaningful offline cost. These are signs that a breach would expose users to faster credential recovery than the system designer intended.

Practitioner takeaway: Use a modern password hashing scheme with unique salts and an appropriately high cost, then revisit the settings periodically as hardware and attack methods evolve.