Continuations:扩展RISC Zero zkVM支持(无限)大计算

文章介绍了RISCZero如何利用Continuations技术在zkVM中实现自动可扩展的零知识证明,克服了传统方法的局限,支持大规模计算,如EVM和WASM的执行。通过Merkle-ized快照和分段证明,它使得新应用如zkEVM和多玩家游戏成为可能。
摘要由CSDN通过智能技术生成

1. 引言

前序博客:

在这里插入图片描述
RISC Zero在2013年5月的0.15版本中,引入了Continuous机制:

  • 移除了证明生成时的“cycle limit”限制
  • 解锁了在RISC Zero zkVM中运行EVM interpreter或WASM interpreter的能力
  • 扩展为可支持(无限)大计算

Continuous机制的核心思想为:

  • 将execution切分为segments
  • 并行证明每个segment
  • 将所有结果汇总

2008年,中本聪展示了如何借助经济激励,以trustless方式解决verifiable compute,但是,该方案并不支持:

  • Non-trivial computations
  • 高频/低延迟交互
  • 私有数据
  • 扩容:所有人都必须rerun所有计算。

2016年,Zero-knowledge circuits(零知识电路)提供了部分解决方案,但存在如下问题:

  • 特别复杂
  • 高开销
  • 高耦合性/低敏捷性
  • 缺少图灵完备性

最终解决方案为:

  • RISC Zero zkVM:基于RISC-V ISA指令集。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

RISC Zero zkVM充分拥抱了过去几十年的计算机工程化insights,如:

  • 开源更有益
  • 消费级硬件 胜过 大块头硬件
  • 程序员生产力取胜
  • 标准化提供大量价值
  • 通用性 优于 专用性
  • scale扩容(规模)很重要

2. scale很重要

以Apple II为例,其最大g规格为:

  • 6502 CPU clocked at 1.023 MHz
  • 64 kB RAM
  • 5 1/4 floppy with 140kB storage

而与之对比的是:【计算和数据需求在持续增长】

  • 60 kLoc (Rust)in zkVM
  • 约170k words in English language
  • 约 1.1M commits to Linux kernel
  • 约 175B parameters in GPT-3

这么来看scale扩容很重要。

但是ZK扩容是hard的——2023年初,ZK扩容存在的问题为:

  • ZK是基于约束证明的
  • 证明性能随约束数降级
  • 密码学基础设置了扩容上限:如RISC Zero zkVM,其所选择的Baby Bear域,支持的扩容上限为 2 28 2^{28} 228——从而限定了cycle limit最大为 2 28 2^{28} 228
  • “传统”解决方案为:递归(recursion)
    • ZK recursion理论上很强大,但实际上很复杂。

为此,希望能为应用实现自动可扩容ZK(Scalable ZK that’s automatic for applications):

  • Continuations:zkVM内的扩容。

3. Continuations:zkVM内的扩容

在这里插入图片描述

continuations的核心思想为:

  • 将execution切分为segments
  • 并行证明每个segment
  • 将所有结果汇总。每个receipt对应一个segment。

continuations这种设计思想的好处在于:

  • zkVM可自动切分
  • segment size可配置:
    • 支持低内存环境
  • 支持并行证明

如下为配置、执行和证明示例代码:
在这里插入图片描述
在这里插入图片描述

当前RISC Zero zkVM支持2种类型的receipt:

  • 1)flat continuations
  • 2)rolled up continuations

在这里插入图片描述

3.1 continuations工作原理

segmented执行和证明:

  • 正常执行该程序:
    • 每N个cycles做状态快照
  • 切分证明
  • 将proofs汇总

这就要求高效快照:

  • Merkle-ized pre/post states

片段化执行和证明示意图为:
在这里插入图片描述
而Merkle-ized pre/post states示意为:
在这里插入图片描述
其中ImageId本质为某Merkle tree的root哈希,该Merkle tree由所有内存中的pages哈希组成。

3.2 continuations使新应用成为可能

continuations使新应用成为可能,如:

  • zkEVM:如Zeth:首个Type 0 zkEVM
  • zkWASM
  • Central-limit order book
  • Multiplayer games
  • Verifiable software compilation
  • OpenID for EIP-4337(账户抽象)

参考资料

[1] RISC Zero团队2023年6月培训视频 Continuations: Scaling in zkVM (RISC Zero Study Club)
[2] RISC Zero 2023年5月视频 RISC Zero - Paul Gafni (RISC Zero)【slide见RISC Zero @ ZK Symposium

RISC Zero系列博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值