Security
Random Number Generator
Generated locally via crypto.getRandomValues().
Input
Set the minimum, maximum, and quantity before generating random numbers.
Uses cryptographic randomness and runs entirely in your browser. Quantity is limited to 1,000 per run.
Result
Generate random numbers to see the results.
Frequently Asked Questions
How is the random number generated?
This tool uses crypto.getRandomValues, the Web Crypto API's CSPRNG (Cryptographically Secure Pseudo-Random Number Generator). It is seeded from hardware entropy sources (OS entropy pool) and is suitable for cryptographic applications — unlike Math.random(), which is not CSPRNG.
What is the difference between Math.random() and crypto.getRandomValues?
Math.random() is a fast pseudo-random generator with no security guarantees — predictable if the seed or state is known. crypto.getRandomValues draws from a CSPRNG seeded with hardware entropy, making output cryptographically unpredictable. Always use the latter for security-sensitive values.
What is modulo bias and does this tool have it?
Modulo bias occurs when a random range doesn't evenly divide the random source range, making some values slightly more likely. This tool uses rejection sampling to eliminate modulo bias, ensuring perfectly uniform distribution across any integer range you specify.