A modern, high-security desktop password generator built in Python with CustomTkinter and Python's cryptographically secure pseudo-random number generator (secrets module).
- 🔐 Cryptographically Secure (CSPRNG):
- Uses Python's native
secretsmodule instead of insecure pseudo-random generators (random). - Guaranteed inclusion of all selected character classes.
- Uses Python's native
- 📊 Real-Time Password Strength & Entropy Meter:
- Live Shannon Entropy calculation in bits ($E = L \times \log_2(R)$).
- Multi-tier strength rating: Very Weak, Weak, Moderate, Strong, Very Strong.
- Estimated brute-force crack time calculation against high-end GPU clusters (10B guesses/sec).
- Interactive composition checklist pills (
12+ Chars,Uppercase,Lowercase,Numbers,Symbols). - Live Password Tester: Type or paste any existing password to analyze its strength in real time.
- 🔀 4 Versatile Generation Modes:
-
Custom Alphanumeric Password: Configurable length slider (6–64 chars), quick presets (12, 16, 24, 32), uppercase, lowercase, numbers, symbols, ambiguous character exclusion (
l, 1, I, O, 0, o), and custom exclude characters. -
Memorable Passphrase (Diceware style): Generates human-friendly, high-entropy phrases (e.g.,
Master-Coral-Prefer-Sail-37) with customizable word count, separators (-,_,., space,/), word capitalization, and optional numeric suffix. - Numeric PIN Code: 4 to 12 digit PINs with one-click presets for ATM, mobile screen locks, and hardware tokens.
- Batch Password Generator: Generate 5, 10, 20, or 50 passwords in bulk with one-click Copy All and Export to File (.txt / .csv).
-
Custom Alphanumeric Password: Configurable length slider (6–64 chars), quick presets (12, 16, 24, 32), uppercase, lowercase, numbers, symbols, ambiguous character exclusion (
- 👁️ Mask / Unmask Toggle: Instantly show or conceal password with
••••••. - 📋 One-Click Clipboard: Instant copy button with animated toast notification.
- 🕒 Session History Drawer: Keeps track of recent passwords generated during the session with quick copy buttons and timestamp tags (stored only in local RAM, never written to disk or network).
- 🌓 Theme Switcher: Seamlessly toggle between Dark, Light, and System themes.
- Python 3.8+ (Tested on Python 3.12)
- CustomTkinter
pip install -r requirements.txtpython main.pyPassword Generator/
│
├── main.py # CustomTkinter GUI application & event handlers
├── generator.py # CSPRNG generator engine, entropy math & crack time estimator
├── wordlist.py # Curated list of 1,200+ distinct English words for Diceware passphrases
├── requirements.txt # Project dependencies
└── README.md # Documentation & usage guide
- Zero Network Activity: Operates completely offline with zero telemetry or remote calls.
- Session Privacy: Passwords displayed in session history reside solely in volatile process memory and vanish upon closing the app.