
zkEVM – Hermez 设计思路
了解 Layer2 技术现状(特别是对 zk Rollup 技术)的小伙伴,知道 zk Rollup 目前不支持 EVM,缺失可编程性 / 可组合性,让 zk Rollup 限制在特定场景。zkEVM,通过 zkp 技术证明 EVM 的执行过程是非常有挑战的技术难点。
EthCC 4 会议上 Hermez 团队 介绍 了他们对 zkEVM 的理解和设计:
https://www.youtube.com/watch?v=17d5DG6L2nw
Hermez 团队负责人 Jordi Baylina 比较清晰地给出了 zkEVM 大体的设计思路。本文梳理一下对 zkEVM 设计的理解。抛砖引玉,有理解偏差,小伙伴们可以留言讨论。
虚拟机证明
Jordi 在演讲开头提出:The Ethereum Virtual Machine was not designed to run in a zk-circuit (以太坊虚拟机在设计时并没有考虑 zk 电路证明)。也就是说,zkEVM 天生比较难。当初设计 EVM 的时候并没有考虑到后期还需要 zk 进行证明。在这种情况下,目前有三条路可以走:
第一条:从头设计一种新的虚拟机,该虚拟机对 zk 友好,方便证明。不需要理会 EVM。
第二条:从头设计一种新的虚拟机,该虚拟机对 zk 友好,方便证明。适配当前的 EVM 的开发工具,保持 solidity 兼容。
第三条:直接支持 EVM 指令集,完全兼容 solidity 指令集。
Hermez 团队选择了第三条。其他两种做法在当前的环境下,不太经济。Hermez 给出了选择第三条路的理由:
总的来说,就是兼容性好,安全性高。
总体思路
因为 EVM 在设计当初没有考虑 zk 电路证明,支持 solidity 指令集需要引入中间指令(micro opcode)。这些中间指令比较适合电路证明。这些指令构成 uVM。EVM 需要编译在 uVM 中执行。
众所周知,EVM 有一些变长的指令,比如 CALL,DATACOPY,EXP,CREATE 等等。这些指令天生对电路证明不友好。利用中间指令能相对友好地“表达”出这些指令的逻辑。
对于一个区块中的所有交易,相关的指令可以一个个的执行。执行的模型是:老的状态 + 所有交易指令 -> 新的状态。一个细节是状态的迁移是以区块为单位,并不是以交易为单位的。
多项式承诺
在继续解释细节实现之前,Jordi 简单介绍了一下多项式承诺。多项式有两种表示方式:1/ 系数表示 2/ 点值表示。
在给定一个多项式承诺(cm)的情况下,验证者可以提供随机挑战 r,证明者必须给出多项式在 r 的取值以及承诺证明。随机挑战值 r,可以通过 Fiat-Shamir 算法产生,将交互式的协议变成非交互式协议。在给出多个多项式承诺证明的前提下,通过取值的关系可以确定多项式之间的关系。通过多项式承诺可以证明如下的多项式关系:
多项式相等,多项式取值等等。熟悉 Plonk 或者 Plookup 协议的小伙伴应该知道,这些协议的基础就是多项式承诺。
uVM 的整体框架
uVM 由如下的模块组成:ROM,RAM,Storage 以及各种计算功能模块。Main SM (主状态机)由子模块组成。
需要证明程序的执行状态正确,要保证如下的一些状态正确:
如何证明执行程序正确?
执行程序存储在 ROM 中。将指令和位置进行编码后,得到执行程序的多项式表示 rom (x)。将 Main SM 中的代码执行指令和 PC 进行同样的编码后形成的多项式 instTrace(x)。无论这份代码如何执行(循环的次数,跳转方式),instTrace(x) 中的元素都应该属于 rom(x)。这种从属关系可以采用 Plookup 协议进行证明。
注意的是,instTrace 指的是执行实例的 Trace。虽然,通过 Plookup 能证明 instTrace(x) 中的元素属于 rom(x),但是 instTrace(x) 的执行正确性并没有证明。试想一下 instTrace 中少一两条指令,同样满足从属关系。简单的说,这种从属证明只是证明了 Main SM 和 ROM 状态的一致性。
内存状态正确?
在 Main SM 中的内存的读写情况,应该和内存 RAM 的状态一致。这种一致也是通过 Plookup 协议进行证明。
内存 RAM 本身逻辑是否正确需要额外证明。
存储状态正确?
uVM 的存储是通过 key-value 对实现。所有存储(key-value 对)用 merkle 树进行组织。所以,存储模块包括 merkle 树和 hash 计算。Plookup 协议可以证明多个模块之间的一致性。
整体证明构成
一个程序的执行状态的正确性分割成多个子模块的状态正确性验证。总之,证明包括两部分:1/ 单个模块的逻辑正确 2/ 模块和模块之间的一致性。
证明大量采用多项式承诺。验证这些多项式承诺需要不小的开销。Jordi 提出了多种验证思路:
第一种:多个 Kate 多项式承诺在链上验证。
第二种:多个 Kate 多项式承诺通过 Plonk 电路验证(配对还是在链上验证)。
第三种:多个 Stark 多项式承诺通过 Plonk 或者 Groth16 电路进行验证。
总结
EVM 在设计时并没有考虑到 zk 电路证明。Hermez 提出了 uVM 框架和指令集。作为中间指令集,方便 zk 电路证明,同时可以实现 solidity 指令集。一个程序的执行正确性分割成多个子模块状态的正确性。证明包括单个模块状态的正确性以及模块和模块之间的一致性。为了减少众多的证明单独在链上验证,可以采用电路验证。
比推快讯
更多 >>- 过去 24 小时全网爆仓 1.08 亿美元,共有 55,335 人被爆仓
- 市场消息:日本邮政银行计划 2026 年推出数字货币
- 比特币 OG12 小时抛售 4000 枚 BTC 并买入 9.7 万枚 ETH
- Greeks.Live:市场情绪呈现明显分歧,重点关注以太坊近期相对强势表现与资金流向
- 众安在线:众安科技拟向众安国际增资,后者与 Cosmos、OKG 等订立购股协议
- 美国 M2 货币供应量达 22.12 万亿美元,创历史新高
- Trend Research 转入 100 万枚 PENDLE 至币安,价值约 478 万美元
- Sonic Labs 社区投票通过美国市场扩张和 TradFi 采用计划提案
- Trend Research 于 5 分钟前将 203,105 枚 ENS 转入 Binance
- 美股未来 14 个交易日将迎关键经济事件影响
- 某新建钱包向 HyperLiquid 存入 100 万美元,以 25 倍杠杆做空 ETH
- QCP:企业财库让数字资产不再是投机性押注,而成为一种战略财务工具
- WLFI 公募投资者明日将解锁 33 亿枚代币,最高获利达 23 倍
- 数据:SUI、ENA、IMX 等代币将于下周迎来大额解锁,其中 SUI 解锁价值约 1.45 亿美元
- Blockstreet 联创:特朗普支持的 USD1 或在 2028 年超越 USDT 和 USDC
- 慢雾余弦:某用户遭 EIP-7702 钓鱼攻击,参与 WLFI 私募资产被全部盗走
- 分析师:市场处于修复阶段,衍生品市场卖方占优
- Binance:若每小时结算的 U 本位合约资金费率连续 36 个周期不高于 0.002%,将从每小时结算恢复为每四小时
- 美国贸易代表格里尔:关税裁决后,继续推进贸易谈判
- 投资者因私钥泄露被盗走全部 WLFI,涉 EIP-7702 钓鱼利用
- 某巨鲸两日内向交易所转入 1100 万枚 FORM
- Michael Saylor 再次发布比特币 Tracker 信息,或暗示再次增持 BTC
- 数据:监测到 1 亿 USDT 转入 Binance
- 欧易上线 WLFI (World Liberty Financial) 现货交易并转换盘前合约为标准永续合约
- 山寨币季节指数升至 59
- SharpLink 目前持有 79.77 万枚 ETH,浮盈达 7.53 亿美元
- 10x Research:韩国散户今年已买入超 120 亿美元美股加密公司股票
- 日本美甲沙龙运营商 Convano 拟募资 30 亿美元购入 2.1 万枚比特币
- 加州州长 Newsom 拟推出“特朗普腐败币”回应其加密争议
- 《富爸爸穷爸爸》作者:欧洲债务危机加剧,建议继续持有黄金、白银和比特币
- 某巨鲸向 HyperLiquid 存入 596 万美元 USDC 并开设 SOL 与 HYPE 多单
- Polymarket 上预测 WLFI 上线首日 FDV 超 200 亿美元概率达 82%
- Canary Capital CEO:XRP 在华尔街认可度仅次于比特币,ETF 推出后需求或将激增
- 美股明日将休市一日
- 高调换仓 ETH 的 BTC 远古巨鲸过去 6 小时再次将 2000 枚 BTC 转入 Hyperliquid,以换仓 ETH
- 麻吉大哥黄立成目前持有价值约 1.3 亿美元 ETH 和 HYPE 多单,浮亏约 85 万美元
- 数据:Tether 稳定币市场份额自 2023 年 3 月以来首次跌破 60%
- 数据:过去一个月 Polygon PoS 净流出 13 亿美元,以太坊净流入 21 亿美元
- 数据:ETH 三季度迄今涨幅已近 80%,或将创下历史最佳 Q3 表现
- 分析师:黄金仍可抵御股市抛售,比特币则可以对冲债券市场的压力
- 近 24 小时 Solana 发币平台市场份额排行:pump.fun、Meteora DBC、Letsbonk 位列前三
- Creditlink($CDL)预售结束,认购超 2.5 亿美元,即将上线 Aster DEX 与 Pancake Swap
- FORM 上涨触及 4 USDT,1 H 涨幅 10%
- 以太坊 PoS 网络退出队列降至约 96.6 万枚,加入队列升至约 77.3 万枚
- 数据:ETH 当前全网 8 小时平均资金费率为 0.0035%
- Metaplanet 股价自 6 月中旬以来已下跌逾 50%,融资飞轮正在失效
- Four.Meme 本期预售创 BNB Chain 募资新高,预售总额高达 2.52 亿美元
- Four.meme 平台项目 CDL 完成 2.52 亿美元募资,共 7.96 万地址参与
- 8 月以太坊链上 DEX 交易量超 1401 亿美元,创下史上最高月度纪录
- Metaplanet 自 6 月中下跌 54%,比特币收购战略遭遇融资压力
比推专栏
更多 >>观点
比推热门文章
- 【比推周末重点新闻回顾】马斯克的律师将担任一家规模为 2 亿美元的 Dogecoin 财务公司董事长;WLFI:协议治理权在安全风险或重大不利事件期间将完全由多签掌控;Michael Saylor 再次发布比特币 Tracker 信息,或暗示再次增持 BTC
- 过去 24 小时全网爆仓 1.08 亿美元,共有 55,335 人被爆仓
- 市场消息:日本邮政银行计划 2026 年推出数字货币
- 比特币 OG12 小时抛售 4000 枚 BTC 并买入 9.7 万枚 ETH
- Greeks.Live:市场情绪呈现明显分歧,重点关注以太坊近期相对强势表现与资金流向
- 美联储百年史上首次:特朗普试图罢免理事,9月降息局势生变?
- 众安在线:众安科技拟向众安国际增资,后者与 Cosmos、OKG 等订立购股协议
- 美国 M2 货币供应量达 22.12 万亿美元,创历史新高
- Trend Research 转入 100 万枚 PENDLE 至币安,价值约 478 万美元
- Sonic Labs 社区投票通过美国市场扩张和 TradFi 采用计划提案