Inverting Cryptographic Hash Functions via Cube-and-Conquer
Oleg Zaikin

TL;DR
This paper applies Cube-and-Conquer, combining CDCL and lookahead techniques, to invert step-reduced MD4 and MD5 hash functions, achieving new results in cryptanalysis of these algorithms.
Contribution
It introduces two algorithms for inverting reduced MD4 and MD5 hashes, including the first inversion of 40-43 step MD4 and 28-step MD5 hashes using Cube-and-Conquer.
Findings
Successfully inverted 40-43 step MD4 hashes for the first time.
Inverted 28-step MD5 hashes for four different inputs.
Demonstrated the effectiveness of Cube-and-Conquer in cryptanalysis.
Abstract
MD4 and MD5 are fundamental cryptographic hash functions proposed in the early 1990s. MD4 consists of 48 steps and produces a 128-bit hash given a message of arbitrary finite size. MD5 is a more secure 64-step extension of MD4. Both MD4 and MD5 are vulnerable to practical collision attacks, yet it is still not realistic to invert them, i.e., to find a message given a hash. In 2007, the 39-step version of MD4 was inverted by reducing to SAT and applying a CDCL solver along with the so-called Dobbertin's constraints. As for MD5, in 2012 its 28-step version was inverted via a CDCL solver for one specified hash without adding any extra constraints. In this study, Cube-and-Conquer (a combination of CDCL and lookahead) is applied to invert step-reduced versions of MD4 and MD5. For this purpose, two algorithms are proposed. The first one generates inverse problems for MD4 by gradually…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCryptographic Implementations and Security · Coding theory and cryptography · Advanced Malware Detection Techniques
