Succinct SP1是Succinct Processor 1 的简称。是Succinct的第一代零知识虚拟机 (zkVM),用于验证任意 Rust(或任何 LLVM 编译语言)程序的执行。与现有的 zkVM 相比,SP1 的目标是实现一个数量级的性能提升
SP1 是一个 100% 开源、对贡献者友好的公共产品。它采用协作方式为汇总、协处理器和其他 ZKP 应用程序构建最佳 zkVM。SP1 的目标是打破难以定制的黑盒 zkVM 现状,并与最新的证明系统进展保持同步。
1、SP1 在多种实际工作负载上实现了最佳性能,这些工作负载的灵感来自常见的区块链用例,例如桥接和验证 Merkle 证明。我们的性能得益于多种设计选择,这些设计选择利用了最新的证明系统进步,包括跨表查找架构、可自定义的“预编译”系统等
SP1首次表明通用 zkVM 的性能可与基于电路的方法相媲美,同时将开发人员的工作效率提高几个数量级。在实际工作负载上,SP1 的性能比现有 zkVM 高出 28 倍
我们对各种程序进行了 SP1 基准测试,结果表明在三种实际工作负载下性能提升了 4-28 倍。我们的基准测试在一台配备 64 个 ARM CPU 和 512GB RAM 的机器上测量端到端验证时间。在生产中,对于这两种方法,通过跨集群并行验证可以显著降低延迟。
2、SP1 的极快速度改变了 ZK Tendermint 轻客户端等实际应用,将验证时间从 2.2 小时缩短至4.6 分钟。
SP1 与基于电路的方法相比具有竞争力,同时将开发人员的工作效率提高了 100 倍以上
在以下情况下,我们对使用 SP1 验证的程序与 Succinct 团队之前为生产中的各种重要用例编写的 SOTA 定制电路进行了基准测试。在 SSZ Merkle 证明验证程序的情况下,VM 实际上比电路更快,因为 VM 的灵活性允许进行电路不允许的条件计算。 与定制电路相比,SP1 的开发时间要快 100 倍以上,而且更易于维护,同时证明生成速度/成本仍然具有竞争力。
1、如今,zkVM 是由孤立的公司整体构建的,因此很难定制并跟上最新进展。我们对这种方法提出挑战。SP1是 100 % 开源的(MIT/Apache 2.0),没有代码混淆,并且对贡献者友好,所有开发都是在公开的情况下完成的。与现有的 zkVM 的约束逻辑是闭源的并且无法修改不同,SP1 采用模块化架构,从第一天起就可以定制。这种可定制性(SP1 独有)允许用户在核心 zkVM 逻辑中添加“预编译”,从而显着提高性能,使 SP1 的性能不仅与现有的 zkVM 相比处于领先地位,而且在各种用例中都可以与电路相媲美。
2、拥抱开源市场。SP1 尽可能地利用Plonky3等高质量、生产级开源依赖项,以配合 ZK 创新的迅猛发展,构建面向未来的zkVM 。我们认为终端 zkVM 类似于 Linux 项目:免费的开源软件,经过许可授权,并由来自不同公司和地区的活跃贡献者社区维护。目前,多个团队和个人已将 PR 合并到 SP1,其中包括 Succinct Labs、Sina(CEO、Witness)、Aayush(ZK 邮件)、Preston(CTO、Sovereign Labs)等。
1、优化的 Tendermint 轻客户端
2、优化的以太坊轻客户端
3、无状态 EVM 协处理器