• 简体版 | 繁體版
  • 联系我们
  • 加入我们
  • 关于我们
  •  
  • 首页
  • 快讯
  • 价值号
  • 视频
  • 专题
  • 深度
  • 入驻价值号
  • 碳链APP
    微信公众号

    扫码下载App

  • 登录
  • 微信公众号

    微信公众号

导航
  • 首页
  • 快讯
  • 区块链+
  • 价值号
  • 视频
  • 专题
  • DeFi优选
碳链价值APP
专注服务于金融科技和区块链
立即打开

Vitalik 详解 5 种不同类型的 ZK-EVM

巴比特资讯巴比特资讯  •  2022-08-05
兼容性和速度哪个更重要?

注:原文作者是以太坊联合创始人 Vitalik Buterin。

特别感谢 PSE、Polygon Hermez、Zksync、Scroll、Matter Labs 以及 Starkware 团队的讨论和审查。

最近有很多“ZK-EVM”项目发布了华丽的公告,比如 Polygon 开源了他们的 ZK-EVM 项目,ZKSync 发布了他们的 ZKSync 2.0 计划,而相对较新的 Scroll 在最近也宣布了他们的 ZK-EVM。隐私和扩容探索团队(Privacy and Scaling Explorations)、Nicolas Liochon 等人的团队‌、从 EVM 到 Starkware 的 Cairo 语言的 alpha 编译器‌也在不断努力,当然,还有一些是我错过的。

所有这些项目的核心目标都是相同的:使用 ZK-SNARK 技术来制作类似以太坊交易执行的密码学证明,或者更容易验证以太坊区块链本身,或者构建与以太坊提供的功能相当(接近)但可扩展性更强的 ZK-rollup。但这些项目之间存在细微的差异,以及它们在实用性和速度之间做出了权衡。这篇文章将试图描述 EVM 等效的不同“类型”的分类法,以及尝试实现每种类型系统的好处与代价。

ZK-EVM 概览图

类型 1(完全等效于以太坊)

类型 1 的 ZK-EVM 力求完全且毫不妥协地与以太坊等效,它们不会改变以太坊系统的任何部分来更容易生成证明。它们不会取代哈希、状态树、tx 树、预编译或任何其他共识逻辑,无论这些逻辑多么次要。

优点:完美兼容

目标是能够像今天一样验证以太坊区块,或者至少验证执行层端(因此,不包括信标链共识逻辑,但包括所有交易执行和智能合约和账户逻辑)。

类型 1 的 ZK-EVM 是我们最终需要的,它使以太坊 L1 层本身更具可扩展性。从长远来看,在类型 2 或类型 3 ZK-EVM 中测试过的以太坊修改可能会引入到以太坊本身,但这种重新架构也有其自身的复杂性。

类型 1 的 ZK-EVM 也是 rollup 的理想选择,因为它们允许 rollup 重用大量基础设施。例如,以太坊执行客户端可以按原样使用来生成和处理 rollup 区块(或者至少,一旦实现提款,它们就可以使用,并且可以重新使用该功能来支持将 ETH 存入 rollup 中),因此例如区块浏览器、区块生产等工具都是非常容易重新使用的。

缺点:证明者(prover)时间

以太坊最初并不是围绕 ZK 友好性设计的,因此以太坊协议的许多部分需要大量计算才能进行 ZK 证明。类型 1 的 ZK-EVM 旨在精确复制以太坊,因此它无法缓解这些低效率问题。目前,以太坊区块的证明需要很多小时才能够产生。这可以通过巧妙的工程大规模并行化证明者(prover)来缓解,长期也可以通过 ZK-SNARK ASIC 来缓解。

那谁在构建 类型 1 的 ZK-EVM 呢?

隐私和扩容探索团队(The Privacy and Scaling Explorations team)正在构建一个类型 1 的 ZK-EVM。(译者注:The Privacy and Scaling Explorations 团队即更名后的 appliedzkp)

类型 2(完全 EVM 等效)

类型 2 的 ZK-EVM 力求完全等效于 EVM,但不完全等效于以太坊。也就是说,它们“从内部”看起来与以太坊完全一样,但它们在外部存在一些差异,特别是在区块结构和状态树等数据结构方面。

目标是与现有应用完全兼容,但对以太坊进行一些小的修改,以使开发更容易并更快地生成证明。

优点:VM 级别的完美等效

类型 2 的 ZK-EVM 对保存诸如以太坊状态之类的数据结构进行更改,幸运的是,这些结构是 EVM 本身无法直接访问的,因此在以太坊上工作的应用,几乎总是能在类型 2 的 ZK-EVM rollup 上运行。你将无法按原样使用以太坊执行客户端,但你可以通过一些修改来使用它们,并且你仍然可以使用 EVM 调试工具和大多数其他开发者基础设施。

