Aadarsh

Not Another Password Generator - Generate passwords from real-world chaos, not Math.random()

by•
Most generators fake randomness with Math.random(). NAPG fuses 13 real-world signals - mouse movement, network latency, hardware fingerprints, crypto bytes & more into a SHA-256 hash. 100% client side. No data leaves your browser.

Add a comment

Replies

Best
Aadarsh
Maker
šŸ“Œ
Hey Product Hunt! šŸ‘‹ I'm Aadarsh, and I built Not Another Password Generator — yes, I know, another password generator. But hear me out. Most password generator I've ever used calls Math.random() under the hood. That's not cryptographic randomness - it's a deterministic function seeded by a timestamp. You're putting trust in something that's fundamentally predictable. So I got a little obsessed. What if a password generator actually used real-world unpredictability as its source of truth? NAPG fuses 13 live entropy signals on every single click: - Your mouse movement (position, velocity, timing) - Network round-trip latency (measured live via fetch) - Hardware fingerprints (CPU cores, device memory, screen resolution) - High-resolution timing jitter from performance.now() - 128 bytes from crypto.getRandomValues() ...and more All of it gets serialized and run through SHA-256 via the Web Crypto API, then used as a CSPRNG seed for character selection and a Fisher-Yates shuffle. Math.random() is never called, not even once. A few things I'm proud of: šŸ”„ Burn After Reading - copy the password and a 30-second countdown begins before it auto-wipes šŸ‘ Visibility toggle - passwords are masked by default šŸ“Š Crack time estimator - tells you how long it'd take a GPU cluster to brute-force your password šŸŽØ Color-zoned slider - WEAK → STRONG → FORTRESS zones on the length selector šŸŒ— Light + dark mode - because of course It's 100% client-side. No backend. No storage. No data ever leaves your browser. I built it with Claude in a weekend because I was annoyed, and then I couldn't stop adding features. Would love your honest feedback — what would make this genuinely useful for you? What's missing? What's overkill? Try it here → https://not-another-password-gen... — Aadarsh (@dotAadarsh - X)