Violet
Free tool

How strong is your passphrase, really?

Everything on this page runs in your browser. Nothing you type is sent anywhere: zero network requests carry your input. The script behind the checker contains no network code at all, which you can verify by reading it. If JavaScript is off, the tables below still show the math.

The assumptions

Three guess rates, and where they come from

  1. Fast hash on a modern GPU: 10 billion guesses/second. An assumption in the ballpark of published hashcat GPU benchmarks for fast unsalted hashes. Source: hashcat, hashcat.net/hashcat.
  2. The same GPU against PBKDF2-SHA256 at 200,000 iterations: about 50,000 guesses/second. This is not a separate measurement: it is the 10 billion figure divided by 200,000, because each guess now costs 200,000 hash iterations instead of one. Sources: RFC 8018, rfc-editor.org/rfc/rfc8018, and the OWASP Password Storage Cheat Sheet, cheatsheetseries.owasp.org.
  3. An online, rate-limited attacker: 100 guesses/second. A labeled assumption, not a measurement, for a service that throttles login attempts. Real services vary widely.

Entropy math: a passphrase of L random elements drawn from a pool of R possibilities carries E = L x log2(R) bits. Worst case, an attacker trying every possibility needs 2^E guesses; on average, half that. The table below is that formula applied at the three rates, worst case shown.

Pattern (randomly chosen)EntropyFast GPU hashPBKDF2, 200k iterationsOnline, throttled
10 random digits33 bitsunder a secondabout 2 daysabout 3 years
8 random lowercase letters38 bitsabout 30 secondsabout 64 daysabout 87 years
4 random words (EFF long wordlist)52 bitsabout 5 daysabout 2,900 yearsabout 1.4 million years
8 random printable ASCII characters53 bitsabout 10 daysabout 5,700 yearsabout 2.9 million years
5 random words (EFF long wordlist)65 bitsabout 120 yearsabout 23 million yearsabout 12 billion years
6 random words (EFF long wordlist)78 bitsabout a million yearslonger than the age of the universelonger than the age of the universe

"Longer than the age of the universe" is used only where it is mathematically true: the universe is about 13.8 billion years old, and those cells compute to 190 billion years and beyond.

Read this part

What this number cannot tell you

  • The math holds only for randomly chosen elements. A phrase you invented is not a random draw: people pick names, dates, lyrics, and keyboard walks, and cracking tools try exactly those patterns first. Character math wildly overstates human-chosen passphrases.
  • This page runs no cracking dictionaries and no breach-list lookup. It cannot, because it makes no network calls. That means a common phrase will be overestimated here. Check breach exposure yourself at Have I Been Pwned.
  • Never reuse a passphrase. Reuse converts someone else's breach into your problem, at any entropy.
  • NIST SP 800-63B, the United States federal guideline, favors length over composition rules: no forced symbols, no scheduled rotation, screening against known-breached passwords. Source: NIST SP 800-63B.
Why we built this

How Violet uses your passphrase

Violet derives an encryption key from your passphrase on your device: PBKDF2-SHA256 at 200,000 iterations with a per-account salt produces a non-extractable AES-256-GCM key that never leaves the machine. The server stores only nonce-plus-ciphertext envelopes it cannot open, and no reset flow exists, because nobody can reset a passphrase they never had. In that design your passphrase is the entire wall, which is why this page exists: so you can size the wall with real numbers.