Introduction
Documentation for developers that want to use SP1 to build ZK applications.
SP1 is a zero‑knowledge virtual machine (zkVM) that proves the correct execution of programs compiled for the RISC-V architecture. This means it can run and prove programs written in Rust, C++, C, or any language that compiles to RISC-V.
SP1 is feature-complete, consistently delivers state-of-the-art performance on industry-standard benchmarks, and has been rigorously audited by top security firms. It's trusted in production by leading teams across blockchains, cryptography, and beyond.
With SP1, developers can write provable programs using ordinary code in familiar languages like Rust. There's no need for custom circuit design or cryptography expertise, just write your logic, compile it, and generate a proof. It’s ZK as intuitive and programmable as traditional computing.
Why Use SP1
If you're building with zero-knowledge proofs today, SP1 gives you the fastest path to production, without compromising on performance, flexibility, or developer experience. Here are three reasons why teams are choosing SP1:
-
Maintainability. Write ZK programs in standard Rust without custom DSLs or complex circuits. SP1 makes your codebase easier to understand, audit, and evolve over time.
-
Faster Development. Skip months of low-level ZK engineering. SP1 drastically shortens timelines, helping you go from idea to mainnet faster.
-
Performance. SP1 delivers state-of-the-art proving speed and efficiency, benchmarked and battle-tested in real-world production environments.
Open Source
SP1 includes open-source implementations of both the prover and verifier, released under the MIT and Apache 2.0 licenses.