https://github.com/ninest/bad-password
Bad password generator
https://github.com/ninest/bad-password
Last synced: 13 days ago
JSON representation
Bad password generator
- Host: GitHub
- URL: https://github.com/ninest/bad-password
- Owner: ninest
- Created: 2022-10-12T20:45:11.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2026-01-21T02:12:17.000Z (5 months ago)
- Last Synced: 2026-01-21T09:31:25.778Z (5 months ago)
- Language: Python
- Size: 61.5 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# bad-password
A satirical weak password generator that creates intentionally insecure passwords for **educational purposes**.
This tool demonstrates common password anti-patterns and poor security practices. Use it to learn what *not* to do when creating passwords.
## Installation
### Prerequisites
- Rust 1.70 or later
### Build from source
```bash
# Clone the repository
git clone https://github.com/ninest/bad-password.git
cd bad-password
# Build the release version
cargo build --release
# The binary will be at ./target/release/bad-password
```
### Run directly with Cargo
```bash
cargo run -- [OPTIONS]
```
## Usage
```bash
bad-password [OPTIONS]
```
### Options
| Option | Short | Description |
|--------|-------|-------------|
| `--words ` | `-w` | Number of words to include (max: 1 enforced) |
| `--symbols ` | `-s` | Special characters (ignored for your "safety") |
| `--caps` | `-c` | Capitalize first letter |
| `--numbers` | `-n` | Append predictable numbers |
| `--exclamation` | `-e` | Add exclamation mark at end |
| `--help` | `-h` | Show help information |
## Examples
### Generate a basic weak password
```bash
$ bad-password
princess
```
### Add capitalization for "maximum security"
```bash
$ bad-password --caps
✓ Capitalized first letter for maximum security!
Sunshine
```
### Add predictable numbers
```bash
$ bad-password -n
✓ Added ultra-secure numbers: 123
qwerty123
```
### Combine multiple options
```bash
$ bad-password -c -n -e
✓ Capitalized first letter for maximum security!
✓ Added ultra-secure numbers: 2026
✓ Added exclamation mark (now unhackable!)
Dragon2026!
```
### Try to be "too secure" (the tool will stop you)
```bash
$ bad-password --words 5 --symbols 3
WARNING: Password might actually become secure with more than 1 common word. Using 1 word.
WARNING: Special characters may make your password secure. Using 0 specials characters.
password
```
## How it works
1. Selects a random password from a list of 9,999 common passwords
2. Optionally applies "security enhancements":
- **Capitalization**: Makes the first letter uppercase
- **Numbers**: Appends one of: `1`, `123`, `12345`, current year, or `1234`
- **Exclamation**: Adds `!` at the end
## Why?
This project exists to demonstrate:
- Why dictionary-based passwords are weak
- Why predictable number suffixes don't add security
- Why single-character special characters are easily guessed
- Common patterns that password crackers check first
**For actual password security**, use a reputable password manager with randomly generated passwords of 16+ characters.
## License
MIT