PassChecker

How Password Strength Is Actually Estimated

A technical look at how heuristic algorithms evaluate passwords and the crucial difference between mathematical entropy and real-world security.

The Science of Heuristics

Because determining the exact real-world security of a password—calculating the precise time it would take a hacker to crack it—is practically impossible without knowing the exact hardware the attacker possesses, strength checkers rely on heuristics. Heuristics are practical rules of thumb and algorithmic approximations that evaluate the structural integrity of a password.

When you type a string into a local password checker, a JavaScript function immediately runs a gauntlet of tests to generate a strength estimate.

Positive Factors: Building the Base Score

The algorithm begins by calculating a positive base score. It does this by assessing the two fundamental pillars of cryptographic entropy:

  1. Length: Because length provides an exponential defense against brute-force guessing, the algorithm heavily weights the character count. A password crossing the 12-character threshold typically receives a massive boost in its base score.
  2. Character Diversity: The algorithm checks boolean flags for the presence of lowercase letters, uppercase letters, integers, and special symbols. Each confirmed category adds a set amount of points, reflecting the increased size of the mathematical character pool.

Negative Penalties: The Vulnerability Scan

If a checker only looked at positive factors, a password like aaaaaaaaaaaaaaaa would receive a high score due to its length. To prevent this, smart checkers execute aggressive negative penalty routines. The algorithm uses Regular Expressions (Regex) to actively search the input for human predictability:

  • Repetition Penalties: Detects if the same character is repeated consecutively (e.g., 11111).
  • Sequential Penalties: Scans for alphabetical or numerical sequences (e.g., abcdef or 7890).
  • Spatial Patterns: Checks against known keyboard layouts to penalize adjacent key walks (e.g., asdfghjkl).
  • Dictionary Matching: Compares the input against a small, locally-stored array of the most frequently abused passwords (e.g., password, admin, welcome).

If these vulnerabilities are detected, the algorithm subtracts significant points from the base score, effectively downgrading the strength estimate to reflect the reality that attackers will guess these patterns instantly.

Mathematical Entropy vs. Real-World Context

Ultimately, a scoring algorithm provides a structural estimation. It is important to understand the difference between mathematical entropy and real-world context.

A password might score a perfect 100/100 on a heuristic checker because it is structurally complex and lacks recognizable patterns. However, if you write that perfect password on a sticky note and attach it to your monitor, its real-world security drops to zero. Similarly, if you reuse that perfect password on a website that gets hacked, the structure is irrelevant; the password is compromised.

Strength estimators are invaluable educational tools to help you design better master passwords, but they must be paired with comprehensive security hygiene: strict password uniqueness, the use of password managers, and the implementation of Multi-Factor Authentication (MFA).

Test Your Password Security

Apply what you've learned. Use our privacy-focused, client-side tool to evaluate your password strength instantly.

Launch Password Checker