Skip to main content

clipassgen (Console Smart Password Generator CLI) - Terminal-based smart password generator with deterministic password generation. Generate passwords from secret phrases - same secret always produces the same password, no storage required.

Project description

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.


PyPI - Downloads PyPI Downloads PyPI Weekly Downloads GitHub top language GitHub release PyPI version GitHub license PyPI format GitHub stars GitHub forks


⚠️ 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

clipassgen

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.

Cross-Platform Compatibility

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.

Ecosystem

Core Libraries:

CLI Applications:

Desktop Applications:

Other:

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

Main Interface


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clipassgen-4.0.0.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clipassgen-4.0.0-py3-none-any.whl (25.2 kB view details)

Uploaded Python 3

File details

Details for the file clipassgen-4.0.0.tar.gz.

File metadata

  • Download URL: clipassgen-4.0.0.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for clipassgen-4.0.0.tar.gz
Algorithm Hash digest
SHA256 ebc62e8e070caa0efb94fa4c2277fe3af37668a8a30e59a5a17b520ee0cf1905
MD5 5012d9796691b860a9f33ff5785676ce
BLAKE2b-256 48fa15ef3a9f8fb5df51a61c8df97de876d357f10bb0f3669e92e1a6e41bbd6b

See more details on using hashes here.

File details

Details for the file clipassgen-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: clipassgen-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 25.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for clipassgen-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ae065b525a9fce66b78dca557293c7dd48169e3ab7ccf08c522f4a424b6d4db6
MD5 2344c72284a5b2260e663c4596bf4c2e
BLAKE2b-256 ef6a60c6b4b243aa1c80fe5a3a443500947dcc50789167ce1926529a84b2c1ea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page