指南:清晰理解zkEVM、EVM 兼容性和Rollup

本文探讨了ZK-Rollup、特定于应用程序的Rollup以及zkEVM在以太坊扩展中的角色。ZK-Rollup利用零知识证明实现高效扩展,而zkEVM是通用Rollup的一种形式,旨在兼容EVM。文章分析了不同实现策略,如直接证明EVM执行、自定义VM和转译器,以及它们的优缺点。目前,多个团队正在研发zkEVM解决方案,但每个团队在EVM兼容性和性能之间做出不同程度的权衡。智能合约Rollup的发展仍处于早期阶段,特定于应用程序的Rollup仍是扩展的优选方案。
摘要由CSDN通过智能技术生成

ZK-Rollup一直被认为是以太坊扩展的终极目标。然而,尽管它对以太坊的扩展路线图来说是很重要,但在几个关键点上仍然存在不确定性:

  • ZK-Rollup到底是什么?

  • 特定于应用程序的Rollup和通用Rollup之间有什么不同?

  • 什么是zkEVM Rollup?像EVM等效和EVM兼容这样的术语实际上是什么意思,它们如何应用于Rollup?

  • ZK-Rollup生态系统的当前状态是怎样的,这对项目意味着什么?

如果你是一名希望了解以太坊扩展下一阶段的开发人员,本文将(希望)对你有所帮助。

ZK-Rollup

ZK -Rollup是这样实现的:像STARK或SNARK这样的证明系统允许用亚线性处理来验证线性数量的语句(例如,1000个语句→10个验证者检查,10,000个语句→11个验证者检查)。我们可以使用这个属性来创建可大规模扩展的区块链交易处理上,如下所示:

  • 用户将他们的资产锁定在L1上的ZK-Rollup智能合约中;

  • 用户将涉及这些资产的交易提交给L2的sequencer,L2的sequencer将它们收集成有序的批次,并为每个批次生成有效性证明(例如 STARK/SNARK)和聚合状态更新;

  • 这个状态更新和证明会提交给我们的L1的ZK-Rollup智能合约并进行验证,它会用于更新我们的L1状态;

  • 用户可以使用这种L1状态(根据不同的数据可用性机制)来检索他们的资产,从而实现完全的自我托管和“以太坊安全”。

 

验证证明的gas成本与被验证交易的数量呈次线性关系,与直接使用L1相比,它可以呈现更大的规模。

特定于应用程序的Rollup

到目前为止,所有生产级ZK-Rollup都是我们所说的“特定于应用程序的Rollup”。在特定于应用程序的Rollup中,Rollup支持由Rollup运算符定义的固定数量的“状态转换”(例如交易)。例如:

  • Loopring—支付和交易

  • Immutable —NFT铸造,交易,游戏

  • dydx—永续合约交易

如果你需要解决的是一个项目的需求,那么就可以通过特定于应用程序的Rollup来满足,你的用例可能会获得更好的性能、更好的用户体验和更好的价格,因为它们缺乏通用性是一个巨大的优势。例如,在Immutable,我们可以通过补贴免费的NFT铸造,在NFT交易中收取一定的费用来取消gas费用——这种权衡之所以可能是因为Rollup状态转换的可预测性。

然而,许多项目希望能够创建自己的自定义逻辑和智能合约,独立于Rollup的运营商,这在特定于应用程序的Rollup中是不可能的。此外,许多DeFi项目需要“可组合性”,或需要有与其他项目交互的能力(例如,许多DeFi项目使用Uniswap作为价格预言机)。只有当你的Rollup不仅支持自定义代码,而且支持任何用户都可以部署的原生智能合约时,可组合性才有可能实现。为了实现这一点,我们需要修改ZK-Rollup的体系结构,以囊括每个组件。

 为了提高灵活性,需要做一些考虑和权衡:性能大幅下降、Rollup参数的可自定义性降低和费用增加。然而,其最大的缺点是没有实现通用ZK-Rollup。但这种情况已经开始改变:

  • StarkNet目前在主网上(尽管处于Alpha 阶段)。

  • 3个独立的项目(zkSync, Polygon Hermez/zkEVM和Scroll)都在ETH CC 2022上宣布,它们将成为第一个到达主网的“zkEVM”。

这些公告是值得深入研究的,因为这些团队不仅宣布了通用Rollup,他们还宣布了“zkEVM”。随之而来的是Twitter上关于“EVM兼容性”、“EVM等效性”、“真正的zkEVM”以及哪种方法更好的争论。对于应用程序开发人员来说,这些争论常常是噪音——所以本文的目的是分析这些术语、设计决策和理念,并解释它们对开发人员的实际影响。

什么是EVM?

以太坊虚拟机是执行以太坊交易的运行环境,最初在以太坊黄皮书中定义,后来被一系列以太坊改进提案(eip)修改。它由以下部分组成:

  • 用于执行程序的标准“机器”,每个交易都有易失的“内存”,交易可以写入的持久“存储”和一个可操作的“堆栈”。

  • 在这个机器中执行状态转换的140个定价“操作码”。

 

虚拟机的一些操作码示例:

  • 堆栈操作:PUSH1(向堆栈中添加内容)

  • 算术操作:ADD(加数字),SUBTRACT

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值