DMCIT SERVICES
HomeServicesBlogContactLogin
DMCIT SERVICES

Expert consulting in Data, Mobile, and Cloud solutions to drive your digital transformation.

// Quick Links
  • Home
  • Services
  • Blog
  • Contact
  • Free Tools
// Services
  • Data Destruction
  • Mobile Device Management
  • Cloud Infrastructure
  • Digital Transformation
// Contact
[email protected]
07472 952393
Data Mobile Cloud
Unit A, 82 James Carter Road,
Mildenhall,
IP28 7DE

© 2026 Data Mobile Cloud. All rights reserved.

// FREE IT TOOLS

Password Generator

Generate strong random passwords with crypto-grade randomness. Choose your length and character sets — nothing leaves your browser.

  1. Home
  2. /
  3. Free IT Tools
  4. /
  5. Password Generator
// GENERATOR OPTIONS
Character types
Generated in your browser using crypto.getRandomValues

Set your options above, then choose Generate New to create a password

Why Length Beats Complexity

Every password has a search space: the number of guesses an attacker must make to exhaust it. That space is poollength, which is why length is such a powerful lever. Adding one character to a password multiplies the work by the size of the whole character pool.

A mixed-case, digit and symbol password has a pool of 94 characters, so each character adds about 6.6 bits of entropy. A 12-character password from that pool is roughly 79 bits. A 20-character password from the same pool is about 131 bits — more than 50 billion times harder to brute-force.

The practical consequence: if you are choosing between a shorter password with every character class and a longer one without, take the longer one. Then check the result with the Password Strength Checker to see the entropy and crack-time estimate for any password you are considering.

How This Generator Picks Characters

Randomness is the whole game in password generation, and it is easy to get subtly wrong. This generator uses crypto.getRandomValues(), which draws from the operating system's cryptographically secure random number generator — the same source used for TLS keys and session tokens.

It then applies rejection sampling. The obvious shortcut is to take a random byte and compute byte % 94, but because 256 is not a multiple of 94, that makes the first 68 characters of the pool slightly more likely than the rest. Rejection sampling discards the values in that incomplete final block and re-rolls instead, so every character in the pool is equally likely.

Math.random() is never used. It is fast, but its output is predictable from a small number of previous values, which makes passwords generated from it guessable regardless of how long they are.

Character Sets and Pool Size

Each character class contributes a fixed number of characters to the pool. The entropy figure above is calculated from whichever classes you enable, so you can see exactly what each choice buys you.

  • Lowercase:26 characters (a-z) — adds 4.70 bits per character
  • Uppercase:26 characters (A-Z) — adds 4.70 bits per character
  • Digits:10 characters (0-9) — adds 3.32 bits per character
  • Symbols:32 punctuation characters — adds 5.00 bits per character

Enabling all four gives a pool of 94 characters and a total of about 6.55 bits per character. Symbols are the single most valuable addition, but they are also the class most likely to be rejected by a legacy system — in which case turn them off and add length instead.

Frequently Asked Questions

Is this password generator actually random?
Yes. It uses the browser's crypto.getRandomValues() API, which draws from the operating system's cryptographically secure random number generator. It does not use Math.random(), which is predictable and unsuitable for passwords.
Is my generated password sent to a server?
No. The generator runs entirely in your browser using JavaScript. No password is transmitted over the network, logged, or stored anywhere. If you reload the page, the password is gone for good.
How long should a password be?
Sixteen characters is a good default for important accounts. Every extra character multiplies the search space, so length is a more effective lever than complexity — a 16-character lowercase-only password (about 75 bits) beats an 8-character mixed password (about 53 bits).
What does "exclude ambiguous characters" do?
It removes l, I, 1, O, 0 and o from the character sets. These characters are easy to confuse when a password is read aloud, written down, or typed from a printout. Excluding them slightly reduces the search space, which is reflected in the entropy figure shown.
Should I use symbols in my password?
Symbols add 32 characters to the pool and raise entropy per character, but some legacy systems reject them or mangle them in transit. If a system accepts symbols, use them. If it does not, increase the length instead — the entropy figure tells you exactly what you gained or lost.
// CYBER SECURITY

Still enforcing 8-character passwords?

DMC IT Services provides cybersecurity assessments, Microsoft 365 hardening, MFA deployment, and security policy design for SMBs across London, Cambridge, Hertfordshire, and Bedfordshire.

Talk to an Engineer
← Back to all free tools