RISC Zero 是一种基于 zk-STARK 和 RISC-V 微架构的零知识可验证通用计算平台。
[!IMPORTANT]
main是开发分支。在构建应用程序或运行示例时,请使用 最新版本 代替。
[零知识证明][zk-proof]允许一方(证明者)向另一方(验证者)证明某事是真的,而不必透露所有细节。在 RISC Zero 的情况下,证明者可以证明他们正确执行了某些代码(这两方都知道),而只向验证者显示了代码的输出,而不是任何输入或执行期间的状态。该代码在一个特殊的虚拟机中运行,称为 zkVM。RISC Zero zkVM 模拟一个小型 [RISC-V] 计算机,允许它以任何语言运行任意代码,只要存在一个针对 RISC-V 的编译器工具链。目前,SDK 支持 Rust、C 和 C+。
首先,要证明的代码必须从其实现语言编译为一个 方法。一个方法由一个 RISC-V ELF 文件表示,其中包含一个特殊的入口点,用于运行方法的代码。此外,对于给定的方法,可以计算其 图像 ID。图像 ID 是 ELF 文件的一种特殊加密哈希,用于验证。
接下来,主机程序运行并证明 zkVM 内部的方法。zkVM 内部运行的逻辑 RISC-V 机器称为“客户机”,运行 zkVM 的程序称为“主机”。客户机和主机在方法执行期间可以相互通信,但主机无法修改客户机的执行。
暂无开放 Issues,或尚未同步最近议题。