CliPassGen (Console Smart Password Generator) v4.0.0
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.










β οΈ Disclaimer
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
π Breaking Change (v4.0.0)
β οΈ 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
Core Principles
- 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:
1. Generate Smart Passwords: Deterministic passwords from secret phrases
2. Create Public Keys: Verification keys for secret proof without exposure
3. Verify Secrets: Check if a secret matches a stored public key
4. Generate Random Passwords: Cryptographically secure random generation
5. Create Authentication Codes: Secure codes with character diversity
6. Interactive Terminal Mode: Menu-driven interface for easy use
7. Command Line Mode: Scriptable generation for automation
8. Cross-Platform Operation: Works on any system with Python
9. No Dependencies: Pure Python with smartpasslib core
Key Features
- 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
Security Model
- 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)
Research Paradigms & Publications
Technical Foundation
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)
Installation
git clone https://github.com/smartlegionlab/clipassgen
cd clipassgen
python app.py
or
pip install clipassgen==4.0.0
Quick Usage
Interactive Mode
Command-Line Mode
# 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"
Security Requirements
Secret Phrase
- 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
Strong Secret Examples
β
"MyStrongSecretPhrase2026!" β mixed case + numbers + symbols
β
"P@ssw0rd!LongSecret" β special chars + numbers + length
β
"ΠΠΎΡΠΠ΅Π³Π΅ΠΌΠΎΡ2026ΠΠ°ΠΠΈΠ΅ΡΠ΅" β Cyrillic + numbers
Weak Secret Examples (avoid)
β "short" β too short, rejected by library
β "password" β dictionary word, too short
β "1234567890" β only digits, too short
β "qwerty123" β keyboard pattern
Password Length Requirements
- Smart/Strong/Base passwords: 12-100 characters
- Authentication codes: 4-100 characters (was 4-20)
Decentralized Nature
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:
Ecosystem
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:
- Desktop Smart Password Manager (Python)
- Desktop Smart Password Manager (C#)
Other:
- Web Smart Password Manager
- Android Smart Password Manager
Version History
| 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 |
License
BSD 3-Clause License
Copyright (Β©) 2026, Alexander Suvorov
Support
Note: Always test password generation with non-essential accounts first. Implementation security depends on proper usage.
Main Interface
