Efficiently decrypt DES hashes produced by crypt(3).
Decryption is performed by .NET applications and is based on brute-force method. High decryption speed is achieved by heavy usage of stack-allocated Span<T>
and ReadOnlySpan<T>
, there is no heap allocation during decryption.
Notable projects:
- CrackSharp.Cmd is a console app written as a solution to CS50's Crack problem
- CrackSharp.Api is a WebAPI service, ready for Docker
Deployment and usage examples are located in the corresponding project directories.
- The longer the word behind a hash, the longer it will take to decrypt this hash.
- Same applies to a charset you feed to the app which it then uses to build words: decryption of
50E5eT91y/Q.g
with a charsetabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
(letters and digits) takes approximately 68% longer than with the same charset but without digits.