当然,也有少数例外的情况。对于验证以太坊历史区块的 Merkle 证明以验证历史交易、收据或状态声明的应用,会出现一种不兼容的情况(例如,桥有时会这样做)。用不同的哈希函数替换 Keccak 的 ZK-EVM 会破坏这些证明。但是,我通常建议不要以这种方式构建应用,因为未来的以太坊更改(例如 Verkle 树)甚至会破坏以太坊本身的此类应用。更好的选择是让以太坊本身添加经得起未来考验的历史访问预编译。

缺点:尽管改进了,但证明者(prover)时间依然很慢

类型 2 的 ZK-EVM 提供比类型 1 的 ZK-EVM 更快的证明者时间,主要是通过删除以太坊堆栈中依赖不必要的复杂和对 ZK 不友好的密码学部分。特别是,它们可能会改变以太坊对 Keccak 和基于 RLP 的 Merkle-Patricia 树,可能还会改变区块和收据结构。类型 2 对 ZK-EVM 可能会使用不同的哈希函数,比如 Poseidon‌。另一个自然修改是修改状态树以存储代码哈希和 keccak,从而无需验证哈希来处理 EXTCODEHASH 和 EXTCODECOPY 操作码。

这些修改显着改善了证明者(prover)时间,但并不能解决所有问题。由于 EVM 固有的所有低效率和 ZK 不友好性,证明 EVM 的速度仍然很缓慢。一个简单的例子是内存:因为一个 MLOAD 可以读取任意 32 个字节,包括“未对齐”chunk 块(开始和结束不是 32 的倍数),所以不能简单地将一个 MLOAD 解释为读取一个块;相反,它可能需要读取两个连续的块并执行位操作来组合结果。

那谁在构建 类型 2 的 ZK-EVM 呢?

Scroll 的 ZK-EVM ‌项目正朝着类型 2 的 ZK-EVM 方向发展,Polygon Hermez‌ 也是如此。当然,这两个项目都还没有完成。特别是,很多更复杂的预编译还没有实现。因此,目前这两个项目被归类到 类型 3 的 ZK-EVM 会更好一些。

类型 2.5(EVM 等效,gas 成本除外)

显着改善最坏情况证明者时间的一种方法,是大大增加 EVM 中很难进行 ZK 证明的特定操作的 gas 成本。这可能涉及到预编译、KECCAK 操作码,以及调用合约或访问内存或存储或恢复的可能特定模式。

更改 gas 成本可能会降低开发人员工具的兼容性,并破坏一些应用,但通常我们认为它比“更深入”的 EVM 更改风险更低。开发人员应该注意不要在一笔交易中要求超过一个区块的 gas,永远不要使用硬编码的 gas 量进行调用(这已经是长期以来的一种标准建议)。

管理资源约束的另一种方法,是简单地对每个操作可调用的次数设置硬限制。这在电路中更容易实现,但在 EVM 安全假设下的表现要差得多。我将这种方法称为 类型 3 而不是 类型 2.5。

类型 3(几乎等效于 EVM)

类型 3 的 ZK-EVM 几乎等效于 EVM,但为了进一步改进证明者(prover)时间并使 EVM 更易于开发,需要在精确等效性上做出一些牺牲。

优点:易于构建,证明者(prover)时间更快

类型 3 的 ZK-EVM 可能会删除一些在 ZK-EVM 实施中非常难以实现的特性,而预编译通常位于该列表的顶部,此外,类型 3 的 ZK-EVM 有时在处理合约代码、内存或堆栈方面也存在细微差别。

缺点:不兼容的地方会相对多一些

类型 3 ZK-EVM 的目标是与大多数应用兼容,而其余部分只需要最少的重写工作。也就是说,有些应用需要重写,因为它们使用了类型 3 ZK-EVM 删除的预编译,或者因为对 VM 不同处理的边缘情况的微妙依赖。

那谁在构建类型 3 的 ZK-EVM?

Scroll 和 Polygon 在当前构建的 ZK-EVM 都是属于类型 3,尽管它们有望随着时间的推移提高兼容性。Polygon 有一个独特的设计,他们对自己的内部语言 zkASM‌ 进行 ZK 验证,并使用 zkASM 实现来解释 ZK-EVM 代码。尽管有这个实现细节,但我仍将其称为真正的类型 3 ZK-EVM,它仍然可以验证 EVM 代码,它只是使用了一些不同的内部逻辑来完成它。

