Exetools (https://forum.exetools.com/index.php)
-   Source Code (https://forum.exetools.com/forumdisplay.php?f=46)
-   -   SHA1 preimage SAT solver (https://forum.exetools.com/showthread.php?t=19605)

chants 08-02-2020 07:11

SHA1 preimage SAT solver
SHA1-SAT translated for Windows: https://github.com/vegard/sha1-sat
Espresso heuristic logic minimizer translated for Windows: https://src.fedoraproject.org/lookaside/extras/espresso-ab/espresso-ab-1.0.tar.gz/
Python script that gives an idea how to use the output - with IDA Pro 7.2 known password example, and 3 other unknown password examples already ready.

The projects are included (SHA1-SAT requires boost to build), with binaries for SHA1-SAT and espresso, but I also provide some rather large SAT instance files already generated. The python script can then be used if the SAT instance files (.cnf) are locatable.


Unfortunately, it needs real work to get it able to beat hashcat which is already too slow. 7*12=84 unknown bits (since high bit is always 0 for printable characters). It can easily hand 7, 14 or 21 unknown bits. After that it starts to get really slow.

Would be interesting if some properties of the Boolean equations allowed for finding anything in the preimage such as equivalence of certain bits, or if bad prefixes could be found quickly to narrow it down. SAT solvers have a particularly difficult time on crypto hash algorithms as is well known though. It is probably out of reach without further research.

Thought I would share in case anyone is interested.

All times are GMT +8. The time now is 15:23.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2020, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX