Repolode
succinctlabs

succinctlabs/sp1

A zero-knowledge virtual machine that generates proofs of correct execution for programs written in Rust or other LLVM-compiled languages.

Stars
1,768
Forks
722
Open issues
156
Last commit
2 days ago

What is it?

SP1 is a zero-knowledge virtual machine (zkVM) that proves the execution of programs compiled for the RISC-V architecture. Developers write ordinary Rust code, run it inside SP1, and get a proof that the computation was carried out correctly, which anyone can verify without re-running the program.

The project aims to make zero-knowledge proofs usable without specialized cryptography knowledge. Programs can use standard Rust with std support, and the README states that most Rust crates work without modification. Larger workloads such as a ZK Tendermint light client or a type-1 zkEVM built on Reth are mentioned as supported examples.

SP1 provides a Rust toolchain, install scripts, and a prover built on the Plonky3 toolkit. It supports precompiles for common cryptographic operations that can be added as extra tables alongside the CPU. The project has been audited by Veridise, Cantina, Zellic and KALOS, and requires Rust 1.91.1 or newer.

Key features

  • 01Proves execution of arbitrary Rust programs and other LLVM-compiled languages.
  • 02Supports Rust std and most Rust crates without special modifications.
  • 03Allows extensible precompiles for commonly used cryptographic operations.
  • 04Generates proofs that can be verified independently of the original execution.
  • 05Provides a Rust toolchain, installation scripts and example programs.

Use cases

  • Building zero-knowledge light clients for blockchains such as Tendermint.
  • Developing zkEVM components that prove Ethereum block execution.
  • Writing verifiable off-chain computation in ordinary Rust code.

Quick start

  1. 1

    Install Rust from the official rust-lang.org page

  2. 2

    Follow the installation guide in the SP1 book

  3. 3

    Read the getting started section of the SP1 book

Things to know

  • Requires Rust 1.91.1 or newer (MSRV).

Topics

FAQ

What is sp1?
A zero-knowledge virtual machine that generates proofs of correct execution for programs written in Rust or other LLVM-compiled languages. SP1 is a zero-knowledge virtual machine (zkVM) that proves the execution of programs compiled for the RISC-V architecture. Developers write ordinary Rust code, run it inside SP1, and get a proof that the computation was carried out correctly, which anyone can verify without re-running the program.
Is sp1 free to use? What license does it have?
sp1 is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is sp1 still maintained?
Actively maintained. The last commit to sp1 was on Nov 5, 2026.
What can I use sp1 for?
Building zero-knowledge light clients for blockchains such as Tendermint. Developing zkEVM components that prove Ethereum block execution. Writing verifiable off-chain computation in ordinary Rust code.
How do I install sp1?
Install Rust from the official rust-lang.org page Follow the installation guide in the SP1 book Read the getting started section of the SP1 book
Where can I get sp1?
The source code and installation instructions are on GitHub: https://github.com/succinctlabs/sp1

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects