Skip to content

Releases: succinctlabs/sp1

v4.0.1

17 Jan 22:19
dae15e9
Compare
Choose a tag to compare

v4.0.0

15 Jan 23:28
4a1dcea
Compare
Choose a tag to compare

SP1 Turbo (v4.0.0)

Screenshot 2025-01-15 at 3 23 40 PM

The world’s fastest zkVM just got faster.

Introducing SP1 Turbo, the latest upgrade to SP1, delivering unprecedented performance and cost efficiency for generating zero-knowledge proofs of RISC-V bytecode/programs written in Rust. Whether you're working on zkEVM rollups, light clients, signature verification, or other blockchain computations, SP1 Turbo is engineered to handle it all with best-in-class speed and cost-effectiveness.

Highlights

  • Blazing speeds: Achieve speeds up to 5 MHz on a single GPU with our new GPU kernel improvements.
  • A step closer to real-time Ethereum proving: Prove Ethereum mainnet blocks in <40 seconds on a cluster of GPUs.
  • New precompiles:
    • Secp256r1: Signature verification for applications like ZK Email and FaceID attestations.
    • RSA Precompile: Bigint arithmetic for efficient RSA signature verification.

Getting Started

To get started, we recommend following the V3 → V4 Migration Guide.

We will have a more public-facing announcement and blog post soon. Regardless, SP1 V4 is fully production-ready and available on the prover network and ready to be used! If you have any question, please do not hesitate to reach out via Telegram.

v3.4.0

16 Dec 23:05
563ede1
Compare
Choose a tag to compare

📦 Uncategorized

  • chore: bump secp256k1 patch
  • fix: add hook for ed decompress

v4.0.0-rc.1

27 Nov 07:21
Compare
Choose a tag to compare
v4.0.0-rc.1 Pre-release
Pre-release

A release candidate for SP1 V4.0.0. This release introduces major performance improvements across the board for all programs and workloads.

🚀 Highlights

  1. GPU Kernel Optimizations

We've done a lot of work optimizing our GPU Kernels for the expensive parts of the prover such as quotient and opening. We've also added support for trace generation on GPU in this release which reduces end-to-end latency.

  1. Recursion Aritmetization Optimizations

We've used some new tricks to reduce our arithmetization overhead in recursion, bringing faster and more efficient proofs of constant size to all programs.

  1. RSA and Secp256r1 Precompiles

Support for RSA and Secp256r1 precompiles have been added.

🛠 Production-Readiness

v4.0.0-rc.1 is not yet production-ready. We recommend using this release only for benchmarking purposes.

📦 Changes

  • chore(sdk): update network-v2 proto
  • docs: common issues
  • fix: mock prover groth16 bytes
  • fix: additional guards on entrypoint macro
  • feat(sdk): download proof from public URI
  • feat(sp1up): error messages for bad inputs.
  • fix: patch bls and bn
  • Docs: Updating missing arguments in SP1 Quickstarter
  • docs: Update example commands from cd script to cd ../script
  • chore: update images
  • chore: docs off dev
  • chore: fix typo in image
  • test: add network-v2 to perf test suite
  • feat: security md
  • feat: executor optimizations
  • perf: implement select precompile
  • chore: use tags instead of branches to label patches
  • feat: remove assign in airs
  • feat: new crate for no-std groth/plonk verification
  • feat: executor optimizations
  • fix: Revert "feat: executor optimizations"
  • perf: remove redundant last compress
  • fix: empty shape config
  • feat: executor optimizations + separate postprocess
  • perf: add batch FRI precompile
  • chore: fix comments and logging for select precompile
  • perf: implement local-only optimization
  • chore: update network-v2 proto
  • docs: separate SP1VerifierGateway for PLONK and Groth16
  • docs: generating-proofs.md
  • feat: new device proving key API
  • perf: build time GRO-146
  • docs: change docs for updated function call
  • feat: new precompile secp256r1
  • fix: lock file
  • feat: plonk verification with .bytes()
  • feat: add issue template
  • ci: check lock files in ci
  • chore: lockfile cleanup
  • chore: add MSRV of 1.79
  • docs: verifier crate docs
  • chore: crates substrate_bn version
  • feat: v3 audit report
  • feat: more docs about v3
  • docs: ci optimizations
  • fix(recursion): avoid double counting children in (cycle tracker) spans
  • docs: version nits

v3.3.0

20 Nov 19:33
3bbf4cf
Compare
Choose a tag to compare

📦 Uncategorized

  • fix: remove stdin from SP1ProofWithPublicValues
  • feat: verifier crate
  • feat: fix for verifier crate
  • fix: ecdsa recovery failure may cause executor to panic

v3.0.1-alpha-b976ea6e

13 Nov 21:02
b976ea6
Compare
Choose a tag to compare
v3.0.1-alpha-b976ea6e Pre-release
Pre-release

📦 Uncategorized

  • docs: change docs for updated function call
  • feat: new precompile secp256r1
  • fix: lock file
  • feat: plonk verification with .bytes()
  • feat: add issue template
  • ci: check lock files in ci
  • chore: lockfile cleanup
  • chore: add MSRV of 1.79
  • docs: verifier crate docs
  • chore: crates substrate_bn version
  • feat: v3 audit report
  • feat: more docs about v3
  • docs: ci optimizations
  • fix(recursion): avoid double counting children in (cycle tracker) spans
  • docs: version nits

v3.0.0

18 Oct 18:05
ff8f482
Compare
Choose a tag to compare

