Natasha De Vere, Attribution (CC BY 2.0)
Sphinx is an open-source zero-knowledge virtual machine (zkVM) that can prove the execution of RISC-V bytecode, with initial tooling support for programs written in Rust. Additionally, Sphinx aims to support other reduction engines, including the evaluator for the Lurk programming language , which could be extended to other functional languages like JavaScript or Lean.
Sphinx builds on the work of many organizations who have supported and contributed to open-source software. These organizations, and many others not listed, exemplify the principle that zero-knowledge cryptography is not a zero-sum game, and that when we make our work freely available for others to build on, the whole world benefits:
- Wormhole Foundation who has generously supported the project from the beginning both through awarding Argument a contributor grant, and through their broader ecosystem work.
- Succinct Labs, a fellow Wormhole ecosystem contributor, whose SP1 zkVM developed a novel approach to integrating custom precompile acceleration and integrated this with work from Risc Zero, Valida, Polygon and others to create an excellent packaged developer experience. Sphinx is a fork of SP1
- Risc Zero, who developed and maintain the riscv32im-risc0-zkvm-elf Rust toolchain and related tooling.
- Delendum and Lita Foundation, whose Valida zkVM influenced the cross-table lookup architecture, prover, borrow macro, and chip design of SP1.
- Polygon Zero whose Plonky3 STARK toolkit powers much of the above projects.
We sincerely thank all these teams and projects, and we are committed to upstreaming our contributions wherever possible.