Terminal-based smart password generator with deterministic password generation. Generate passwords from secret phrases - same secret always produces the same password, no storage required.
Decentralized by Design: Unlike traditional password managers that store encrypted vaults on central servers, Smart Password Generator stores nothing. Your secrets never leave your device. Passwords are regenerated on-demand β no cloud, no database, no trust required.
By using this software, you agree to the full disclaimer terms.
Summary: Software provided "AS IS" without warranty. You assume all risks.
Full legal disclaimer: See DISCLAIMER.md
β οΈ This release uses smartpasslib v4.0.0, which is NOT backward compatible with v2.x.x or v3.x.x
Smart passwords created with v2.x.x or v3.x.x will be different when generated with v4.0.0.
What changed:
- Dynamic iterations: private key 15-30 steps (was fixed 30), public key 45-60 steps (was fixed 60)
- Expanded Google-compatible character set (26 special chars + A-Z + a-z + 0-9)
- Code length extended: now 4-100 characters (was 4-20)
- Secret phrases now require minimum 12 characters
- Key derivation with salt separation ("private"/"public")
- No secret exposure in iteration logs
π Full migration instructions β see MIGRATION.md
- Zero-Storage Security: No passwords or secret phrases are ever stored or transmitted
- Decentralized Architecture: No central servers, no cloud dependency, no third-party trust required
- Deterministic Generation: Same secret + same length = same password, every time
- Memory-Based Security: Your brain is the only password database
- Terminal-First: Optimized for CLI workflows and scripting
- Multi-Mode Generation: Smart passwords, strong random, base passwords, auth codes, public keys, verification
What You Can Do:
- Generate Smart Passwords: Deterministic passwords from secret phrases
- Create Public Keys: Verification keys for secret proof without exposure
- Verify Secrets: Check if a secret matches a stored public key
- Generate Random Passwords: Cryptographically secure random generation
- Create Authentication Codes: Secure codes with character diversity
- Interactive Terminal Mode: Menu-driven interface for easy use
- Command Line Mode: Scriptable generation for automation
- Cross-Platform Operation: Works on any system with Python
- No Dependencies: Pure Python with smartpasslib core
- Decentralized & Serverless: No central database, no cloud lock-in, complete user sovereignty
- Deterministic Security: Identical input β identical output, always
- Six Generation Modes: Smart, Strong, Base, Code, Public Key, Verify
- Public Key Verification: Generate and verify keys to prove secret knowledge
- Interactive & CLI Modes: Both menu-driven and command-line interfaces
- Hidden Input: Secret phrase entry via getpass (hidden typing)
- SmartPrinter Output: Beautiful centered and framed terminal text
- Length Flexibility: 12-100 characters for passwords, 4-100 for codes
- No Internet Required: All cryptographic operations local
- Proof of Knowledge: Public keys verify secrets without exposing them
- Decentralized Trust: No third party needed β you control your secrets completely
- Deterministic Certainty: Mathematical certainty in password regeneration
- Ephemeral Passwords: Passwords exist only in memory during generation
- Local Computation: No data leaves your terminal
- No Recovery Backdoors: Lost secret = permanently lost passwords (by design)
- Pointer-Based Security Paradigm - Architectural Shift from Data Protection to Data Non-Existence
- Local Data Regeneration Paradigm - Ontological Shift from Data Transmission to Synchronous State Discovery
Powered by smartpasslib v4.0.0+ β The core library for deterministic password generation.
Key derivation (same as Python/JS/Kotlin/Go/C# versions v4.0.0):
| Key Type | Iterations | Purpose |
|---|---|---|
| Private Key | 15-30 (dynamic) | Password generation (never stored, never transmitted) |
| Public Key | 45-60 (dynamic) | Verification (stored locally) |
Character Set (Google-compatible):
!@#$%^&*()_+-=[]{};:,.<>?/ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz
Validation Rules:
- Secret phrase: minimum 12 characters
- Password length: 12-100 characters
- Code length: 4-100 characters
Decentralized Architecture:
- No central authority required
- Metadata can be synced via any channel
- Your security depends only on your secret phrase
- Works offline β no internet connection required
Generation Modes:
- Smart Password: Deterministic from secret phrase (BREAKING CHANGE in v4.0.0)
- Strong Password: Cryptographically secure random generation (unchanged)
- Base Password: Simple random password generation (unchanged)
- Authentication Code: Secure code generation for 2FA/MFA (max length extended to 100)
- Public Key: Generate verification key from secret phrase (NEW)
- Verify: Check secret against stored public key (NEW)
git clone https://github.com/smartlegionlab/clipassgen
cd clipassgen
python app.pyor
pip install clipassgen==4.0.0clipassgen# Smart password (deterministic, CROSS-PLATFORM!)
clipassgen --smart -s "MyStrongSecretPhrase2026!" -l 16
# Strong random password
clipassgen --strong -l 20
# Base random password
clipassgen --base -l 16
# Authentication code (2FA) - now up to 100 chars
clipassgen --code -l 8
# Generate public key from secret
clipassgen --public -s "MyStrongSecretPhrase2026!"
# Verify secret against public key
clipassgen --verify -s "MyStrongSecretPhrase2026!" -k "public_key_here"- Minimum 12 characters (enforced by library)
- Case-sensitive
- Use mix of: uppercase, lowercase, numbers, symbols
- Never store digitally
- NEVER use your password description as secret phrase
β
"MyStrongSecretPhrase2026!" β mixed case + numbers + symbols
β
"P@ssw0rd!LongSecret" β special chars + numbers + length
β
"ΠΠΎΡΠΠ΅Π³Π΅ΠΌΠΎΡ2026ΠΠ°ΠΠΈΠ΅ΡΠ΅" β Cyrillic + numbers
β "short" β too short, rejected by library
β "password" β dictionary word, too short
β "1234567890" β only digits, too short
β "qwerty123" β keyboard pattern
- Smart/Strong/Base passwords: 12-100 characters
- Authentication codes: 4-100 characters (was 4-20)
There is no "forgot password" button. This is by design:
- No central server can reset your passwords
- No support team can recover your access
- Your secret phrase is the ONLY key
This is the price of true decentralization β you are completely in control.
CliPassGen produces identical passwords to:
| Platform | Application |
|---|---|
| Python CLI Manager | CLI PassMan |
| Desktop Python | Desktop Manager |
| Desktop C# | Desktop C# Manager |
| CLI C# Manager | CLI Manager (C#) |
| CLI C# Generator | CLI Generator (C#) |
| Web | Web Manager |
| Android | Android Manager |
| Core Libraries | smartpasslib, smartpasslib-csharp, etc. |
Core Libraries:
- smartpasslib - Python
- smartpasslib-js - JavaScript
- smartpasslib-kotlin - Kotlin
- smartpasslib-go - Go
- smartpasslib-csharp - C#
CLI Applications:
- CLI Smart Password Manager (Python)
- CLI Smart Password Generator (Python) (this)
- CLI Smart Password Manager (C#)
- CLI Smart Password Generator (C#)
Desktop Applications:
Other:
| Version | smartpasslib | Status | Migration Required |
|---|---|---|---|
| v2.x.x and below | v2.x.x | β Deprecated/Unsupported | Must migrate to v4.x.x |
| v3.x.x | v3.x.x | β Deprecated/Unsupported | Must migrate to v4.x.x |
| v4.0.0+ | v4.0.0+ | β Current | N/A |
Copyright (Β©) 2026, Alexander Suvorov
- Generator Issues: GitHub Issues
- Core Library Issues: smartpasslib Issues
- Documentation: Interactive help and this README
Note: Always test password generation with non-essential accounts first. Implementation security depends on proper usage.
