RISC Zero项目简介

本文介绍了RISCZero公司如何通过其ZK技术支持的Bonsai服务和高性能工具RISCZerozkVM,简化零知识应用开发,尤其是通过通用ZK证明服务和Rust生态集成,提升效率。Bonsai支持链上和链下应用,且RISCZerozkVM允许开发者无需定制电路编写ZK应用。
摘要由CSDN通过智能技术生成

1. 引言

RISC Zero为致力于为为全球开发者创建利用ZK技术构建软件所需的基础设施和工具的初创公司。

ZK技术将重塑数字互动的方式。从历史上看,确认软件应用程序正确执行的唯一方法是通过冗余计算。ZK引入了一个新选项:可验证计算(verifiable computation)。

现在可将程序的输出与其self-certifying receipt结合,允许持怀疑态度的第三方验证执行的正确性——而且该verifier不需要重复原始计算,甚至不需要查看程序的输入!

可验证计算改变了我们所依赖的计算基础设施的弹性和经济性。它创造了许多喜闻乐见的新兴用例,如:

当前RISC Zero技术栈有:

  • Bonsai:proving服务,为软件开发栈,支持链上(即通过智能合约)和链下应用向RISC Zero zkVM请求和接收proofs。
  • RISC Zero zkVM:为可证明任意代码正确执行的高性能工具。
  • RISC Zero Proof System:为RISC Zero zkVM底层的密码学技术。

2. Bonsai

Bonsai发布于2023年,为支持链上和链下应用向RISC Zero zkVM请求和接收proofs的proving服务。

Bonsai为:

  • 通用ZK证明服务,支持任意链、任意协议、任意应用使用ZK proofs的优势。其高度并行、可编程,并性能优良。
  • 支持将ZK proofs直接集成到任意智能合约中,而不需要定制电路。
  • 支持将ZK直接集成到任意EVM链的dApps
  • 具备支持任意其它生态的潜力。

RISC Zero zkVM是Bonsai的基础,其具备广泛的语言兼容性,当前支持Rust,未来将支持可编译为RISC-V的其它语言,如C++、Go等等。

借助:

  • 递归证明
  • 专门定做的电路compiler
  • state continuations
  • 证明算法的持续改进

Bonsai将支持为大量应用生成高性能ZK proofs。

在这里插入图片描述
其中RISC Zero团队的Bonsai-ETH Relay作为dApp合约与Bonsai proving服务的中间人。为使用Bonsai ETH Relay,dApp开发者需完成:

  • 1)在链上部署一个智能合约,该智能合约调用RISC Zero的relay合约。
  • 2)将对RISC Zero zkVM编译的程序上传到Bonsai proving服务。

3. RISC Zero zkVM

RISC Zero zkVM首次发布于2022年4月,可证明任意代码的正确执行,支持开发者以成熟编程语言(如Rust和C++)来构建ZK应用。其发布意味着ZK软件开发的重大突破:

  • RISC Zero zkVM,使得开发者不需要构建电路,也不需要以定制语言来编写ZK应用。

RISC Zero zkVM支持开发者以Rust来构建,并利用Rust生态系统的成熟度,使得开发者可迅速构建有意义的ZK应用,而无需任何数学或密码学背景。

相关应用有:

  • JSON:证明JSON文件内某元素的内容,而保证其它数据的隐私。
  • Where’s Waldo:证明JPG文件中出现了Waldo,但保持该图像的其它部分的隐私。
  • ZK Checkmate:证明你发现了a mate-in-one,但不泄露该winning move。
  • ZK Proof of Exploit:证明你可利用某以太坊账号,但不暴露该利用。
  • ECDSA signature verification:证明某ECDSA签名有效。

所有这些例子都可利用成熟的软件生态:

支持引入Rust crates,将颠覆ZK软件世界的游戏规则:

  • 项目不再需要数月或数年才能开发完成。

RISC Zero在不断改进性能,当前支持CUDA和Metal GPU加速,并借助continuations支持对大型程序的并行证明。

