Password Generator

Generate passwords or memorable passphrases with your browser’s cryptographic generator. Nothing is transmitted.

Processed on your device — no upload

termiva pass --length 20
20 characters

Generated with crypto.getRandomValues, the browser's cryptographic random source, using rejection sampling so no character is more likely than another. Nothing is transmitted — a password sent to a server to be generated is a password someone else has seen.

entropy strength source crypto.getRandomValuesnothing uploaded

How to use it

  1. Choose random characters or a word-based passphrase.
  2. Adjust the length — it matters more than anything else.
  3. Copy it straight into your password manager.

How it works

Every character comes from crypto.getRandomValues, the browser's cryptographic random source. That is a different thing from Math.random, which is fast, predictable from its output, and unsuitable for anything that needs to be unguessable.

The selection uses rejection sampling. The obvious approach — take a random byte and take it modulo the alphabet size — is biased, because 256 does not divide evenly by 62. The first characters of the alphabet come up measurably more often, which narrows the search space for an attacker who knows how you generated it. Values that would fall in the uneven remainder are discarded and redrawn instead.

One character is taken from each selected category before the rest is filled at random, so the result always satisfies the “must contain a digit and a symbol” rules that sites impose, and the whole string is then shuffled so the categories are not in a predictable order.

Nothing is sent anywhere. A password generated on someone else's server is a password they have seen — and there is no way to verify what they did with it.

A worked example

You are creating an account and the site demands at least twelve characters with a digit and a symbol.

Leave the mode on random characters, set the length to 20, and copy the result. The status line reads about 128 bits of entropy and a crack time longer than the universe has existed. That is not marketing — at twenty characters from a 90-character alphabet, brute force stops being a strategy.

Now the case for passphrases. Switch modes and generate four words: something like Harbor-Lantern-Cobalt-Meadow. That is around 45 bits — less than the twenty-character password, and still far beyond what any online attack reaches.

The advantage is human. You can read it down a phone line, type it on a television remote, and remember it long enough to get it into a password manager. A twenty-character random string fails all three. Use passphrases for the handful of passwords you must actually type — your device login, your password manager itself — and random strings for everything the manager remembers for you.

The look-alike setting exists for passwords you will read off a screen: it removes l, I, 1, O and 0. It costs a little entropy and saves a support call.

To see how a password you already use compares, the strength checker estimates it without sending it anywhere either.

Questions

What makes a password secure?

Length, far more than symbols. A sixteen-character lowercase phrase beats an eight-character password using every symbol on the keyboard, by a factor of millions.

Is the passphrase mode diceware?

The same idea: words picked at random from a fixed list, so the strength can be calculated rather than guessed at. The list here is short, common and unambiguous when spoken aloud.

Is the generated password sent anywhere?

No. It is generated in your browser and never transmitted. This site has no backend, which you can confirm in the Network tab or by going offline.

How long should a password be?

Sixteen characters or more for anything stored in a password manager. Length contributes more than complexity — a longer password from a smaller alphabet beats a short one from a large alphabet.

Are passphrases as strong as random passwords?

Per character, no. In practice they are strong enough and vastly easier to type and remember. Four words is comparable to a random eight-character password; five or six words exceeds most requirements.

What is entropy in bits?

A measure of how many guesses an attacker needs. Each extra bit doubles it. Below 40 bits is weak, 60 is reasonable, 80 or more is beyond any realistic offline attack.

Why exclude look-alike characters?

Because l, I, 1, O and 0 are indistinguishable in many fonts. It costs a fraction of a bit and prevents transcription errors when a password has to be read aloud or typed from a screen.

Is Math.random good enough?

No. Its output is predictable from previous values, so a password generated with it can be reproduced. This tool uses the cryptographic generator instead.

Should I reuse a strong password?

No. Reuse is the failure that matters most: one breached site exposes every account sharing that password, however strong it was. Use a manager and a different one everywhere.

Does it work offline?

Yes. Once the page has loaded there is nothing left to fetch, which is also the simplest proof that nothing is being sent.