Here’s HashNinja, a high-speed & unique multithreaded dictionary attack implementation that attacks a supported hash with a “chunkified” user-defined dictionary file to find the string candidate that corresponds to the supplied hash.
Supported Hashing Algorithms
- SHA-2 (224-bit)
- SHA-2 (256-bit)
- SHA-2 (384-bit)
- SHA-2 (512-bit)
- SHA-3 (224-bit)
- SHA-3 (256-bit)
- SHA-3 (384-bit)
- SHA-3 (512-bit)
Hash Generator: String → Hash Converter (for tests)
HashNinja also comes with a “Hash Generator” program that converts a user-input string to a hash of the selected hashing algorithm, and then automatically copies the generated hash to the clipboard; mainly for the purpose of testing HashNinja conveniently.
This project was created in Python, for experimental/observational purposes; and can also be aided with our own super fast numbered dictionary generator NumNinja (up to 2M+ lines per second) for numeric attacks.
The high hash-matching speed is owed to the approach of “chunkifying” the dictionary file (creating multiple “chunks” of the dictionary) and then operating upon all those simplified chunks concurrently (multithreading) in different directions (forward and backward) for significantly higher overall balance, efficiency and performance.