Applying Grover's Algorithm to Hash Functions: A Software Perspective - Richard H. Preston (IEEE Transactions on Quantum Engineering, 2022)
Quantum software frameworks provide software engineers with the tools to study quantum algorithms as applied to practical problems. We implement classical hash functions MD5, SHA-1, SHA-2, and SHA-3 as quantum oracles to study the computational resource requirements of conducting a preimage attack with Grover's algorithm. We introduce an improvement to the SHA-3 oracle that reduces the number of logical qubits required in the Keccak block permutation by 40%. The source code is available at https://github.com/rhpreston/grovers-hash-functions.