We're excited to release SP1 v3.0.0! SP1 v3.0.0 comes with two major performance upgrades:

  • Optimized phase 1 proving
  • Recursion circuit to improve recursion performance

It's available on crates.io with the version tag v3.0.0.

Changes

  • fix: gnark-ffi memory handling
  • feat: allow run in dev mode
  • fix: debug constraints
  • fix: shape for deferred program
  • feat: deferred support in perf
  • fix: clippy issues in perf
  • docs: update onchain usage
  • fix: add support for tls connections in network-v2 rpc client
  • fix: remove mention of sp1 dir in examples' relative paths
  • fix: typo in the solidity section of the book
  • fix: connect deferred vk root
  • chore: update docs
  • feat: update docs for v3 pt 2
  • feat: update cargo version tag
  • feat: v3.0.0

v3.0.0-rc4

16 Oct 18:50
169a13a
Compare
Choose a tag to compare

📦 Uncategorized

  • feat: v2.0.0
  • feat: new include_elf! macro for importing ELF
  • fix: build errors on custom bin target names
  • feat(cli): improve cargo prove new
  • fix(cuda-prover): dont discard stderr
  • chore(deps): bump bindgen from 0.69.4 to 0.70.1
  • chore(deps): bump stacker from 0.1.15 to 0.1.17
  • fix(sp1-build, workflows): docker tag
  • feat: phase 1 opts + recursion circuit
  • feat: update to 3.0.0-rc4
  • fix: fix docs
  • refactor: improve cargo build reproducibility
  • feat: add compiler flags to BuildArgs
  • fix: remove cargo environment vars from local build
  • fix: compatibility with mock verifier contract
  • fix(sdk): better error handling
  • chore: fix all typos
  • feat: v3.0.0-rc4

v3.0.0-rc3

09 Oct 22:13
Compare
Choose a tag to compare

📦 Uncategorized

  • perf: posedion2 trace opt
  • feat: make challenger fixed shape
  • feat: fixed size shrink and wrap for recursion v2
  • feat: small prog opts
  • fix everything
  • feat: merkle tree-based vector commitments
  • perf: GROTH16 improvements
  • feat: recursion circuit integration
  • feat: infrastructure for proof shape merkle proofs
  • feat: new arithmetic
  • chore: merge dev
  • chore: merge dev
  • chore: merge dev
  • Revert "chore: merge dev"
  • chore: merge dev
  • feat: integration constraints
  • chore: merge dev
  • feat: enable fixed shape in recursion circuit
  • chore: allow optional proof shape in core record and program
  • chore: merge dev
  • chore: merge dev
  • feat: fixed shapes in precompiles
  • feat: better reduce api
  • feat: dummy fri proofs
  • feat: fixed proof shapes
  • feat: added cuda action
  • fix: rsp ci test
  • revert: fix: rsp ci test
  • perf: local bus
  • feat: fixed heights for new chips
  • fix: low memory shards
  • feat(sdk): send cpu cycles in network
  • feat: dummy shard proof
  • refactor: removed use of sudo + docker from cuda crate
  • fix: copy_elf_from_output_dir binary name
  • feat: Add cycle-tracking example with multiple binaries
  • feat: vk maps
  • fix: local cumulative sum check in recursion
  • fix: rust 1.81 toolchain build issue
  • fix: uninitialized_memory hashmap issue
  • ci: test toolchain installation
  • docs: substrate bn
  • refactor: move SP1PublicValues to sp1-primitives
  • perf: remove unnecessary materializations of matrix views
  • chore: implement raw() for groth16 proof
  • chore: replace raw() with bytes() in fibonacci example
  • feat: public value validity assertions
  • feat: merge upstream changes
  • feat: fixed vks in root
  • feat: root and deferred
  • fix: check with is_first instead of is_last in exp reverse bits chip
  • feat: felts to var optimization
  • fix: gnark ffi fixes
  • fix: conversions and bits
  • fix: proof flow for v3
  • chore: upgrade Rust toolchain to 1.81.0
  • feat: remove exp reverse bits in wrap
  • docs: why-use-sp1.md
  • fix: gnark-ffi Dockerfile caching
  • chore: merge dev
  • chore: cleanup
  • fix: shapes fixing
  • fix: multi field rate and serialization
  • fix: execution shard initialization
  • fix: exit code
  • fix: vk root in deferred
  • fix: more shard options
  • fix: sp1-recursion-gnark-ffi rebuilds unnecessarily
  • fix: syscall chip in shards
  • chore: merge dev
  • Revert "chore: merge dev"
  • feat: BabyBear Optimization in GNARK
  • chore: remove individual example workspaces
  • chore: cleanup
  • chore: clippy without debug_assertions
  • chore: remove non-existent feature
  • chore: remove individual test workspaces
  • fix: multi_scalar_multiplication
  • docs: update
  • chore(sdk): update prost and twirp to 0.13
  • feat: precompile shapes
  • feat: runtime opts
  • feat: trusted setup support
  • chore: merge dev
  • chore: Fix typos in documentation
  • fix: weierstrass_add test
  • fix(docs): branch on patched bls12_381
  • feat: sp1 testing suite
  • feat: only call entrypoint in zkvm
  • feat: artifacts
  • feat: g16/plonk for network
  • small tweaks
  • chore: tweaks
  • feat(sdk): network-v2
  • chore: cargo machete
  • feat: shape artifacts in s3

v3.0.0-rc1

16 Sep 18:37
release/v3.0.0-rc1
f7e3e84
Compare
Choose a tag to compare
v3.0.0-rc1 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v1.3.0-rc1...release/v3.0.0-rc1