Skip to Main content Skip to Navigation
Conference papers

Modular Code-Based Cryptographic Verification

Abstract : Type systems are effective tools for verifying the security of cryptographic programs. They provide automation, modularity and scalability, and have been applied to large security protocols. However, they traditionally rely on abstract assumptions on the underlying cryptographic primitives, expressed in symbolic models. Cryptographers usually reason on security assumptions using lower level, computational models that precisely account for the complexity and success probability of attacks. These models are more realistic, but they are harder to formalize and automate. We present the first modular automated program verification method based on standard cryptographic assumptions. We show how to verify ideal functionalities and protocols written in ML by typing them against new cryptographic interfaces using F7, a refinement type checker coupled with an SMT-solver. We develop a probabilistic core calculus for F7 and formalize its type safety in Coq. We build typed module and interfaces for MACs, signatures, and encryptions, and establish their authenticity and secrecy properties. We relate their ideal functionalities and concrete implementations, using game-based program transformations behind typed interfaces. We illustrate our method on a series of protocol implementations.
Complete list of metadata

Cited literature [44 references]  Display  Hide  Download
Contributor : Pierre-Yves Strub Connect in order to contact the contributor
Submitted on : Tuesday, November 8, 2011 - 11:19:30 AM
Last modification on : Friday, October 23, 2020 - 4:40:42 PM
Long-term archiving on: : Thursday, November 15, 2012 - 11:26:21 AM


Files produced by the author(s)


  • HAL Id : inria-00614372, version 1



Cédric Fournet, Markulf Kohlweiss, Pierre-Yves Strub. Modular Code-Based Cryptographic Verification. 18th ACM Conference on Computer and Communications Security, Oct 2011, Chicago, United States. ⟨inria-00614372⟩



Record views


Files downloads