02.LAB · Hands-On

Password Attack Racer

Four attacks. One password. Watch which finishes first — and which one was never the threat you thought.

Password security feels like it should be a fight between "longer is stronger" and Moore's law. In practice, the password you pick interacts with how it's stored and whether it's been seen before — and those two factors determine which attack wins.

Pick a password, a storage method, and whether to assume the user has reused this password somewhere that leaked. Click Race. Four attackers run in parallel against your choices. The bar that finishes first is the threat you should actually be defending against.

Target profile
Entropy
Brute force · GPU farm
queued
Dictionary + rules
queued
Credential stuffing
queued
Rainbow tables
queued

Reading the results

The four attacks have wildly different cost models. Knowing which wins under which conditions is the whole point of this lab:

The defenses, ranked

If you internalize one ranking from this lab, make it this one. From highest leverage to lowest:

NIST 800-63B perspective. Modern guidance no longer recommends periodic password rotation, complexity rules, or "must contain a special character." It recommends checking against breach lists, allowing long passphrases, removing forced rotation, and offering MFA. The lab above is largely the explanation for why those changes happened.
The point

Most "strong password" advice defends against the attack that's no longer winning. The dominant password attack in 2026 is credential stuffing — reusing credentials already in the breach corpus. Strength buys you nothing if the password is on the list.

The single highest-leverage defenses are blocking known-breached passwords, requiring phishing-resistant MFA, and moving to passkeys. A modern KDF is necessary; alone it is not sufficient. Stack the defenses, and the racer above can't finish at all.

References

Formatted in APA 7. Alphabetized by first author's last name.

  1. Biryukov, A., Dinu, D., & Khovratovich, D. (2016). Argon2: New generation of memory-hard functions for password hashing and other applications. 2016 IEEE European Symposium on Security and Privacy. https://doi.org/10.1109/EuroSP.2016.31
  2. Grassi, P. A., Fenton, J. L., Newton, E. M., Perlner, R. A., Regenscheid, A. R., Burr, W. E., Richer, J. P., Lefkovitz, N. B., Danker, J. M., Choong, Y.-Y., Greene, K. K., & Theofanos, M. F. (2017). Digital identity guidelines: Authentication and lifecycle management (NIST Special Publication No. 800-63B, Rev. 3). National Institute of Standards and Technology. https://doi.org/10.6028/NIST.SP.800-63b
  3. Hunt, T. (n.d.). Have I Been Pwned: Pwned Passwords. https://haveibeenpwned.com/Passwords
  4. OWASP Foundation. (n.d.). Password storage cheat sheet. https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html
  5. Provos, N., & Mazières, D. (1999). A future-adaptable password scheme. USENIX Annual Technical Conference.