今天,没有 ZK-EVM 团队的目标是成为类型 3 的 ZK-EVM,类型 3 只是一个过渡阶段,直到添加预编译的复杂工作完成,然后项目就可以转移到类型 2.5 的 ZK-EVM。然而,在未来,类型 1 或类型 2 的 ZK-EVM 可能会自动成为类型 3 的 ZK-EVM,方法是添加新的 ZK-SNARK 友好的预编译,为开发人员提供低证明者(prover)时间和 gas 成本的功能。

类型 4(高级语言等效)

类型 4 系统的工作原理,是将用高级语言编写的智能合约源代码(例如 Solidity、Vyper 或中间语言)编译为某种明确设计为 ZK-SNARK 友好的语言。

优点:非常快的证明者(prover)时间

通过不对每个 EVM 执行步骤的所有不同部分进行 ZK 证明,并直接从更高 level 的代码开始,你可以避免大量开销。

我在这篇文章中仅用一句话来描述类型 4 系统的这一优势(与下面列出的与兼容性相关的缺点相比),但这不应该被解释为一种价值判断!直接从高级语言编译,确实可以大大降低成本,并通过更容易成为证明者(prover)来帮助实现去中心化。

缺点:兼容性会更糟

用 Vyper 或 Solidity 编写的“普通”应用可通过编译“正常工作”,但有一些重要的方式使得很多应用无法“正常工作”。

  1. 合约在类型 4 系统中的地址可能与 EVM 中的地址不同,因为 CREATE2 合约地址取决于确切的字节码。这破坏了依赖尚未部署的“反事实合约”、ERC-4337 钱包、EIP-2470 单件‌和很多其他应用程序的应用。
  2. 手写的 EVM 字节码更难使用,很多应用在某些部分会使用手写 EVM 字节码以提高效率。而类型 4 的系统可能不支持它,尽管有一些方法可以实现有限的 EVM 字节码支持来满足这些用例,而无需努力成为一个完整的类型 3 ZK-EVM。
  3. 很多调试基础设施无法兼容,因为这样的基础设施运行在 EVM 字节码上。也就是说,通过从“传统”高级或中间语言(例如 LLVM)更多地访问调试基础设施,可以缓解这一缺点。

开发人员应该注意这些问题。

那谁在构建类型 4 的系统?

ZKSync 就是一个类型 4 系统,尽管随着时间的推移,它可能会增加对 EVM 字节码的兼容性。Nethermind 的 Warp 项目正在构建一个从 Solidity 到 Starkware 的 Cairo 语言的编译器,这将使 StarkNet 变成事实上的类型 4 系统。

ZK-EVM 类型的未来

本文并没有明确判断以上各种类型的 ZK-EVM 哪个“更好”或“更差”,相反,它们只是在不同的点上进行了权衡:编号较低的类型与现有基础设施更兼容,但速度会较慢,而编号较高的类型与已有基础设施不太兼容,但它们会更快。总的来说,所有类型 ZK-EVM 的探索都是有益的。

此外,ZK-EVM 项目可以很容易地从编号较高的类型开始,并随着时间推移跳转到编号较低的类型(反之亦然)。例如:

  1. 一个 ZK-EVM 可以从类型 3 开始,它决定不包含一些特别难以 ZK 证明的功能。之后,他们可以随着时间的推移添加这些功能,并转向类型 2 的 ZK-EVM。
  2. ZK-EVM 也可以从类型 2 开始,然后成为混合类型 2/类型 1 的 ZK-EVM,通过提供在完全以太坊兼容模式下运行的可能性,或者提供可以更快证明的修改状态树,比如 Scroll 正在考虑朝这个方向发展。
  3. 通过添加处理 EVM 代码的能力,从类型 4 开始的系统,可能会随着时间的推移变成类型 3(尽管仍然鼓励开发人员直接从高级语言编译以减少费用和证明者时间)。
  4. 如果以太坊本身采用修改以变得对 ZK 更加友好,则类型 2 或类型 3 的 ZK-EVM 可以成为类型 1 的 ZK-EVM。
  5. 类型 1 或类型 2 的 ZK-EVM 可以通过添加预编译来验证 ZK-SNARK 友好语言中的代码,从而成为类型 3 的 ZK-EVM。这将使开发人员在以太坊兼容性和速度之间做出选择,而类型 3 就是这样的选择,因为它打破了完美的 EVM 等效性,但出于实际目的,它将具有类型 1 和类型 2 ZK-EVM 的很多好处。主要的缺点可能是某些开发人员工具无法理解 ZK-EVM 的自定义预编译,尽管这可以修复:开发者工具可通过支持包含预编译的 EVM 代码等效实现的配置格式来添加通用预编译支持。

