Using fuzzy bits and neural networks to partially invert few rounds of some cryptographic hash functions
This work addresses the challenge of cryptanalysis for security researchers, but it appears incremental as it focuses on weakened or few-round versions of established hash functions.
The authors tackled the problem of inverting cryptographic hash functions by generalizing them to operate on fuzzy bits (continuous values) and training neural networks to predict messages from given hashes. They achieved successful inversion for standard hash functions (MD5, SHA1, SHA2-256, SHA3/Keccak) with a small number of rounds, though specific numerical results are not provided in the abstract.
We consider fuzzy, or continuous, bits, which take values in [0;1] and (-1;1] instead of {0;1}, and operations on them (NOT, XOR etc.) and on their sequences (ADD), to obtain the generalization of cryptographic hash functions, CHFs, for the messages consisting of fuzzy bits, so that CHFs become smooth and non-constant functions of each bit of the message. We then train the neural networks to predict the message that has a given hash, where the loss function for the hash of predicted message and given true hash is backpropagatable. The results of the trainings for the standard CHFs - MD5, SHA1, SHA2-256, and SHA3/Keccak - with small number of (optionally weakened) rounds are presented and compared.