1. 引言
SP1为SuccictLab开源的,基于Plonky3构建的zkVM。
开源代码见:
- https://github.com/succinctlabs/sp1(Rust)
当前暂未实现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 | 
参考资料
[1] SP1 Book
 [2] 2024年2月15日 twitter SuccictLab开源SP1 ZKVM