Strong Passwords, Explained

By Udit Agarwal · Updated October 17, 2026

A strong password is one an attacker cannot guess in any realistic amount of time, and two things decide that: how it was chosen and how long it is. Sixteen characters picked at random from letters, digits and symbols would take trillions of years to brute-force, even at 10 billion guesses a second. A human favorite like P@ssw0rd is among the first guesses attackers try, because cracking tools apply that kind of substitution to every word they know.

What makes a password strong?

Guessing against a live login page is slow, because well-run sites limit failed attempts. The bigger danger is offline cracking: when a site's database leaks, attackers test guesses against the stored hashes on their own hardware, as fast as the hash allows. They start with passwords leaked in earlier breaches, move on to dictionary words with common tweaks, and only then fall back to trying every combination.

Strength therefore comes down to one question: how many guesses before yours comes up? For a password a computer generated at random, that number can be calculated exactly. For one a person made up, it cannot, because people choose from a small set of predictable patterns and attackers know them.

Password entropy, in bits

Entropy measures the size of that search space in bits. A password with n bits of entropy is one of 2^n equally likely possibilities, so each extra bit doubles the attacker's work. For L characters drawn at random from a pool of N characters:

entropy = L × log2(N)        (the same as log2 of N^L)

Twelve characters drawn from letters and digits (N = 62) give 62^12, about 3.2 × 10^21 possibilities, which is 12 × 5.95 ≈ 71.5 bits. Here is the same calculation for common lengths and character sets:

Length Digits (10) Lowercase (26) Letters and digits (62) Printable ASCII (94)
8 26.6 bits 37.6 bits 47.6 bits 52.4 bits
12 39.9 bits 56.4 bits 71.5 bits 78.7 bits
16 53.2 bits 75.2 bits 95.3 bits 104.9 bits
20 66.4 bits 94.0 bits 119.1 bits 131.1 bits

The formula only holds for random passwords. Summer2026! has 11 characters of all four types, which looks like about 72 bits on paper, but it is a dictionary word, a year and a symbol, a pattern cracking rules try early.

How long would it take to crack?

Turning bits into time needs an attack speed. This table assumes 10 billion guesses per second, a plausible rate for one graphics card against a fast, unsalted hash, and the same assumption the Password Strength Checker uses. On average, an attacker finds the password after searching half the possibilities:

Random password Entropy Average time to guess
8 lowercase letters 37.6 bits about 10 seconds
8 printable ASCII characters 52.4 bits about 3.5 days
12 lowercase letters 56.4 bits about 55 days
12 letters and digits 71.5 bits about 5,100 years
16 lowercase letters 75.2 bits about 69,000 years
6 Diceware words 77.5 bits about 350,000 years
16 characters from an 86-character set 102.8 bits about 14 trillion years

Two lessons stand out. First, length beats complexity: 12 lowercase letters outlast 8 characters drawn from the whole keyboard, and 16 lowercase letters outlast 12 letters and digits. Adding character types raises each character's value only a little, from 4.7 bits for lowercase to 6.55 bits for all printable ASCII, while every extra character adds its full share. Second, storage matters: a slow password hash such as bcrypt or Argon2 cuts the guess rate by a factor of thousands or more, which is why how a site hashes passwords counts as much as the password itself.

Passphrases: length you can remember

A passphrase is a string of random words, such as thermal-cradling-subsidy-unrefined-marrow-reckless (an example only, so do not use it). The classic method is Diceware: roll five dice, read the result as an index into a list of 7,776 words (6^5), and repeat for each word. Every word adds log2(7,776) ≈ 12.9 bits, however long the word is.

Words Entropy
4 51.7 bits
5 64.6 bits
6 77.5 bits
7 90.5 bits
8 103.4 bits

All of the security comes from the random choice. A song lyric, a famous quote or four words you picked yourself is not a passphrase in this sense, because attackers have those lists too. Separators and capital letters add very little, so add another word instead. Passphrases suit the few secrets you must type from memory: a password manager's master password, a computer login, disk encryption.

Why password reuse and clever substitutions fail

Reuse turns one breach into many. Attackers take the email and password pairs leaked from one site and try them automatically on email, banking and shopping sites, an attack called credential stuffing. A password is only as safe as the least careful site you have used it on.

Predictable changes add almost nothing. Cracking tools take each word in their dictionaries and try the variations people favor: a capital first letter, a to @, o to 0, s to $, a year or ! on the end, a word typed twice. P@ssw0rd and Summer2026! fall to these rules quickly. Keyboard walks such as qwerty and 1qaz2wsx, names, birthdays and sports teams are in the same lists. Changing password1 to password2 when a site forces a reset is the most predictable move of all.

What NIST SP 800-63B says now

NIST Special Publication 800-63B is the US government's guidance on authentication, and it is widely followed outside government too. Its fourth revision, SP 800-63B-4, was finalized in July 2025. In plain words, it tells systems that accept passwords to:

  • Require at least 15 characters when a password is the only factor, or at least 8 when it is part of multi-factor sign-in, and allow at least 64.
  • Not impose composition rules, such as demanding a digit, a capital letter and a symbol.
  • Not force periodic password changes, but force a change when there is evidence of compromise.
  • Check new passwords against lists of common, expected and breached passwords, and explain a rejection.
  • Accept spaces and all printable characters, allow password managers and autofill, and preferably allow paste.
  • Not use password hints or security questions.
  • Store passwords salted and hashed with a suitable password hashing scheme.

