Privacy-Preserving Password Cracking: How a Third Party Can Crack Our Password Hash Without Learning the Hash Value or the Cleartext
Norbert Tihanyi,Tamás Bisztray,Bertalan Borsos,Sebastien Raveau
DOI: https://doi.org/10.1109/tifs.2024.3356162
IF: 7.231
2024-02-02
IEEE Transactions on Information Forensics and Security
Abstract:Using the computational resources of an untrusted third party to crack a password hash can pose a high number of privacy and security risks. The act of revealing the hash digest could in itself negatively impact both the data subject who created the password, and the data controller who stores the hash digest. This paper solves this currently open problem by presenting a Privacy-Preserving Password Cracking protocol (3PC), that prevents the third party cracking server from learning any useful information about the hash digest, or the recovered cleartext. This is achieved by a tailored anonymity set of decoy hashes, based on the concept of predicate encryption, where we extend the definition of a predicate function, to evaluate the output of a one way hash function. The probabilistic information the server obtains during the cracking process can be calculated and minimized to a desired level. While in theory, cracking more hashes would introduce additional overhead, the 3PC protocol enables constant-time lookup regardless of the list size, limited by the input/output operation per second (IOPS) capabilities of the third-party server, allowing the protocol to scale efficiently. We demonstrate these claims both theoretically and in practice, with a real-life use case implemented on an FPGA architecture.
computer science, theory & methods,engineering, electrical & electronic