Local Password Generator

With these settings, we'll generate 50 passwords with 0 bits of entropy which, if hashed with NTLM and brute forced with an RTX 5090, would take 0 sec on average to guess.






COPIED TO CLIPBOARD

About this tool

I use the JavaScript function crypto.getRandomValues to generate secure pseudorandom unsigned 32-bit integers in the range of [0, 4294967295]. One Uint32 is used to pick each character of each password. On modern hardware, this is so blazingly fast that when you hold the button, the passwords update at the refresh rate of your display.

These passwords are generated entirely in your browser. You will note that this page contains no mechanism to send these passwords to any server. Generating 50 at once should act as a weak hedge against the possibility that the pseudorandom function on your system is compromised, because you can select both the time to generate passwords and the specific one you use at random. You can also opt to scramble the ordering of the alphabet used based on an array of numbers derived from the timestamps and values of your mouse and keyboard input. The main security advantage of this site for you is that if you view the page source, it should be short enough to parse and verify it does what it claims.

Password entropy is determined with the formula log₂(AL) where A is the alphabet and L is the length.

The time to crack is estimated by 2entropy ÷ hashRate ÷ 2. (We divide by 2 because, on average, the password will be found halfway through the search.)

For the hash rate, I've selected a ~$2000 GPU (RTX 5090) and a weak but common hash (NTLM) which is used by Windows to store local and network passwords. Ideally, your application should use a much better hash function which will take orders of magnitude longer to brute force.

License & Warranty Disclaimer

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

updated