Skip to main content

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 logo

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, .csv or .yaml with 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


Download files

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

Source Distribution

kpass_gen-0.2.5.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

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

kpass_gen-0.2.5-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

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

Hashes for kpass_gen-0.2.5.tar.gz
Algorithm Hash digest
SHA256 2f27c6a63fcc857e34262a7a00e89ca5a9e7c669c2c5a4a2152df89eb37e7bf5
MD5 8d5a7b052bf2a0f5616df65f929e3157
BLAKE2b-256 761683d2719af5f315102f7ef0e890859b7e976a77a96d4b5fa45a21f65c69c9

See more details on using hashes here.

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

Hashes for kpass_gen-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e2c68e50c9913f17646d4021d38cd79bde9afb34d1f09789b429487abc529a3d
MD5 ca168934ac68ceb466fc5174b6325987
BLAKE2b-256 456af33fcc1a1cfb80115e2e3b2eb0a61e9057391e837f1635bcd93d2bc658ba

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