A Python-based password cracking application with a graphical user interface built using Tkinter. This tool is designed for educational purposes to demonstrate password security concepts.
- Brute Force Attack: Try all possible combinations of characters up to a specified length
- Dictionary Attack: Test passwords from a wordlist file
- Hash Cracking Support: Crack MD5, SHA1, SHA256, and SHA512 hashed passwords
- Customizable Character Sets: Choose which character types to include (lowercase, uppercase, digits, special characters)
- Real-time Progress Updates: See the current password being tested and track progress
- Responsive UI: Modern and user-friendly interface with a sleek dark blue theme
- Comprehensive Documentation: Detailed user manual in both Markdown and HTML formats
- Python 3.6 or higher
- Tkinter (included with most Python installations)
- No additional packages required
-
Run the application:
python main.py -
Enter the target password or hash you want to crack
-
If you're entering a hash, check the "Input is a hash" checkbox and select the appropriate hash type
-
Choose your cracking method:
- Brute Force: Select character sets and maximum password length
- Dictionary Attack: Select a wordlist file (.txt)
-
Click "Start Cracking" to begin the password cracking process
-
The application will display the result when found or when the process is complete
The application comes with comprehensive documentation:
- User Manual: Available in two formats:
USER_MANUAL.md- Markdown version for viewing in text editors or GitHubuser_manual.html- Styled HTML version for viewing in web browsers
To view the HTML user manual, simply open user_manual.html in any web browser.
The application includes a test harness to help you test different passwords and hashes:
python test_cracker.py
The test harness provides the following features:
- Test with plaintext passwords from
target_passwords.txt - Test with hashed passwords from
hashed_passwords.txt - Generate hashes from passwords for testing purposes
main.py- The main password cracker applicationtest_cracker.py- Test harness for testing the password crackertarget_passwords.txt- Sample plaintext passwords for testingtest_passwords.txt- Dictionary file for dictionary attackshashed_passwords.txt- Sample hashed passwords for testingUSER_MANUAL.md- Comprehensive user manual (Markdown format)user_manual.html- Comprehensive user manual (HTML format)
- Brute force attacks become exponentially slower as the maximum password length increases
- For passwords longer than 6 characters, a dictionary attack is recommended
- The application may become less responsive during intensive cracking operations
- Cracking complex hashes (especially SHA256 and SHA512) can be very time-consuming
This application is intended for educational purposes only. It should be used responsibly and ethically.
- Only use this tool on systems and passwords you own or have explicit permission to test
- Unauthorized password cracking attempts may violate computer crime laws
- The developers assume no liability for misuse of this software
Contributions to improve the application are welcome. Please feel free to submit pull requests or open issues for bugs and feature requests.
This project is available for educational use. Please use responsibly.
