Using hashcat's hash implementations in other projects
#1
I'm working on a small personal project written in C to carry out dictionary attacks on LUKS encrypted devices. I'm sure better implementations already exist than what I'll provide but this is for self teaching purposes. I would however like to try and (within reason) maximize the speed I can get from my program, and one place I thought to look was the actual crypto libraries I'm using. 

Now, I get the feeling that while OpenSSL would work fine, it probably sacrifices small amounts of speed to ensure things like memory safety and general fitness to be distributed and relied upon across many systems. Hashcat on the other hand likely implements hash functions to be completely as fast as possible to improve cracking performance. If this is correct (please let me know if I'm wrong), I'm wondering then if it might be possible to use hashcat as a library for my own program so I can just plug into the hash implementations of hashcat with my own data and get a speed advantage over OpenSSL or other such libraries. If so, how could I go about doing this?

Also, this is off the topic of hashcat specifically, but if anybody is aware of how I can attain the fastest block cipher implementations too (assuming OpenSSL isn't optimal), I'd appreciate being pointed somewhere on that too, thanks.
Reply