vix.ing · top · new · best · stats · spec

A Proof-Producing Compiler for Blockchain Applications

2025/01/25 by Jeremy Avigad, Lior Goldberg, Avigad, Jeremy +7 · 1 citation
Computer Science · #Cryptography and Security (cs.CR) #FOS: Computer and information sciences #Logic in Computer Science (cs.LO) #Parallel Computing and Optimization Techniques #Programming Languages (cs.PL)

paper · pdf · doi:10.48550/arxiv.2501.15002

openalex publication_date 2025/01/25 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

CairoZero is a programming language for running decentralized applications (dApps) at scale. Programs written in the CairoZero language are compiled to machine code for the Cairo CPU architecture and cryptographic protocols are used to verify the results of execution efficiently on blockchain. We explain how we have extended the CairoZero compiler with tooling that enables users to prove, in the Lean 3 proof assistant, that compiled code satisfies high-level functional specifications. We demonstrate the success of our approach by verifying primitives for computation with the secp256k1 and secp256r1 curves over a large finite field as well as the validation of cryptographic signatures using the former. We also verify a mechanism for simulating a read-write dictionary data structure in a read-only setting. Finally, we reflect on our methodology and discuss some of the benefits of our approach.

Cited by

Related