CryptoDB
Cameron Low
Publications and invited talks
Year
Venue
Title
2025
ASIACRYPT
How Hard Can It Be to Formalize a Proof? Lessons from Formalizing CryptoBox Three Times in EasyCrypt
Abstract
Provable security is a cornerstone of modern cryptography,
aiming to provide formal and precise security guarantees. However, for
various reasons, security proofs are not always properly verified, possibly
leading to unwarranted security claims and, in the worst case, deployment
of insecure constructions. To further enhance trust and assurance,
machine-checked cryptography makes these proofs more formal and rigorous.
Unfortunately, the complexity of writing machine-verifiable proofs
remains prohibitively high in many interesting use-cases. In this paper,
we investigate the sources of this complexity, specifically examining how
the style of security definitions influences the difficulty of constructing
machine-verifiable proofs in the context of game-playing security.
Concretely, we present a new security proof for the generic construction of
a PKAE scheme from a NIKE and AE scheme, written in a code-based,
game-playing style `a la Bellare and Rogaway, and compare it to the
same proof written in the style of state-separating proofs, a methodology
for developing modular game-playing security proofs. Additionally, we
explore a third “blended” style designed to avoid anticipated difficulties
with the formalization. Our findings suggest that the choice of definition
style impacts proof complexity—including, we argue, in detailed pen-
and-paper proofs—with trade-offs depending on the proof writer’s goals.
2024
CRYPTO
Formally Verifying Kyber Episode V: Machine-checked IND-CCA security and correctness of ML-KEM in EasyCrypt
Abstract
We present a formally verified proof of the correctness and IND-CCA security of ML-KEM, the Kyber-based Key Encapsulation Mechanism (KEM) undergoing standardization by NIST.
The proof is machine-checked in EasyCrypt and it includes:
1) A formalization of the correctness (decryption failure probability) and IND-CPA security of the Kyber base public-key encryption scheme, following Bos et al. at Euro S&P 2018;
2) A formalization of the relevant variant of the Fujisaki-Okamoto transform in the Random Oracle Model (ROM), which follows closely (but not exactly) Hofheinz, Hovelmanns and Kiltz at TCC 2017;
3) A proof that the IND-CCA security of the ML-KEM specification and its correctness as a KEM follows from the previous results;
4) Two formally verified implementations of ML-KEM written in Jasmin that are provably constant-time, functionally equivalent to the ML-KEM specification and, for this reason, inherit the provable security guarantees established in the previous points.
The top-level theorems give self-contained concrete bounds for the correctness and security of ML-KEM down to (a variant of) Module-LWE.
We discuss how they are built modularly by leveraging various EasyCrypt features.
Coauthors
- José Bacelar Almeida (1)
- Santiago Arranz Olmos (1)
- Manuel Barbosa (1)
- Gilles Barthe (1)
- François Dupressoir (2)
- Benjamin Grégoire (1)
- Andreas Hülsing (1)
- Vincent Laporte (1)
- Jean-Christophe Léchenet (1)
- Cameron Low (2)
- Matthias Meijers (1)
- Charlotte Mylog (1)
- Sabine Oechsner (1)
- Tiago Oliveira (1)
- Hugo Pacheco (1)
- Miguel Quaresma (1)
- Peter Schwabe (1)
- Pierre-Yves Strub (1)