Providing formal assurance is a key issue in computer security. Yet, automated reasoning tools have only been used for the verification of security protocols, and never for the verification and cryptanalysis of the cryptographic algorithms on which those protocols rely. We claim that one can use (propositional) logic for encoding the lowlevel properties of state-of-the-art cryptographic algorithms and then use automated theorem proving for reasoning about them. We call this approach logical cryptanalysis. In this framework, finding a model for a formula encoding an algorithm is equivalent to finding a key with a cryptanalytic attack. Other important properties can also be captured. Moreover, SAT benchmarks based on the encoding of cryptographic algorithms optimally share features of "real world" and random problems. Here we present a case study on the U.S. Data Encryption Standard (DES) and discuss how to obtain a manageable encoding of its properties. We have also teste..
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.