1. 引言
SP1为SuccictLab开源的,基于Plonky3构建的zkVM。
开源代码见:
- https://github.com/succinctlabs/sp1(Rust,基于Plonky3)
当前暂未实现onchain-verifier,但会采用标准的STARK->SNARK verifier。
SP1 zkVM基于的指令集为:
- riscv32im(与RISC Zero的指令集一样)
在SP1 zkVM中运行某程序之前,需将该程序编译为RISCV可执行文件(*.elf)。
当前SP1 zkVM支持的预编译有:【RISC Zero实现的Cryptography Acceleration有SHA256和256-bit modular multiplication】
- SHA256 Extend
- SHA256 Compress
- Keccak256 Permute
- Ed25519 Add
- Ed25519 Decompress.
- Secp256k1 Add
- Secp256k1 Double
- Secp256k1 Decompress
对应的patched crates为:【实际都是fork的其它库?但无fork链接记录?】
| Crate Name | Repository |
|---|---|
| sha2 | succinctlabs/RustCrypto-hashes |
| ed25519-consensus | succinctlabs/ed25519-consensus |
| alloy-core | succinctlabs/alloy-core(未开源当前?) |
| tiny-keccak | succinctlabs/tiny-keccak |
| dalek-ng | succinctlabs/dalek-ng |
https://github.com/succinctlabs/sp1(Rust,基于Plonky3) SP1采用了BabyBear域和Poseidon哈希函数:
- BabyBear为31-bit素数域,是Goldilocks域的精神继承者,可在CPU上和GPU上提供速度。
- 由于证明验证通常需要大量哈希运算,因此Poseidon2提供了极快的STARK递归。
参考资料
[1] SP1 Book
[2] 2024年2月15日 twitter SuccictLab开源SP1 ZKVM
SP1是SuccinctLab的开源项目,使用Plonky3构建,支持RISC-V架构。目前不包含onchain-verifier,但计划采用STARK-SNARK验证器。文章介绍了SP1支持的RISC-V可执行文件和预编译的加密算法,如SHA256、Ed25519等。

被折叠的 条评论
为什么被折叠?



