Why clever fails. What actually makes a password uncrackable. Managers, MFA, passkeys, and how to find out if you've already been compromised.
Most people handle passwords the same way: they pick something they can remember, maybe substitute a number for a letter or add an exclamation point at the end, and use slight variations of it everywhere. This approach feels reasonable. It is, in practice, not much better than nothing — and I'm going to show you exactly why, and what to do instead.
A lot of what follows comes from years of listening to Steve Gibson on Security Now!, the podcast that taught me most of what I know about practical security. Steve has spent more hours thinking rigorously about passwords than almost anyone alive. I'll attribute his specific insights where they appear.
To understand what makes a password strong or weak, you first need to understand what an attacker is actually doing. There are three main approaches, in order of how they're tried:
As of 2026, Troy Hunt's HaveIBeenPwned.com database contains over 14 billion breached accounts. The odds that your email address appears in at least one breach are extremely high. The question isn't whether your credentials were ever exposed — it's whether the password attached to them is unique to that site, or whether it opens doors elsewhere.
Steve Gibson dedicated a full episode to this in 2012: "Password Cracking Update: The Death of Clever" (Security Now! #366). The conclusion is blunt, and it's gotten more true every year since:
Everything you think is a clever password trick, attackers already know about. This isn't speculation — it comes from analyzing hundreds of millions of real-world passwords from actual breaches. The most common "clever" moves and their status:
| The "Clever" Move | Example | Status |
|---|---|---|
| Capitalize first letter | Dragon → Dragon | In every cracker's ruleset. Tried automatically. |
| Add a year or birth year at the end | dragon1987 | Extensively catalogued. Years 1900–2030 all tried. |
| L33t speak substitutions | dr4g0n | Every common substitution (e→3, a→@, o→0, i→1) is in the rules. |
| Add ! or !!! at the end | dragon! | Common suffixes are the first rule applied. Tried in seconds. |
| Word forwards + backwards | nogardragon | Known. In the rules. |
| Keyboard shift patterns | ftzhpm (qwerty shifted) | All shift directions and offsets catalogued. |
| Replace a letter with a look-alike number | passw0rd | The most analyzed substitution in existence. |
| Repeat the word | dragondragon | Word repetition is a known rule. |
"Anything you can think of, they can, too. But more importantly, you thought of it, and you used it. And then some website where you used it got cracked. What happens is the hackers look closely at the ones they could not crack, and they go, hmm, why couldn't we crack this? They zero in on the ones they couldn't crack, and that leads them to strategies they don't yet have crackers for — and so they add crackers for those strategies."
Hardware acceleration made this catastrophic. A $12,000 homebrew rig with eight AMD GPU cards running Hashcat can test every possible 8-character password in 12 hours. If your password is 8 characters of anything, assume it's crackable.
Steve Gibson had a breakthrough realization that he published as the Password Haystacks concept (Security Now! #303). It reframed password security in a way that most conventional advice misses.
The key insight: what protects you in a brute-force attack is not the complexity of your password — it's the size of the search space the attacker has to cover. An attacker trying every possible combination starts at the low end (short passwords, simple alphabets) and works outward. The longer your password, and the more character types it uses, the further out in that search space it lives.
The math is stark. Using the full 95-character printable ASCII alphabet:
| Password Length | Search Space | At 100 billion tries/sec |
|---|---|---|
| 6 chars | 735 billion | Seconds |
| 8 chars | 6.6 quadrillion | 18 hours |
| 10 chars | 59 quintillion | 1.9 years |
| 12 chars | 540 sextillion | 170,000 years |
| 16 chars | 44 septillion+ | Billions of years |
| 20 chars | Off the charts | Heat death of the universe territory |
Every character you add multiplies the search space by ~95. One more character is not "a bit stronger" — it's 95 times harder to crack by brute force. This is the exponential growth that makes long passwords categorically different from short ones.
"Length matters radically more than a password's entropy. As long as your password is not in a dictionary or in a list, then the only way to attack it is brute force. And brute force, trying everything, only gets yes or no. It's either it didn't work or it did."
The corollary: a low-entropy but very long password — dog............. — lives in an enormous search space. It's effectively uncrackable by brute force even though it's not "complex." The haystack is huge. The needle is your password. The attacker has to find the needle.
Before a brute-force attacker tries the full 95-character alphabet, they try smaller alphabets first — because 46.67% of all passwords are all lowercase. So they try all-lowercase passwords out to a long length before touching any password that contains uppercase, digits, or symbols.
This means: you need at least one character from each type (uppercase, lowercase, digit, symbol) to force the attacker out of the abbreviated searches. Once you've done that, length is everything.
Gibson's Password Haystacks page at grc.com/haystack.htm demonstrates a technique he calls password padding: take a memorable base — even a simple dictionary word — and pad it with a consistent pattern of your own invention.
Examples of the concept (don't use these exact patterns — invent your own):
correct...horse...battery...staple — spaces or dots as separators between memorable words....MyDog....MyDog — your phrase padded symmetrically[[[[[Swordfish]]]]] — surrounding brackets + a memorable word!-!-!-Spartan-!-!-! — a pattern you can reproduce from memoryThe padding takes the password out of any dictionary or rule-based attack and pushes it so deep into brute-force territory that no hardware that will ever exist can find it in a reasonable time. The memorable word in the middle is irrelevant to security — the length and character mix are doing the work.
The power of padding is that your scheme is private. Don't use any pattern you've seen in an article (including this one). Invent something that makes sense to you — a consistent prefix/suffix, a favorite symbol repeated, a pattern based on how you hold your hands on the keyboard. Write the scheme down somewhere safe if needed, but not the actual passwords. Anyone who finds your scheme note won't know which sites you used it on or what the base words are.
Even a perfect password at one site can be catastrophic if you use it elsewhere. The attack is called credential stuffing: when a site gets breached and passwords are cracked, attackers take those email+password pairs and automate login attempts across hundreds of services simultaneously. Your Netflix password gets you into Gmail. Your Gmail password gets you into everything else.
The scale of this problem is not academic. The average person uses roughly six to seven distinct passwords across twenty-five or more accounts. That means most accounts share credentials with at least a few others. When any one of those sites is breached — and some site where you've registered has almost certainly been breached — the domino effect begins.
The rule is not negotiable: every site gets a unique password. The only practical way to do this for most people is a password manager.
A password manager generates, stores, and fills long, random, unique passwords for every site you use. You remember one strong master password. The manager does the rest.
This is not optional for anyone serious about security. It's the only way to have genuinely random, genuinely unique passwords everywhere without requiring superhuman memory.
| Manager | Type | Key Features | Cost |
|---|---|---|---|
| Bitwarden | Cloud, open source | Cross-platform, audited, self-host option, breach monitoring | Free / $10/yr premium |
| 1Password | Cloud | Excellent UX, Travel Mode (hides vaults at borders), family plans | $3/mo individual |
| Dashlane | Cloud | Dark web monitoring, VPN included in premium | Free limited / $5/mo premium |
| KeePassXC | Local file, open source | No cloud dependency, fully offline, sync your own file | Free |
| Apple Passwords / iCloud Keychain | Platform (Apple) | Seamlessly integrated on Apple devices, now a standalone app | Free |
| Google Password Manager | Platform (Google) | Integrated in Chrome/Android, passkey support | Free |
The one password you have to remember — the master password for your manager — deserves real thought. It's the one exception to "let the manager generate it." Apply the haystack principle: long, padded with something unique to you, containing all character types. This is the one you genuinely memorize. Make it 20+ characters. Use something you can recall under stress but that no one else would guess or find.
The common advice "never write down your passwords" has been authoritatively reversed. If you can't write them down, you'll choose ones you can remember — which means weak ones. Bruce Schneier's argument (shared by Gibson on Security Now! #4): write passwords on paper and treat that paper like a credit card. Keep it in your wallet. People are already good at protecting physical items they know are important. A note in your wallet is vastly safer than a weak password in your head.
When a site is breached, what the attacker gets is not usually your plaintext password — it's a hash of it. A hash is a one-way mathematical transformation: the same input always produces the same output, but you can't reverse it to get the input back. When you log in, the site hashes what you type and compares it to the stored hash.
The quality of the hashing matters enormously:
| Hashing Approach | Status | What It Means for You |
|---|---|---|
| Plaintext | Catastrophic | Breach = instant access to every user's password. This still happens. |
| MD5 / SHA-1 (unsalted) | Broken | Rainbow tables crack common passwords instantly. Billions/sec on GPUs. |
| MD5 / SHA-256 (salted) | Poor | Salt prevents rainbow tables, but MD5/SHA are fast — GPUs still tear through these. |
| bcrypt | Good | Deliberately slow (adjustable cost factor). Strong passwords are effectively uncrackable even after breach. |
| scrypt / Argon2 | Best | Memory-hard: expensive in both time and RAM. Modern standard. Resists GPU and ASIC attacks. |
You usually can't know which algorithm a site uses. The practical implication: assume any site you've ever used could be breached and could have weak hashing. Your defense is unique passwords — so a cracked hash at site A doesn't help the attacker at site B.
Even a perfect unique password can be phished — you type it into a convincing fake login page, and the attacker has it. Multi-factor authentication (MFA) adds a second requirement that the attacker doesn't have even if they got your password.
| MFA Type | How It Works | Strength |
|---|---|---|
| Hardware key (YubiKey, Titan) | Physical device you plug in or tap. Signs a challenge cryptographically. | Strongest. Phishing-resistant — the key verifies the domain before signing. |
| Authenticator app (TOTP) | App generates a 6-digit code every 30 seconds (TOTP). Google Authenticator, Authy, etc. | Very strong. Can be phished in a real-time proxy attack, but stops almost everything else. |
| SMS code | Code texted to your phone number. | Weak. SIM swap attacks can intercept. Still much better than nothing. |
| Email code | Code sent to your email. | Only as secure as your email account. Use sparingly. |
| Push notification | App sends "Approve this login?" to your phone. | Good, but susceptible to MFA fatigue attacks (spamming approvals until you tap "yes"). |
Enable MFA on everything that matters. Prioritize: email first (it's the master key to everything else), then financial accounts, then password manager, then everything else. If a site only offers SMS, enable it anyway — it's still dramatically better than nothing.
Passkeys are the technology the industry has converged on to replace passwords entirely. They use the same asymmetric cryptography that TLS uses, applied to authentication.
When you create a passkey for a site, your device generates a public/private key pair. The site stores the public key. Your device keeps the private key, protected by your biometric (Face ID, fingerprint) or PIN. To authenticate, the site sends a challenge; your device signs it with the private key; the site verifies with the public key. No password ever crosses the network. No shared secret exists that can be phished or breached.
As of 2026, passkeys are supported by Apple, Google, Microsoft, and most major sites (GitHub, Google, Apple ID, many banks and retailers). If a site offers a passkey option, use it. We're in the middle of the transition away from passwords — it will take years, but the direction is clear.
On whether passwords will ever truly disappear: "They're never going to go away, ever, ever, ever." His point was that legacy systems, low-security sites, and human inertia will keep passwords alive indefinitely — even as better alternatives proliferate. The practical response: make your passwords as strong as they can be while passkeys and better authentication slowly take over the things that matter most.
Check right now: haveibeenpwned.com — Troy Hunt's service aggregates billions of breach records. Enter your email address and it tells you which breaches it appeared in, what data was exposed, and when. It's free and safe to use.
If you appear in a breach:
Also worth checking: haveibeenpwned.com/Passwords — you can check whether a specific password appears in any known breach corpus without the site ever seeing the full password (it uses a clever k-anonymity technique: only the first 5 characters of the SHA-1 hash of your password are sent to the server).
Security questions — "What's your mother's maiden name?" "What was your first car?" — are often easier to defeat than the password they're protecting. This information is frequently findable through social media, public records, or data brokers. Steve Gibson had his bank account compromised not through his password, but through his mother's maiden name, which he'd used as a reminder on another site.
Treat security question answers as additional passwords: use false, random, unique answers and store them in your password manager. "What was the name of your first pet?" — answer: correct-horse-battery-staple. The site has no idea and no way to verify. You know where the answer is stored.
After all of the above, here's the practical policy that follows from the principles:
If you only take one action after reading this: get a password manager and use it to change your email password to something long, random, and unique. Your email account is the master key to your entire online life — it's how you reset every other password. Secure it first. Everything else can follow.
| The Myth | The Reality |
|---|---|
| "My accounts aren't interesting enough to be targeted." | Credential stuffing is fully automated. Attackers don't target individuals — they process millions of accounts per hour looking for hits. You don't have to be interesting. You just have to have reused a password from a breached site. |
| "I'll know if I've been hacked." | Often you won't — not immediately. Attackers who gain access frequently wait, monitor, and use access opportunistically. HaveIBeenPwned tells you about breach exposure. Your account behavior may not. |
| "A password manager is a single point of failure." | Yes — and so is your brain, which is a far worse vault. Your manager stores encrypted data; the master password never touches the server in properly designed systems. The risk of a good manager is lower than the risk of weak/reused passwords across 25 sites. |
| "Changing my password regularly makes it more secure." | Only if it was compromised and you don't know it. Regular forced rotation without breach evidence causes people to choose weaker passwords (MyPassword1 → MyPassword2). NIST officially retired forced rotation in 2017. Change on suspected compromise; otherwise leave a strong unique password alone. |
| "Longer passwords are slower to type and annoying." | With a password manager, you never type your passwords. They autofill. Length is free. There's no usability cost. |