Skip to main content

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 of gH7#kLm2)

🔥 Secret Sauce Algorithm

Base: "Hiking" + "7" + "CA"
│ │ └─ Location abbreviation
│ └─ Lucky digit
└─ Hobby

Process:

  1. Capitalize("hik") → "Hik"
  2. Leet-speak vowels → "H1k"
  3. Add separator → "H1k_"
  4. 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

  1. 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$", ...]

  1. 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


Download files

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

Source Distribution

saucypass-1.0.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

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

saucypass-1.0.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

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

Hashes for saucypass-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9291b61115cc475fa6a24a0f76849b1de87c910e89eefb6e86e2aad962392a9c
MD5 43f0e656596c4c265ccd46b2fa798079
BLAKE2b-256 bebe3d0e8c08d11be92b4cd3a688ab7d79c9c1ad9d0136ec0741d4f640331a04

See more details on using hashes here.

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

Hashes for saucypass-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 342fc22eb8e6d33189b18f26dbfda05a6bf94402e01a9c80beb926808201f64a
MD5 3a62e88cd413f1f1e89824f687c7f787
BLAKE2b-256 373b3e219bf1f6d53bd2da3bf65bb9d6d3fc8d692c3cbc05d69ebfcfdd9a5404

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