Adaptive Restart and CEGAR-Based Solver for Inverting Cryptographic Hash Functions
Adaptive Restart and CEGAR-Based Solver for Inverting Cryptographic Hash Functions
复制标题
用于反转加密哈希函数的自适应重启和基于 CEGAR 的求解器
DOI:
--
复制
发表时间:
2016
期刊:
影响因子:
--
通讯作者:
Vijay Ganesh
中科院分区:
文献类型:
--
作者:
Saeed Nejati;J. Liang;C. Gebotys;K. Czarnecki;Vijay Ganesh
SAT solvers are increasingly being used for cryptanalysis of hash functions and symmetric encryption schemes. Inspired by this trend, we present MapleCrypt which is a SAT solver-based cryptanalysis tool for inverting hash functions. We reduce the hash function inversion problem for fixed targets into the satisfiability problem for Boolean logic, and use MapleCrypt to construct preimages for these targets. MapleCrypt has two key features, namely, a multi-armed bandit based adaptive restart (MABR) policy and a counterexample-guided abstraction refinement (CEGAR) technique. The MABR technique uses reinforcement learning to adaptively choose between different restart policies during the run of the solver. The CEGAR technique abstracts away certain steps of the input hash function, replacing them with the identity function, and verifies whether the solution constructed by MapleCrypt indeed hashes to the previously fixed targets. If it is determined that the solution produced is spurious, the abstraction is refined until a correct inversion to the input hash target is produced. We show that the resultant system is faster for inverting the SHA-1 hash function than state-of-the-art inversion tools.