Generate memorable passwords from personal cues
Project description
Secret Sauce 🌶️🔐
"Your passwords just got saucier!"
A context-aware, pronounceable password generator that blends personal memories with cryptographic security.
🚀 Features
🧠 Mnemonic-Based Security
- Generates passwords from personal cues (not stored anywhere)
- 3 security tiers (social/media → banking) with tailored questions
- Pronounceable combinations (e.g.,
T3sl@2024!instead ofgH7#kLm2)
🔥 Secret Sauce Algorithm
Base: "Hiking" + "7" + "CA"
│ │ └─ Location abbreviation
│ └─ Lucky digit
└─ Hobby
Process:
- Capitalize("hik") → "Hik"
- Leet-speak vowels → "H1k"
- Add separator → "H1k_"
- Append salted hash → "H1k_7CA!9" 💻 Multiple Interfaces python
Library mode
from secret_sauce import generate_password print(generate_password({"hobby": "biking", "digit": "3"})) # "B1k!ng_7CA"
CLI mode
$ python -m secret_sauce 🧂 What's this password for? (social/banking/general): 📦 Installation bash pip install secret-sauce Requirements: Python 3.8+
👩🍳 Basic Usage
- Quick Password from secret_sauce import generate_password
answers = {"figure": "Tesla", "number": "42"} print(generate_password(answers)) # "T3sl@42$" 2. Generate Multiple python from secret_sauce import generate_multiple
passwords = generate_multiple({"nickname": "Ace", "year": "1984"})
["Ac3!984J", "Ace_1984$", ...]
- CLI Interactive Mode bash $ python -m secret_sauce (Follow the prompts)
🧑🔧 Advanced Usage Custom Question Banks
from secret_sauce.questions import QUESTION_BANKS
QUESTION_BANKS["gaming"] = [ ("Main character's name?", "character", str), ("Rarest item you own?", "item", str) ] Manual Salt Override python from secret_sauce.security import salt_answers
salted = salt_answers({"hobby": "chess"}, custom_salt="MY_SALT") 📜 Security Design Component Method Example Output Input Hashing SHA-256 + System Salt a1b2... Pronounceable Vowel/Consonant Patterns Jup@8$ Entropy Source secrets module (cryptographic) Guarantees:
✅ No answers stored/transmitted
✅ Minimum 64-bit entropy per password
✅ Resistance to dictionary attacks
🛠️ Development bash git clone https://github.com/yourusername/secret-sauce cd secret-sauce pip install -e . Run Tests:
bash python -m pytest tests/ 🍝 Recipe Book Explore RECIPES.md for:
Adding emoji support (⚠️ not recommended)
Creating password manager integrations
Bulk-generating passwords for teams
🎯 Why "Secret Sauce"? "Because 'password123' is bland, and security should be delicious." (Also: it makes hackers hungry 🍔)
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 saucypass-1.0.0.tar.gz.
File metadata
- Download URL: saucypass-1.0.0.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9291b61115cc475fa6a24a0f76849b1de87c910e89eefb6e86e2aad962392a9c
|
|
| MD5 |
43f0e656596c4c265ccd46b2fa798079
|
|
| BLAKE2b-256 |
bebe3d0e8c08d11be92b4cd3a688ab7d79c9c1ad9d0136ec0741d4f640331a04
|
File details
Details for the file saucypass-1.0.0-py3-none-any.whl.
File metadata
- Download URL: saucypass-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
342fc22eb8e6d33189b18f26dbfda05a6bf94402e01a9c80beb926808201f64a
|
|
| MD5 |
3a62e88cd413f1f1e89824f687c7f787
|
|
| BLAKE2b-256 |
373b3e219bf1f6d53bd2da3bf65bb9d6d3fc8d692c3cbc05d69ebfcfdd9a5404
|