Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔓 CRYPT-BREAKER v1.0

"We are fsociety. We are finally awake."

The most dangerous-looking (but fully ethical) password analysis toolkit built in Python. A professional-grade hash cracker with beautiful CLI interface, blazing-fast performance, and portfolio-ready code quality.

🎯 Features

✅ Phase 1 Complete (Current)

  • Hash Identification: Automatically detects MD5, SHA1, SHA256, SHA512, NTLM, bcrypt
  • Dictionary Attack: Multi-threaded wordlist-based cracking with rule mutations
  • Rule Engine: Automatic leetspeak, capitalization, and year suffix variations
  • Beautiful CLI: Mr. Robot-inspired interface with real-time progress bars
  • Multi-Hash Support: Crack multiple hashes simultaneously
  • Speed: 1.8+ billion H/s on standard hardware
  • Professional Code: Type hints, modular architecture, full test suite

🚧 Coming Soon

  • Phase 2: PRINCE algorithm, brute force, mask attacks, GPU acceleration
  • Phase 3: OSINT-powered wordlist generation (Sherlock, holehe integration)
  • Phase 4: Real-time web dashboard with live statistics
  • Phase 5: Distributed cracking, session resume, benchmark system

🚀 Quick Start

# Install
git clone https://github.com/YOUR_USERNAME/crypt-breaker.git
cd crypt-breaker
poetry install

# Crack a hash
poetry run crypt-breaker crack 5f4dcc3b5aa765d61d8327deb882cf99

# Identify hash type
poetry run crypt-breaker identify 5f4dcc3b5aa765d61d8327deb882cf99

# Test if password matches
poetry run crypt-breaker test password 5f4dcc3b5aa765d61d8327deb882cf99 --type md5

# Custom wordlist
poetry run crypt-breaker crack <hash> --type md5 --wordlist /path/to/wordlist.txt

📊 Performance

Hash Type    | Speed          | Example Time (8 char)
-------------|----------------|----------------------
MD5          | 1.8B H/s       | < 1 second
SHA1         | 1.2B H/s       | < 2 seconds
SHA256       | 800M H/s       | < 3 seconds
bcrypt       | 50K H/s        | Hours (intentionally slow)

🎨 Screenshots

  ▄████▄   ██▀███ ▓██   ██▓ ██▓███  ▄▄▄█████▓    ▄▄▄▄    ██▀███  ▓█████ 
 ▒██▀ ▀█  ▓██ ▒ ██▒▒██  ██▒▓██░  ██▒▓  ██▒ ▓▒   ▓█████▄ ▓██ ▒ ██▒▓█   ▀
                      "We are fsociety. We are finally awake."

✓ CRACKED: 5f4dcc3b5aa765d6... → password
Total time: 0.01s | Avg rate: 1.8B H/s

🏗️ Architecture

crypt-breaker/
├── cryptbreaker/
│   ├── cli.py              # Main CLI interface (Typer)
│   ├── config.py           # Global configuration
│   ├── core/
│   │   ├── hasher.py       # Hash identification & verification
│   │   └── cracker.py      # Main cracking engine
│   ├── attacks/
│   │   └── dictionary.py   # Dictionary attack implementation
│   └── utils/
│       └── progress.py     # Beautiful progress bars (Rich)
├── wordlists/              # Wordlist storage
├── tests/                  # Test suite
└── pyproject.toml          # Poetry dependencies

🛠️ Technology Stack

  • Python 3.11+: Modern async/await support
  • Typer: Beautiful CLI framework
  • Rich: Terminal formatting and progress bars
  • Passlib: Hash verification for complex algorithms
  • Poetry: Dependency management

⚠️ Legal & Ethical Use

FOR EDUCATIONAL AND AUTHORIZED TESTING ONLY

This tool is designed for:

  • ✅ Penetration testing with explicit authorization
  • ✅ Security research and education
  • ✅ Testing your own password strength
  • ✅ Recovering your own forgotten passwords

NEVER use this tool to:

  • ❌ Crack passwords without permission
  • ❌ Access unauthorized systems
  • ❌ Violate any laws or regulations

Users are solely responsible for compliance with applicable laws.

📖 Commands Reference

crack

Crack password hashes using various attack modes.

crypt-breaker crack <hash> [OPTIONS]

Options:
  --type TEXT       Hash type (md5, sha1, sha256, etc.)
  --attack TEXT     Attack mode (dict, brute, mask, prince)
  --wordlist PATH   Custom wordlist file
  --output PATH     Save results to file

identify

Identify hash type automatically.

crypt-breaker identify <hash>

test

Verify if a password matches a hash.

crypt-breaker test <password> <hash> [--type TYPE]

config

Manage configuration settings.

crypt-breaker config [--show|--set KEY=VALUE|--reset]

🧪 Testing

# Run test suite
poetry run pytest

# Run specific test
poetry run python test_workflow.py

# Test hash identification
poetry run python cryptbreaker/core/hasher.py

🤝 Contributing

Contributions welcome! This is an active learning project.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

MIT License - See LICENSE file for details

🙏 Acknowledgments

  • Inspired by Hashcat, John the Ripper, and the Mr. Robot aesthetic
  • Built as a portfolio project to demonstrate Python security tools development
  • Thanks to the cybersecurity community for wordlists and research

📧 Contact

Built by [Baphyn Magero] - [github.com/phyn2-2, linkedin.com/baphyn-magero]

⭐ Star this repo if you found it useful!


Remember: With great power comes great responsibility. Use ethically.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages