Password strength checker (entropy meter)

Estimate password entropy in bits and approximate offline brute-force cost.

{{ passwordEntropyMeter.message }}

Overview

The concept of information entropy was defined by Claude Shannon in 1948 in A Mathematical Theory of Communication — one of the most influential texts in the history of computing. Shannon wanted to measure the unpredictability of an information source in bits. Applied to passwords, the formula is straightforward: entropy equals length multiplied by the log2 of the charset size. A charset of only lowercase letters has 26 options, giving log2(26) ≈ 4.7 bits per character. Add uppercase: 52 options, ≈5.7 bits. Add digits: 62, ≈6.0 bits. Add printable ASCII symbols, 95 in total: ≈6.6 bits per character. A random 16-character password using the full charset has around 105 bits of entropy, making any brute-force attack impossible with current technology.

The problem with simple entropy calculators is that they assume genuine randomness, something human-chosen passwords rarely have. Human passwords follow predictable patterns: dictionary words with letter-to-number substitutions, name-plus-birth-year combinations, keyboard patterns. The zxcvbn library, created by Dan Wheeler at Dropbox in 2012, took a different approach: instead of calculating theoretical entropy, it estimates how many guesses a targeted attack would need — checking dictionaries, standard keyboard layouts such as qwerty and dvorak, proper names, and date patterns. A sequence of four randomly chosen common words, like the password from the famous xkcd comic, has more real entropy than most symbol-heavy passwords because random words are systematically much harder to guess.

In an offline attack, when the attacker has the hash file, entropy truly matters. An RTX 4090 GPU tests 200 billion MD5 hashes per second. With bcrypt at cost factor 12, a common production setting, the same GPU tests only about 100 hashes per second — because bcrypt was deliberately designed to be slow. With 80 bits of entropy and bcrypt, the attack would take an astronomically long time even with top hardware. But against fast unsalted hashes, 80 bits is not enough. The distinction between an online attack, limited by the server's rate limiting, and an offline attack, limited only by hardware, is crucial: for the former, a 6-digit PIN with account lockout is sufficient; for the latter, real entropy and a slow hash function are non-negotiable. This tool calculates based on the detected charset — use it as an initial reference, not an absolute guarantee.

Technical deep dive

Common questions summarized

  • What is this tool for?: It runs fully in your browser: useful to validate, format, or convert data in everyday development.
  • Are my inputs sent to a server?: Processing happens locally with JavaScript. We do not store what you paste into the text areas.
  • Can I use this for real production data?: Use at your own risk. For secrets (passwords, tokens), prefer controlled environments and your company policies. And always review the generated contents. Never trust blindly things you see on the internet.

Sample payload to try

  • See also the larger "Code Snippets" sample; paste this excerpt to try locally: Example — Tr0ub4dor&3

Tool guide

  • What password entropy is An approximate bit-based uncertainty measure. Higher entropy usually means higher offline brute-force cost.

  • What the tool manipulates Password text plus character class analysis (lowercase, uppercase, digits, symbols).

  • What the tool does Computes entropy bits, assigns a strength label, and estimates brute-force effort.

  • Why use it Define password policies, guide users, and validate minimum security requirements.

Code Snippets

Code example
Tr0ub4dor&3

Example

Tr0ub4dor&3

FAQ

What is this tool for?

It runs fully in your browser: useful to validate, format, or convert data in everyday development.

Are my inputs sent to a server?

Processing happens locally with JavaScript. We do not store what you paste into the text areas.

Can I use this for real production data?

Use at your own risk. For secrets (passwords, tokens), prefer controlled environments and your company policies. And always review the generated contents. Never trust blindly things you see on the internet.