Cryptology ePrint Archive: Report 2019/958

Using SMT Solvers to Automate Chosen Ciphertext Attacks

Gabrielle Beck and Maximilian Zinkus and Matthew Green

Abstract: In this work we investigate the problem of automating the development of adaptive chosen ciphertext attacks on systems that contain vulnerable format oracles. Unlike previous attempts, which simply automate the execution of known attacks, we consider a more challenging problem: to programmatically derive a novel attack strategy, given only a machine-readable description of the plaintext verification function and the malleability characteristics of the encryption scheme. We present a new set of algorithms that use SAT and SMT solvers to reason deeply over the design of the system, producing an automated attack strategy that can entirely decrypt protected messages. Developing our algorithms required us to adapt techniques from a diverse range of research fields, as well as to explore and develop new ones. We implement our algorithms using existing theory solvers. The result is a practical tool called Delphinium that succeeds against real-world and contrived format oracles. To our knowledge, this is the first work to automatically derive such complex chosen ciphertext attacks.

Category / Keywords: applications / Boolean Satisfiability, Satisfiability Modulo Theories, Application, Implementation

Original Publication (with minor differences): Usenix Security Symposium 2020

Date: received 22 Aug 2019, last revised 9 Nov 2020

Contact author: zinkus at cs jhu edu

Available format(s): PDF | BibTeX Citation

Note: Conference publication details Revised 9 Nov 2020: Updated to correct citations for Z3 and Boolector, thanks to Aina Niemetz!

Version: 20201109:160435 (All versions of this report)

Short URL:

[ Cryptology ePrint archive ]