How passwords get cracked
A hands-on tour of the maths and the shortcuts. By the end you will know what entropy really measures, why a dictionary attack shreds "P@ssw0rd1" in seconds, and why a boring four-word phrase beats a clever short one. Click, type, and try things; it takes about ten minutes.
Built for cybersecurity students. Every guess-rate figure here is an illustrative ballpark from public benchmarks; sources are listed on the final beat.
The attack you're not imagining
Before we count anything, fix the mental picture. The dangerous attack does not happen at your login screen at all.
Online versus offline
Guessing at the live login screen (an "online" attack) is slow and easily throttled or locked. The offline attack against a stolen hash database is the one that sets the standard your password has to survive.
How fast is "as fast as they can"?
The gap between the top and bottom rows is roughly a billion-fold. Same password, wildly different fate.
So how many guesses in a single day?
A rig chewing through 100 billion guesses per second, running for 24 hours. Do the arithmetic in your head first, then reveal it.
Entropy: measuring the haystack
Entropy is just a count of possibilities, written in bits. Each bit doubles the number of guesses an attacker must make. It is the single number that decides how long the offline attack takes.
The formula, in one line
Thirty bits means roughly a billion possibilities; forty bits, a trillion; sixty bits, a quintillion. Add ten bits and you have multiplied the attacker's work by about a thousand.
Type a password and watch the haystack grow
Times are the average to find it by brute force: total possibilities, halved, divided by the guess rate. One warning: this assumes every character is chosen at random. Real passwords almost never are, and that loophole is the whole of module 03.
The lesson hiding in the numbers
But brute force is the attacker's last resort. First they try the cheap trick.
Dictionary attacks: the shortcut
The entropy calculator assumed randomness. Attackers bet, correctly, that you were not random. So they never start from "aaaa"; they start from what people actually pick.
They start with the answers
If your password is on the list, its entropy is irrelevant; it falls immediately. But most passwords are not on the list verbatim. So attackers bend the words.
Watch a dictionary word become "strong"
Click each stage. These are real, one-line transformation rules that a cracker applies automatically to every word in its list.
Now you judge: which survive?
Seven lowercase letters, a real word people love to use as a "clever" password.
Nine characters, all four character classes. Passes every "complexity" checkbox on a signup form.
Four ordinary words, chosen at random, with spaces. No symbols, no capitals.
Why length beats complexity
Everything so far points one way. Complexity fights the log and buys little; length rides the multiplier and, done as words, stays memorable. Let us put four strategies side by side.
Pick a strategy and compare
Why this matters
Practical upshot for defenders: pick long passphrases, use a password manager so length is free, never reuse a password across sites, and turn on multi-factor authentication so a cracked hash alone is not enough. And if you build the login: use a slow, salted hash (bcrypt, scrypt or Argon2), never fast unsalted MD5.
Sources used: Randall Munroe, "Password Strength", xkcd 936 (xkcd.com/936). EFF, "Deep Dive: New Wordlists for Random Passphrases" (7,776-word list, ~12.9 bits per word). NIST SP 800-63B, Digital Identity Guidelines (favours length and passphrases; drops mandatory composition rules). Hashcat published GPU benchmarks (illustrative hash rates for MD5 and bcrypt). The 2009 RockYou breach wordlist (~14 million passwords). Annual most-common-password lists (NordPass; SplashData) for "123456" and "password". Guess-rate figures are rounded ballparks for teaching.