就我个人而言,我希望随着时间的推移,通过 ZK-EVM 的改进以及以太坊本身的改进(使其对 ZK-SNARK 更友好),让一切都变成类型 1 的 ZK-EVM。在这样的未来,我们将有多个 ZK-EVM 实现,它们既可以用于 ZK rollup,也可以用于验证以太坊区块链本身。从理论上讲,以太坊不需要为 L1 使用在单个 ZK-EVM 实现上进行标准化。不同的客户端可以使用不同的证明,因此我们继续受益于代码冗余。

然而,要实现这样的一个未来,还需要相当长的时间。与此同时,我们将在扩展以太坊和基于以太坊的 ZK-rollup 的不同路径上看到很多创新。

展开全文
打开碳链价值APP  查看更多精彩资讯
声明:本文内容为作者独立观点,不代表碳链价值立场,且不构成任何投资理财建议。
0 1
以太坊zkEVM

扫一扫,分享到微信

相关推荐

以太坊持仓量超过比特币、短期见顶了吗? 价值号

以太坊持仓量超过比特币、短期见顶了吗?

一只团子 2022-08-13 价值号
比特币以太坊数字货币区块链
交易者在 ETH 上进行明显的押注,而不是BTC
稳定币也“不稳定”USDC被冻结后、稳定币还有未来吗? 价值号

稳定币也“不稳定”USDC被冻结后、稳定币还有未来吗?

一只团子 2022-08-12 价值号
比特币稳定币以太坊区块链
USDT、BUSD会被冻结吗?
如何寻找优质的加密货币项目,下半年币圈还有新机会吗? 价值号

如何寻找优质的加密货币项目,下半年币圈还有新机会吗?

AXA Labs 2022-08-12 价值号
山寨币比特币以太坊ada
如果您进行了自己的深入研究 ( DYOR ),则可以找到下一个 10 倍或 100 倍的数字货币。

碳链快讯更多 ›

2022-08-14

Tornado Cash DAO关闭,因其无法对抗美国并确保贡献者的安全

2022-08-14

Aave:已解封被Tornado Cash小额污染地址

2022-08-14

Monero已完成硬分叉升级

2022-08-14

数据:ETH期权未平仓量创历史新高

2022-08-14

研究:以太坊正在恢复其对稳定币的市值主导地位

2022-08-14

日本任命新数字大臣,将助推Web3发展

2022-08-14

第十二届北京国际电影节开幕红毯系列数字藏品上线

2022-08-13

过去一个月meme币经济增长24%至181亿美元

2022-08-13

EthHub 联创:Aave 似乎已更新前端,受 Tornado Cash 影响地址或已解除封禁

2022-08-13

分析:机构投资者越来越多地使用加密期权交易在熊市中对冲头寸

2022-08-13

公安部指挥侦破一起传播淫秽物品牟利案,冻结700个比特币

2022-08-13

巴西新法案要求使用区块链技术规范黄金开采和交易流程

2022-08-13

Aave前端或开始封禁曾参与Tornado Cash挖矿的地址

2022-08-13

ConsenSys致信美财政部:打击美国开发者将导致其失去领先地位

2022-08-13

区块链公司Skynet Labs未能获得新资金而关闭

2022-08-12

The Block 证实被荷兰当局逮捕的 Tornado Cash 开发者是 Alexey Pertsev

2022-08-12

多位加密行业高管批判逮捕疑似Tornado Cash开发者的行为

2022-08-12

天桥资本创始人:预计未来加密市场将更加活跃

2022-08-12

社区投票赞成Tornado Cash DAO成为财库多签钱包签署者之一

2022-08-12

以太坊基金会:主网合并预估日期或有高达一周的误差,下周将进行最终调整

2022-08-12

万事达卡:41%受访用户过去一年中至少完成一项与加密相关的活动

2022-08-12

Gartner发布新兴技术发展周期曲线:元宇宙仍处于十多年旅程的开端

2022-08-12

Circle:呼吁监管机构改革金融法规,以保证大众金融隐私受到保护

2022-08-12

Tornado Cash治理论坛已关闭

2022-08-12

V神:以太坊主网合并预计在 9 月 15 日,确切日期取决于哈希率

2022-08-12

Tornado DAO发起提案以对抗美国财政部制裁

2022-08-12

支付技术公司Finix融资3000万美元,Bain Capital Ventures等参投

2022-08-12

荷兰官方逮捕疑似Tornado Cash开发者

2022-08-12

