视频内容详情
B 站:https://www.bilibili.com/video/BV1NUdZYQEij
Youtube:https://www.youtube.com/watch?v=xcjWtrJrn3I&t=26s&ab_channel=DappLearning本次研讨会由 Dapp Learning 开发者社区举办,RISC Zero 高级工程师 Angelo Capossele 主讲,重点介绍了基于 RISC Zero 技术的 Boundless 协议及其相关产品。演讲核心在于指出当前零知识 (ZK) 证明技术的局限性(依赖单方、成本高昂、部署复杂、通用性差),并提出 Boundless 作为解决这些问题的“通用 ZK 协议”。Boundless 旨在实现 ZK 证明的普遍部署、经济可行性和高性能,支持跨各种区块链层和应用。
Angelo Capossele 详细阐述了 Boundless 的架构(应用层、市场、证明者)以及其技术基础——RISC Zero zkVM (R0VM)。通过具体产品(Foundry 模板、Steel、OP Kailua、zeth)的介绍,展示了 Boundless 如何将 ZK 技术应用于实际场景,例如链下 EVM 计算协处理、Optimistic Rollup 混合 ZK 升级、以及以太坊 /Optimism 区块的 ZK 证明。此外,研讨会还详细介绍了 Boundless 市场的运作机制(去中心化证明生成市场、反向荷兰式拍卖)以及证明者所需的硬件和软件(Bento、Broker),并鼓励开发者和合作伙伴基于 Boundless 构建,强调即将到来的主网(Q2)发布。
引言:ZK 的承诺与现实挑战
ZK 技术最初的承诺是美好的:
- • 实现 证明执行而非重复执行,从而提高效率并降低成本。
- • 促进 无需信任的跨链桥接,连接不同的区块链生态系统。
- • 支持各种资产(如 BTC, ETH)和协议的 迁移和互操作性。
image然而,实践中 ZK 技术却存在诸多不足:
- • 依赖单一方: 通常依赖于中心化的证明者或基础设施。
- • 成本过高: 生成 ZK 证明的硬件和计算成本高昂。
- • 部署周期长: 集成和部署 ZK 方案复杂且耗时。
- • 通用性差: 在不同区块链或应用场景中使用困难。
imageBoundless 协议:通用 ZK 解决方案
Boundless 被定位为“通用 ZK 协议”,旨在解决上述 ZK 的现实挑战。它通过以下方式“修复”了这些问题:
- • 实现 经济可行的无限制执行,突破链上计算的限制。
这些能力为 Boundless 带来了关键的属性:
Boundless 核心组件
Boundless 的核心架构包含三层:
- 1. 应用层: L1、L2、协议、Dapps 等需要 ZK 证明的应用。
- 2. 市场 (Market): 去中心化的证明生成市场,连接需求方与提供方。
- 3. 证明者 (Provers): 运行硬件和软件生成 ZK 证明的实体。
image应用层通过市场与证明者交互,实现链上或链下提交证明请求,证明者生成证明并通过市场结算,应用层最终在链上通过 RISC Zero 验证合约验证证明。
技术基础:R0VM
Boundless 基于 RISC Zero 的 zkVM(零知识虚拟机) 技术,具体称为 R0VM。
- • 标准 VM:程序 + 输入 -> VM -> 输出。
- • zkVM:程序 + 输入 -> zkVM -> 输出 + 证明。
zkVM 的关键在于额外生成一个证明,证明程序在给定输入下正确执行并产生特定输出。
- • Guest Code: 使用 Rust 等语言编写,包含需要 ZK 证明的计算逻辑。此部分代码将在 zkVM 中执行,开发者可通过标准的 Rust 编程范式实现复杂逻辑,随后生成可以被证明的计算。
- • 编译: Guest Code 被编译成针对 RISC-V 架构的 ELF(二进制可执行格式)文件。R0VM 基于 RISC-V 指令集架构,因此能保持通用性与可验证性。每个编译后的 ELF 对应一个唯一的 Image ID(镜像标识符),用于后续证明验证中的一致性校验。
- • 执行: R0VM 作为宿主环境(Host)加载并执行该 ELF 文件,运行期间,Guest Code 可通过提供的 API(如 env::commit())向外部暴露特定的中间或最终计算结果。
- • 输出: 执行完成后,R0VM 生成两个关键输出:
• Journal(公共输出):表示程序执行过程中的部分输出结果,可被外部系统读取和使用,例如链下服务或智能合约。
• Receipt(收据):包含一份 零知识证明和执行上下文元数据,用于证明计算的正确性。该证明可以被任何验证者使用 RISC Zero 的验证器合约或工具链进行快速验证,而无需重新执行计算过程。
Boundless 核心产品与应用
Boundless 平台上的产品展示了 ZK 技术的强大应用
- 1. Boundless Foundry 模板(is-even 示例)
这是一个基础的零知识证明(ZK Proof)示例,用于展示如何在 Foundry 环境中集成 RISC Zero 的 zkVM。
🧱 Guest 代码(Rust)
- • 使用 Rust 编写,用于处理需要 ZK 证明的逻辑。
- • 判断该数字是否为偶数:
!number.bit(0)
。 - • 如果是偶数,则使用
env::commit_slice
将结果写入 Journal。 - • Journal 中的数据按照 Solidity 的 ABI 格式进行编码。
🛠 智能合约部分(Solidity)
- • 包含一个
uint256 number
状态变量。 - •
set
函数接受两个参数:数字 x
和对应的证明 seal
。 - • 函数将
x
编码为 Journal:abi.encode(x)
。 - • 然后通过调用验证器:
verifier.verify(seal, imageId, sha256(journal))
来验证证明的有效性:
- •
imageId
:对应 Guest 程序的唯一标识 - •
sha256(journal)
:对 Journal 的哈希
通过这个流程,智能合约可以在不执行具体逻辑的情况下,验证链下执行是否正确。这种方式可以显著节省 Gas 成本,并增强合约的安全性与扩展性。
image
- • 目标:使 EVM 应用能够在链下执行无限制的计算,并在链上验证结果。
功能:允许 Solidity 开发者将复杂计算移至链下,通过零知识证明在链上验证结果,从而大幅降低 Gas 成本,并实现传统 EVM 无法完成的应用。
工作原理: - • 状态获取:Steel 从任何 EVM 链拉取状态(例如,通过
eth_getProof
获取账户状态,并验证 Merkle 证明)。 - • 链下执行:在 zkVM 内部使用
revm
模拟 EVM 环境,允许 Guest 程序使用 Alloy 库的 sol!
宏执行链下 View Call。 - • 结果提交:Guest 程序在 zkVM 中执行这些 View Call,验证结果(如余额是否满足条件),并将承诺(Commitment)和相关数据提交到 Journal。
- • 示例:一个 Steel 证明验证了相当于 30 个以太坊区块的计算,节省了 12 亿 Gas,生成证明成本低于 $10,链上验证成本低于 30 万 Gas。
- • 传统方法:在 Solidity 中,
increment
函数需要链上执行 checkBalance (>1)
,成本较高。 - • 使用 Steel:通过验证 Steel 生成的链下余额证明,
increment
函数成本较低。链下验证通过调用 Steel.validateCommitment
和 verifier.verify
完成。
- • 支持使用
blockhash
操作码承诺区块哈希(最多 256 个区块)。 - • 支持使用 EIP-4788 合约承诺 Beacon 区块根,延长验证窗口至一天以上。
- • Steel History:查询 24 小时前的状态。
- • Steel Events:安全地在链上验证和使用以太坊事件。
通过 Steel,开发者可以突破 EVM 的计算限制,实现更复杂、高效的去中心化应用。
- 3. OP Kailua:Optimistic Rollup 的混合 ZK 方案
- • 目的: 升级 Optimistic Rollups 到 混合 ZK Rollups,最初支持 Optimism 的 Kona 引擎。
- • 创新: 引入一种新型的 欺诈证明博弈,利用 ZK 证明改进争议解决,降低抵押品要求和最终确定性延迟。
- • 核心组件: ZK 争议合约(兼容 OP Stack)、CLI 迁移工具、状态提议者代理、Rollup 验证者代理。
- • 解决 Rollup 核心问题: 将证明成本转嫁给不诚实的参与者;利用去中心化证明市场降低参与门槛;将现有 Rollup 的抵押品成本从线性降低到常数。
- • 对比分析: 提供 Optimistic Rollups、ZK Rollups 和 Hybrid Rollups (OP Kailua) 的对比表,突出 Kailua 在抵押品(常数 1 vs 线性 N)、挑战成本 / 延迟方面的优势。
image- • 目的: 为以太坊和 Optimism 提供 ZK 执行层区块证明。
- • 能力: 无需依赖验证者 / 同步委员会,即可证明一个区块序列是有效的。
- • 工作原理: 在 zkVM 内部执行区块,处理交易签名验证、状态树验证、应用交易、支付区块奖励、更新状态根等任务。利用
reth
(Rust 实现的以太坊执行客户端)在 zkVM 内完成这些工作,最终生成一个有效区块执行的 ZK 证明。
Boundless 基础设施:市场与证明栈
Boundless 生态系统的运行依赖于其基础设施:
- • 流程: 应用提交证明请求(链上交易或链下订单流)-> 市场转发给证明者 -> 证明者竞标 / 生成证明 -> 证明者向市场合约提交证明结算 -> 市场合约验证证明(可聚合)-> 应用获取证明 -> 应用通过 RISC Zero 验证合约在链上验证最终证明。流程中包含链下订单流。
- • 优势: 保证证明交付、提供最佳延迟 / 价格(无冗余工作)、无单点故障、证明主权。
- • 证明请求: 应用开发者广播请求(链上交易或链下订单流)。市场采用 反向荷兰式拍卖。请求包含程序镜像 URL、输入、以及
Offer
结构体(定义最低 / 最高价格、竞标开始时间、价格上涨周期、超时时间、锁定超时时间、锁定抵押金等)。拍卖图表展示价格随时间下降。 - • 定价: 提供证明单位成本(ETH/Megacycle)的历史市场数据,展示市场价格发现过程。
image- 2. Boundless 证明栈(Bento 和 Broker)与证明者要求
- • 证明者: Boundless 寻求“经验丰富的参与者”来构建“最佳证明者集合”,注重服务质量、加速硬件经验,同时保持开放性以促进创新和活跃度。
- • Bento: RISC Zero zkVM 的半多租户证明集群软件。一个可配置的 Docker Compose 栈,支持多 GPU/ 多机器,处理任意大小的证明,提供安全存储、重试系统和证明管理 API。
- • Broker: 负责证明者与市场交互的软件。评估、竞标、锁定请求,向 Bento 下发任务,以及提交链上结算。通过
broker.toml
文件配置。 - • 硬件(推荐最低配置): CPU(16 线程,单核 >3GHz),内存(32GB),磁盘(200GB SSD/NVME),GPU(10 块 NVIDIA RTX 3080 或 T4,每块 8GB VRAM)。配置低也能运行,但不具备竞争力。
- • 操作系统 / 依赖: 仅支持 Ubuntu 20.04/22.04。需要 Docker Compose 和 Docker Nvidia 支持。
- • HP Tokens: 证明者在赢得竞标时需要质押 HP Token(托管系统)。提供了申请 Token 的表格链接。
开发者与证明者参与
- • 使用 Boundless SDK 构建: 研讨会演示了如何使用 Rust SDK。包括客户端初始化、上传程序镜像和输入、本地执行(
ExecutorEnv
, execute
)以估算 Cycles 和验证可证明性、创建 ProofRequest
(指定镜像 URL、输入、要求、Offer),提交请求(链上 submit_request
或链下 submit_request_offchain
),等待请求完成(wait_for_request_fulfillment
)以获取 Journal 和 Seal。 - • 链上证明验证: 使用 Foundry 模板示例,演示了如何在智能合约中接收 Journal 和 Seal,利用 Alloy 的
sol!
宏生成合约绑定,创建合约实例,并广播包含证明的交易。智能合约调用 RISC Zero verifier contract
的 verify
函数来验证 Seal,检查其是否对应正确的 imageId
和 Journal 的哈希。验证成功后,智能合约状态得以更新。
核心技术概念解释(通俗语言)
- • R0VM: RISC Zero 特定的 zkVM。你可以用 Rust 等语言编写代码,编译后 R0VM 会执行它并生成一个证明。
- • Journal: 日志 / 公共输出。zkVM 中计算的公开结果或输出。这是你希望公开并证明其正确性的信息。
- • Receipt/Seal: 收据 / 密封。实际的 ZK 证明本身。一段数据,允许任何人在不重新执行程序的情况下,验证 zkVM 中的计算确实如声称的那样发生,并且与 Journal 和使用的程序匹配。
- • View Call (EVM): 查看调用。在区块链上读取智能合约信息的一种方式,通常不改变合约状态,也不消耗 Gas。Steel 允许你在 zkVM 内部 链下 执行这些查找,并证明结果的正确性。
- • Fault Proof Game: 欺诈证明博弈。一些区块链 Rollup(如 Optimistic Rollups)中的系统,假定新的状态是正确的,除非有人能证明其中存在错误(即“欺诈”)。OP Kailua 使用 ZK 证明更高效地证明这些“欺诈”。
- • Hybrid ZK Rollup: 混合 ZK Rollup。一种灵活使用 ZK 证明的 Rollup 类型,结合 Optimistic Rollup 和全 ZK Rollup 的优点,以获得更低的成本和更快的最终确定性。
- • Boundless Market: Boundless 市场。一个去中心化的在线市场,需要 ZK 证明的人(应用开发者)可以提出请求,能生成证明的人(证明者)可以竞标工作并获得报酬。
- • Bento & Broker: 证明者使用的软件工具。Bento 是负责实际运行高强度证明生成工作的集群软件。Broker 是负责管理 Bento 并代表证明者与 Boundless 市场交互的软件。
展望与行动号召
演讲宣布 Boundless 主网计划于 第二季度(Q2) 启动。展示了许多正在使用 Boundless 构建的合作伙伴。
核心要点与结论
- • 范式转变: ZK 证明实现了从昂贵链上重放执行到廉价链上证明验证的转变。
- • 通用平台: Boundless 作为通用 ZK 协议,旨在克服现有 ZK 局限,实现普遍部署和经济可行性。
- • 实用产品: Steel、OP Kailua、zeth 等产品将 ZK 技术应用于具体场景,如 EVM 扩容、Rollup 优化、区块证明,展现了巨大潜力。
- • 去中心化市场: Boundless 市场连接证明需求方和供应方,通过市场机制优化证明生成过程。
- • 完善工具: Boundless 提供 SDK、Proving Stack (Bento, Broker) 和详细文档,支持开发者和证明者轻松参与。
- • 蓄势待发: Q2 主网启动和众多合作伙伴的加入,表明 Boundless 已准备好迎接广泛采用。
RISC Zero 的 Boundless 协议及其产品套件(Steel, OP Kailua, zeth 等)代表着 ZK 技术迈向主流应用的关键一步。通过解决当前面临的挑战,Boundless 为构建更高效、经济、安全和无需信任的区块链应用提供了强大的基础设施和工具集。本次研讨会清晰地传达了这一愿景和实现路径,并向社区发出了共同构建未来去中心化世界的号召。
本文总结视频内容详情B 站:https://www.bilibili.com/video/BV1NUdZYQEij
Youtube: https://www.youtube.com/watch?v=xcjWtrJrn3I&t=26s&ab_channel=DappLearningTwitter: https://x.com/dapp_learning也欢迎来 Dapplearning 社区学习分享交流更多关于密码学和区块链方面的知识应用。
