Skip to main content

Cairo – a Turing-complete language for efficient scaling of blockchains

This paper introduces Cairo, a specialized programming language designed for writing provable programs that can be executed on a STARK-based verifiable computat

Abstract

This paper introduces Cairo, a specialized programming language designed for writing provable programs that can be executed on a STARK-based verifiable computation system. Cairo enables developers to create complex, Turing-complete logic that is then converted into a proof by a prover and verified by a verifier. This is a foundational step for ZK-Rollups, as it allows for the off-chain execution of smart contracts with on-chain verification, significantly reducing computational overhead. The paper details the Cairo CPU architecture, the instruction set, and the methodology for proving non-deterministic computational tasks. Its contribution is pivotal for the Web3 ecosystem, as it provides a practical pathway toward scaling Ethereum through computational integrity proofs rather than merely relying on data availability, facilitating highly complex, scalable decentralized applications. Authors: Lior Goldberg, Shahar Papini, Michael Riabzev Publication: IACR ePrint Archive Publication date: 2021-01-01

Key findings

  • Introduced a Turing-complete language designed for zero-knowledge proofs.
  • Developed a prover-verifier architecture to ensure computational integrity.
  • Facilitated highly efficient on-chain verification of off-chain computations.
  • Enabled the development of complex, programmable L2 environments.

Citation

Lior Goldberg, Shahar Papini, Michael Riabzev (2021). Cairo – a Turing-complete language for efficient scaling of blockchains. IACR ePrint Archive. https://eprint.iacr.org/2021/1063.pdf
Canonical knowledge ID: research:cairo-a-turing-complete-language-for-efficient-scaling-of-blockchains