The reasoning is simple. Forced complexity and rotation push people toward predictable patterns, while length and a breach check stop the guesses that actually happen.

Password managers, MFA and passkeys

Nobody can remember a unique, random 16-character password for every account, and nobody should try. A password manager generates one per site, stores them encrypted behind a single master passphrase, and fills them in only on the site they belong to, which also helps against look-alike phishing pages.

Multi-factor authentication (MFA) means a stolen password is not enough on its own. Codes from an authenticator app, or a hardware security key, are stronger than codes sent by SMS, which can be intercepted or redirected to a hijacked number. Developers testing time-based codes can generate them from a test secret with the TOTP / 2FA Generator.

Passkeys go a step further and replace the password with a key pair. The private key stays on your devices and the site stores only the public key, so there is nothing reusable to steal or phish.

Generate and check passwords with ArrayKit

The Password Generator picks every character with the browser's crypto.getRandomValues, part of the Web Crypto API, using rejection sampling so that each pick is unbiased. You choose a length from 4 to 64 (16 by default) and any mix of lowercase letters, uppercase letters, digits and 24 symbols (!@#$%^&*()-_=+[]{};:,.?/). It guarantees at least one character from each type you select, and Exclude look-alikes drops l, I, 1, O, 0 and o. The strength meter applies the entropy formula above: the default 16 characters from all four types, an 86-character pool, score about 103 bits and are rated Very strong. Under 40 bits is Weak, 40 to 59 is Fair and 60 to 79 is Strong. Passwords are created in your browser and are not uploaded.

The Password Generator makes character passwords only. For a passphrase, the Diceware Passphrase Generator draws 4 to 12 words (6 by default, about 78 bits) from the EFF's 7,776-word list, with a choice of separator, optional capitals, and an optional digit or symbol on the end, which it does not count in the entropy.

The Password Strength Checker estimates the entropy of a password you type, shows a rough offline crack time at 10 billion guesses per second, and flags very common passwords, repeated characters, sequences such as 1234 and keyboard walks such as qwerty. Its list of common passwords is short, though, so it rates a patterned password like Summer2026! as Strong. Read any meter's verdict as the best case.

Frequently asked questions

How long should a password be? At least 15 characters for an account protected by a password alone, which is NIST's current minimum, and longer is better. A random 16-character password or a passphrase of six random words is far beyond what a typical offline attack can reach. A password manager makes the extra length cost you nothing.

What is password entropy? It is the size of the search space in bits: log2 of the number of equally likely passwords the method could have produced. For random characters it equals length × log2(pool size), so 12 random letters and digits give about 71.5 bits. It describes randomly generated passwords, not ones a person made up.

Is a passphrase better than a password? For anything you must type from memory, usually yes. Six random words from a 7,776-word list give about 77.5 bits and are far easier to remember than 12 random characters of similar strength. For passwords kept in a manager, a long random string is just as good.

Should I change my passwords regularly? Not on a schedule. NIST's guidance says systems should not force periodic changes, because people respond with predictable tweaks. Change a password when there is a reason, such as a breach, a phishing scare or reuse on another site.

Do symbols and numbers make a password stronger? A little. Moving from lowercase letters to all printable ASCII raises each character from 4.7 to 6.55 bits, while each extra character adds its full share. Extra character types in predictable places, like a capital first letter and a ! at the end, add almost nothing against cracking rules.

Are password managers safe? They are much safer than reusing passwords or keeping them in a document. Protect the manager with a long, unique passphrase and turn on multi-factor authentication for it, since it holds everything else.

Keep going

पासवर्ड जेनरेटर

More guides

  • Cryptographic Hash Functions, Explained — What a cryptographic hash is, how MD5, SHA-1, SHA-256 and SHA-512 compare, how checksums verify downloads, and why fast hashes are wrong for passwords.
  • JSON Web Tokens (JWT), Explained — A complete guide to JWTs: the three-part structure, header and payload claims, signing algorithms, decoding vs verifying, and the security pitfalls to avoid.
  • Base64 Encoding, Explained — Base64 explained: how it turns binary into text, the alphabet and padding, the URL-safe variant, size overhead, use cases, and why it isn't encryption.
  • Linux File Permissions and chmod, Explained — What chmod 755, 644 and 777 mean: owner, group and others, read, write and execute, octal and symbolic modes, umask, setuid, setgid and the sticky bit.
  • DMS and Decimal Degrees, Explained — How to convert DMS to decimal degrees and back, how DD, DMS and DDM differ, how many decimal places you need, and which formats Google Maps and GPS accept.
  • Date Calculations, Explained: Counting and Adding Days — How to count the days between two dates, add days, weeks or months to a date, and why calculators disagree: inclusive counts, month ends and leap years.

All Security tools · All guides