https://github.com/kafetzisthomas/hash-breaker
Allows you to crack hashes with or without wordlist.
https://github.com/kafetzisthomas/hash-breaker
cracker hash hash-cracker md5 python sha1 sha224 sha256 sha384 sha512
Last synced: 9 months ago
JSON representation
Allows you to crack hashes with or without wordlist.
- Host: GitHub
- URL: https://github.com/kafetzisthomas/hash-breaker
- Owner: KafetzisThomas
- License: gpl-3.0
- Created: 2023-09-23T11:24:41.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-16T08:06:26.000Z (almost 2 years ago)
- Last Synced: 2024-06-16T13:06:14.754Z (almost 2 years ago)
- Topics: cracker, hash, hash-cracker, md5, python, sha1, sha224, sha256, sha384, sha512
- Language: Python
- Homepage:
- Size: 55.7 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Hash-Breaker
__What Is This?__ - Allows you to crack hashes with or without wordlist.
__How to Download__: Open the terminal on your machine and type the following command:
```bash
$ git clone https://github.com/KafetzisThomas/Hash-Breaker.git
```
Use [pip](https://pip.pypa.io/en/stable) to install the required packages:
```bash
$ pip install -r requirements.txt
```
## Features
* Operates entirely via command-line arguments
* Supported hash algorithms: `Bcrypt`, `MD5`, `SHA1`, `SHA224`, `SHA256`, `SHA384`, `SHA512`
* Dynamic password generation:
* Generate all possible combinations of characters until a match is found
* Customize the character set
* Dictionary support
## Usage Notes
To use the script, follow these steps in your terminal:
### Example 1: Cracking a hash with a wordlist:
```bash
➜ hash_to_crack='$2b$12$.pdcdWnjEA/2GOvHfEfMkupP/BXSsdJjLs5Sh63E0B/5JG/YeB9cu' # Example Bcrypt hash
➜ wordlist_file=common_passwords.txt # Path to wordlist file
# Using Hash-Breaker with a wordlist
$ python main.py bcrypt '$hash_to_crack' '$wordlist_path' --wordlist
# Output:
# ...
# Password Found: [ a ]
# Total attempts: 4
# Time elapsed: 3.1s
```
### Example 2: Cracking a hash with dynamic password generation:
```bash
➜ hash_to_crack='e1608f75c5d7813f3d4031cb30bfb786507d98137538ff8e128a6ff74e84e643' # Example SHA256 hash
# Using Hash-Breaker with dynamic password generation
$ python main.py sha256 '$hash_to_crack'
# Output:
# ...
# Password Found: [ tom ]
# Total attempts: 302523
# Time elapsed: 9.3s
```
### Example 3: Using different hash algorithms:
```bash
➜ sha512_hash = # Replace with an example SHA512 hash
➜ sha1_hash = # Replace with an example SHA1 hash
➜ md5_hash = # Replace with an example MD5 hash
# Cracking a SHA512 hash
$ python main.py sha512 '$sha512_hash' '$wordlist_file' --wordlist
# Cracking a SHA1 hash
$ python main.py sha1 '$sha1_hash'
# Cracking a MD5 hash
$ python main.py md5 '$md5_hash' '$wordlist_file' --wordlist
```
### Example 4: Customizing the character set for dynamic generation:
```bash
➜ hash_to_crack = # Replace with an example hash
# Using a custom character set for dynamic generation
$ python main.py sha256 '$hash_to_crack' 'atcdIQRsoTpUVZ01m5678' --charset
# Output:
# ...
# Password Found: [ pass1 ]
# Total attempts: 2152264
# Time elapsed: 67.6s
```
### Example 5: Handling errors and understanding the output:
```bash
# Incorrect hash algorithm
$ python main.py md4 '$hash_to_crack'
# Output:
# [*] Unsupported hash algorithm: md4
# Invalid wordlist path
$ python main.py md5 '$hash_to_crack' 'invalid_wordlist.txt' --wordlist
# Output:
# [*] Wordlist file not found: invalid_wordlist.txt
```
## Run Tests
```bash
➜ cd path/to/script/directory
$ python -m unittest discover tests
```
## Disclaimer: Educational Use Only
**Hash-Breaker** is an educational tool designed for `learning` and `understanding cryptographic concepts` related to hash functions and password security. It is NOT intended for malicious activities, unauthorized access, or any form of unethical use.
By accessing and using Hash-Breaker, you acknowledge and agree to the terms outlined in this disclaimer. **The repository owner and contributors are not responsible for any misuse, damage, or legal consequences resulting from the use of this tool.**
Please use Hash-Breaker responsibly and for **educational purposes only**.