kpass is a Python toolkit for generating, ciphering and evaluating passwords with JSON, CSV and YAML export.
Project description
🔐 kpass — Smart Password Generator & Evaluator
kpass is a Python toolkit for generating, ciphering and evaluating passwords—designed for educational, testing and automation scenarios.
✨ Features
-
Generate hundreds or thousands of password combinations from:
- Full name
- Age
- Birth date
-
Leet‑speak substitutions like
A → 4,E → 3,S → $ -
Strength evaluation based on:
- Length
- Digits
- Special characters
- Mixed case
- Numeric sequence patterns
-
Export automatically to
.json,.csvor.yamlwith a progress bar powered by rich
⚠️ Security Disclaimer
This project does not produce secure passwords for production systems. It uses predictable inputs (names, dates) and should not be used for real authentication.
🎯 Use Cases
-
🧠 Cybersecurity Awareness Learn why personal info makes weak passwords.
-
🧰 Pentesting & Wordlist Creation Build custom dictionaries for ethical hacking.
-
🧪 Automation & Testing Generate dummy passwords for scripts, bots or sandbox environments.
📦 Installation
pip install kpass-gen
Requires Python 3.6+
🚀 Quick Start
1. Generate Passwords
from kpass import generator
# Example: Johnny Silverhand (born 08/07/2000, age 50 in 2077)
generator(
name="Johnny Silverhand",
age="50",
birth_date="08/07/2000",
file_type="json", # optional: json, csv, yaml or yml
file_name="jsilverhand" # optional: filename without extension
)
2. Apply Leet Cipher
from kpass import apply_ciphers
# Example: Panam Palmer
leet = apply_ciphers("Panam Palmer")
print(leet) # → "|D4|\\|4/\\/\\ |D41/\\/\\312"
3. Save Custom Password Lists
from kpass import save_to_file
# Example passwords inspired by Cyberpunk characters
passwords = ["Chipp4020!", "AltAccount2077$", "RoughTrade37#"]
scores = [3, 5, 4]
verdicts = ["#mean", "#strong", "#good"]
save_to_file(
passwords,
scores,
verdicts,
file_name="cyberpunk_list",
file_type="csv" # outputs cyberpunk_list.csv
)
4. Check Password Strength
from kpass import verify
# returns "#very_strong"
print(verify("R0gueDr1ft!99"))
# returns 6
print(verify("R0gueDr1ft!99", want_verdict=False))
🔧 API Reference
| Function | Description |
|---|---|
generator(name, age, birth_date, file_type, file_name) |
Generates permutations, evaluates strength, and saves to a file |
apply_ciphers(text) |
Applies leet‑speak substitutions |
save_to_file(passwords, scores, verdicts, file_name, file_type) |
Exports password list + scores + verdicts with a progress bar |
verify(password, want_verdict=True) |
Evaluates strength; returns an int score or str verdict (#good, etc.) |
check_sequences(password) |
Detects ascending/descending numeric sequences |
veredict(score) |
Maps numeric score to verdict string (#weak, #strong, etc.) |
✅ Requirements
- Python 3.6 or higher
- rich for progress bars
📄 License
MIT License — free to use, modify and share.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kpass_gen-0.2.5.tar.gz.
File metadata
- Download URL: kpass_gen-0.2.5.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f27c6a63fcc857e34262a7a00e89ca5a9e7c669c2c5a4a2152df89eb37e7bf5
|
|
| MD5 |
8d5a7b052bf2a0f5616df65f929e3157
|
|
| BLAKE2b-256 |
761683d2719af5f315102f7ef0e890859b7e976a77a96d4b5fa45a21f65c69c9
|
File details
Details for the file kpass_gen-0.2.5-py3-none-any.whl.
File metadata
- Download URL: kpass_gen-0.2.5-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2c68e50c9913f17646d4021d38cd79bde9afb34d1f09789b429487abc529a3d
|
|
| MD5 |
ca168934ac68ceb466fc5174b6325987
|
|
| BLAKE2b-256 |
456af33fcc1a1cfb80115e2e3b2eb0a61e9057391e837f1635bcd93d2bc658ba
|