BitKeep:尊重以太坊社区的共识,是否支持分叉链会参考用户意见

2022-08-12

前香奈儿欧洲市场总监Frederica Tompkins将出任OKX全球营销总监

2022-08-12

币安已冻结或追回45万美元Curve被盗资金

2022-08-12

数字资产信托公司Infinite Block获KB Securities股权投资

2022-08-12

Arthur Hayes:如果合并顺利进行,ETH现货价格将上涨

2022-08-12

加密支付应用Strike推出Visa卡并提供消费奖励

2022-08-12

比特大陆与Antalpha合作向矿工提供矿机抵押低息贷款

2022-08-12

7月CEX加密衍生品交易量涨至3.12万亿美元

2022-08-12

美剧《亿万》男主原型、亿万富翁Steve Cohen正筹备成立加密投资公司

2022-08-12

Gitcoin推出Web3身份系统Gitcoin Passport

2022-08-12

受Tornado Cash被制裁影响,MakerDAO或出售协议中所有USDC

2022-08-12

Celsius债权人拟采取行动阻止其出售挖出的比特币

2022-08-12

Aptos 发布 v1.0 版白皮书:《安全、可拓展和升级的Web3基础设施》

2022-08-12

布宜诺斯艾利斯计划在2023年部署以太坊验证节点

2022-08-12

S&P Global下调Coinbase信用评级至BB

2022-08-12

Robinhood将面临与市场操纵有关的集体诉讼

2022-08-11

以太坊主网合并暂定TTD公布

2022-08-11

Tornado Cash被制裁后存款额周降幅近79%

2022-08-11

电子邮件自动化工具Klaviyo遭入侵,44家加密相关公司受到数据泄露影响

2022-08-11

印度执法机构冻结Vauld价值37亿卢比的资产

2022-08-11

美国CFTC主席:已准备好监管加密货币的可能性

2022-08-11

欧盟官员:MiCA法案将防止Terra式崩溃,并像监管加密货币一样监管NFT

推荐文章

  • 贝莱德携手Coinbase为机构提供加密货币服务

    2022-08-04

  • a16z:NFT 开发者为何选择 cc0?

    2022-08-04

  • 专访 BAYC 创始人:NFT 世界最大的成功故事

    2022-08-04

  • 解答有关以太坊合并的 10 个问题,你想了解的信息这里都有

    2022-08-04

  • a16z对话以太坊基金会研究员:以太坊合并后将走向何方?

    2022-08-04

价值号更多 ›

吉时通信
吉时通信
文章: 135
  • 再看稳定币:去杠杆、提成色与合规化
  • 从OpenSea的挑战者看NFT交易平台的演进历程
  • 以太坊合并:如何影响显卡和区块链行业?
链集市ChainMarket
链集市ChainMarket
文章: 191
  • 为何区块链公司也需要搜索引擎优化?
  • 区块链产业周刊丨苹果终于入局Web3;全国首个数字人民币官方信息平台已上线试运行;国内更多地区推出元宇宙措施
  • 对于初创企业而言,区块链技术会是未来吗?
Unitimes
Unitimes
文章: 398
  • 打破沉默,三箭创始人首次披露崩溃细节
  • 深入解读 EVM 的生态帝国
  • 以太坊状态:复盘以太坊 2022 Q2
换一批

热门标签

新基建 比特币 以太坊 矿业 DeFi 共识对话 区块链+ 研报 美联储 央行数字货币 无限QE 加密衍生品 AI 云计算 大数据 5G 政策 交易所 稳定币 电子支付 Libra 算力产业 联盟链 公链 区块链 加密货币 Nervos Cosmos EOS STO

邮件订阅

及时、全面、专业、准确的资讯与数据,致力于为区块链爱好者以及数字货币投资者提供最好的服务。

App内打开

邮件订阅

及时、全面、专业、准确的资讯与数据,致力于为区块链爱好者以及数字货币投资者提供最好的服务。

Moshou

碳链价值是集资讯、行情、数据于一身的区块链信息服务平台,我们追求及时、全面、专业、精确的资讯与数据,致力于为区块链创新者和数字货币投资者提供优质的服务。

关于我们 加入我们 联系我们 隐私条款
微信公众号

扫一扫关注微信公众号

Copyright © 2018-2020 碳链价值 京ICP备18046423号
下载碳链App

下载碳链App

微信公众号

微信公众号

微信公众号

微信公众号

打赏文章作者

支付宝打赏二维码 支付宝扫一扫打赏
微信打赏二维码 微信扫一扫打赏

# 热门搜索 #

CBDC 比特币 DeFi 以太坊 区块链