4. RISC Zero Proof System

RISC Zero zkVM执行,会生成一个Receipt,用作特定Session的有效性证明:

pub struct Receipt {
    pub inner: InnerReceipt,
    pub journal: Vec<u8>, //包含该Session的公开输出。
    //journal的内容通过在guest代码中调用`env::commit()`和`env::commit_slice()`来指定。
}
pub struct Session {
    pub segments: Vec<Box<dyn SegmentRef>>, //The constituent Segments of the Session
    pub journal: Vec<u8>, //The data publicly committed by the guest program.
    pub exit_code: ExitCode, //The ExitCode of the session.
    pub hooks: Vec<Box<dyn SessionEvents>>, //The hooks to be called during the proving phase.
}

为确认该Receipt是诚实生成的,可使用Receipt::verify,并将所执行代码的ImageID作为参数,进行验证。

pub fn verify(
    &self,
    image_id: impl Into<Digest>
) -> Result<(), VerificationError>

此外,receipt对该程序的执行做了一些claims,具体见ReceiptMetadata

pub struct ReceiptMetadata {
    pub pre: SystemState, //The SystemState of a segment just before execution has begun.
    pub post: SystemState, //The SystemState of a segment just after execution has completed.
    pub exit_code: ExitCode, //The exit code for a segment
    pub input: Digest, //A Digest of the input, from the viewpoint of the guest.
    pub output: Digest, //A Digest of the journal, from the viewpoint of the guest.
}

Receipt主要有2种形式:

  • 可表示为一组SegmentReciepts,每个SegmentReceipt证明单个Segment。所有SegmentReceipts证明整个Session。
  • 可表示为单个SuccinctReceipt,以证明整个session的有效性。借助递归证明,任意数量的SegmentReceipts都可压缩为单个SuccinctReceipt。
pub struct SegmentReceipts(pub Vec<SegmentReceipt>);
pub struct SegmentReceipt {
    pub seal: Vec<u32>,
    pub index: u32,
    pub hashfn: String,
}

pub struct SuccinctReceipt {
    pub seal: Vec<u32>,
    pub control_id: Digest,
    pub meta: ReceiptMetadata,
}

密码学上,每个SegmentReceipt和SuccinctReceipt都是ZK-STARK.

参考资料

[1] RISC Zero简介
[2] RISC Zero Proof System
[3] Bonsai on Ethereum
[4] A Blockchain Developer’s Guide to the zkVM

RISC Zero系列博客

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
zero-riscy是一种基于RISC-V架构的处理器设计。RISC-V是一个开源指令集架构,相较于传统的复杂指令集架构(CISC),它更加精简和高效。zero-riscy是一个采用了RISC-V指令集的微处理器核心。 zero-riscy的设计目标是在保持性能的同时,尽可能的减少硬件资源和功耗。它采用了经典的五级流水线架构,并且在流水线中实现了指令级并行处理。此外,zero-riscy还采用了一些优化技术,例如指令预取、分支预测和数据前推等,以提高处理器的性能。 zero-riscy不仅仅是一个处理器核心的设计,它还提供了一整套开发工具和支持软件,使得开发者可以方便地进行软硬件系统的开发。这些工具包括编译器、模拟器、调试工具等。开发者可以使用这些工具将他们的应用程序编译成zero-riscy的指令集,并在模拟器上进行调试和性能优化。 由于zero-riscy是基于RISC-V架构的开源设计,它也在学术界和业界广泛使用。教育机构可以利用它来进行计算机体系结构的教学,研究机构可以使用它来进行新的处理器技术的研究,而企业可以将它作为嵌入式系统的核心来构建产品。 总之,zero-riscy是一种基于RISC-V架构的高性能、低功耗的处理器设计,它提供了一整套开发工具和支持软件,方便开发者进行软硬件系统的开发。它不仅仅是一种处理器核心的设计,同时也是一种开放、可扩展的平台,被广泛应用于学术界和工业界。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值