Paper 2025/418

ProofFrog: A Tool For Verifying Game-Hopping Proofs

Ross Evans, University of Waterloo
Matthew McKague, Queensland University of Technology
Douglas Stebila, University of Waterloo
Abstract

Cryptographic proofs allow researchers to provide theoretical guarantees on the security that their constructions provide. A proof of security can completely eliminate a class of attacks by potential adversaries. Human fallibility, however, means that even a proof reviewed by experts may still hide flaws or outright errors. Proof assistants are software tools built for the purpose of formally verifying each step in a proof, and as such have the potential to prevent erroneous proofs from being published and insecure constructions from being implemented. Unfortunately, existing tooling for verifying cryptographic proofs has found limited adoption in the cryptographic community, in part due to concerns with ease of use. We present ProofFrog: a new tool for verifying cryptographic game-hopping proofs. ProofFrog is designed with the average cryptographer in mind, using an imperative syntax similar to C for specifying games and a syntax for proofs that closely models pen-and-paper arguments. As opposed to other proof assistant tools which largely operate by manipulating logical formulae, ProofFrog manipulates abstract syntax trees (ASTs) into a canonical form to establish indistinguishable or equivalent behaviour for pairs of games in a user-provided sequence. We also detail the domain-specific language developed for use with the ProofFrog proof engine, the exact transformations it applies to canonicalize ASTs, and case studies of verified proofs. A tool like ProofFrog that prioritizes ease of use can lower the barrier of entry to using computer-verified proofs and aid in catching insecure constructions before they are made public.

Metadata
Available format(s)
PDF
Category
Foundations
Publication info
Preprint.
Keywords
cryptographygame-hoppingproof verification
Contact author(s)
rpevans @ uwaterloo ca
matthew mckague @ qut edu au
dstebila @ uwaterloo ca
History
2025-03-05: approved
2025-03-04: received
See all versions
Short URL
https://ia.cr/2025/418
License
Creative Commons Attribution-NonCommercial-ShareAlike
CC BY-NC-SA

BibTeX

@misc{cryptoeprint:2025/418,
      author = {Ross Evans and Matthew McKague and Douglas Stebila},
      title = {{ProofFrog}: A Tool For Verifying Game-Hopping Proofs},
      howpublished = {Cryptology {ePrint} Archive, Paper 2025/418},
      year = {2025},
      url = {https://eprint.iacr.org/2025/418}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.