以太坊:什么是EVM等效性?它有哪些作用?

上个月,我们宣布了Optimistic 以太坊历史上最重要的升级。最近,我们将Optimistic Kovan迁移到真正的一键式部署,并增加了稳定性,主网在不到三周的时间内就会跟上。

这篇文章是关于我们相信EVM 等效性——完全符合以太坊虚拟机规范——将成为L2领域的下一个通用标准。

首先,让我们回顾一下我们已经采取的当代Rollup路径。

Optimistic 的L2都是关于争议的。如果你认为以太坊是一个全能的、去中心化的法庭,那么L2可扩展性的核心观点是:“不要去法庭兑现支票——如果支票被退回,就去呗。”

实际上,过去6年的可扩展性研究可以归结为一件事:什么样的“拒付支票”可以被强制执行。首先,只有一组预先商定的参与者可以在彼此之间进行交易(状态通道)。然后,任何人都可以交易,但也可以被审查(plasma)。最终,我们也解决了审查问题(rollup)。

在Rollup之前,我们已经知道如何在所有这些模型上运行智能合约——只是没有多大意义。谁愿意只在几个朋友之间运行Uniswap,或者以一种可以被审查一周的方式运行?Rollup承诺提供真实的以太坊风格的L2体验。

当然,仅仅“承诺”一个真正的以太坊风格的L2体验并不能真正创建实现。对于Unipig,有史以来第一个L2 AMM,我们必须使用与Rollup争议合约兼容的自定义代码重新创建 Uniswap,而不是 EVM 本身。

“虚拟的NFT凭什么那么贵”登上微博热搜榜第45位:金色财经报道,微博热搜数据显示,“虚拟的NFT凭什么那么贵”登上微博热搜榜,目前排名第45位,当前热度为145279。[2022/4/14 14:24:26]

由于Uniswap的设计相对简单,这是可行的,但当基本的Solidity变量不能再使用时,这就不是一个好兆头了。对于非开发人员;Uniswap 是目前最简单的 DeFi 智能合约之一,这并不意味着Uniswap需要彻底修改才能实现“Rollup兼容”。

到目前为止,以太坊已经超过了退出速度。一个指数级增长的生态系统根本无法围绕非EVM接口重新构建。因此,L2的责任是除了提供“原始”规模之外,确保L1法院系统与EVM的区别最小。这迫使Rollup同时在两个方面成为先锋:

构建可扩展的、生产就绪的Rollup基础设施。

解决久负盛名的EVM-in-EVM问题。

以太坊的图灵完整性意味着我们知道它可以完成,但在我们的研究过程中,我们了解到,为了在合理的时间框架内将以太坊引入L2,需要牺牲一些东西。

这种牺牲被称为EVM“兼容性”。

理由很简单:只要以太坊应用可以被合理地移植到Rollup上运行——不管这是如何在幕后完成的——我们就可以捕获以太坊的退出速度。

声音 | 赵长鹏:不明白为什么有人不接受加密货币支付:币安创始人赵长鹏刚刚发推表示:对于任何基于互联网(非物理)的业务,我不明白为什么有人不接受加密货币支付。与传统的支付网关相比,(加密货币)集成更容易、更快和更便宜,同时减少文书工作,覆盖更多样化的人口和地理。[2019/2/3]

起初,这种妥协取得了成功。在2020年,我们竞相推出OVM,因为用户纷纷逃离以太坊,转向其他L1竞争对手,后者在“廉价费用”的幌子下放弃了安全性和价值。

但以太坊的网络效应产生的退出速度有多种形式,我们的使用量激增突出了L1-以太坊的另一个组件,这是其他L1和L2所缺乏的:基础设施。在过去的6年里,以太坊的全球社区让它从一个简单的原型,发展到更多:

成千上万的开发工具已经被深度集成到EVM中。

数十亿美元的公司已经崛起,只是为了服务和改进节点软件。

以太坊本身变得越来越快。

以太坊的网络效应浪潮只会越来越大。由于一切都是开源的,人们可能会认为这些巨大的胜利也适用于以太坊的L2。

但并没有那么多。

EVM兼容性与EVM等效性并不相同,仅仅满足于兼容性意味着你不得不修改,甚至完全重新实现以太坊支持基础设施所依赖的底层代码。如果L2想要在以太坊的基础设施网络效应浪潮中冲浪,它们必须成为EVM的对等物。

随着Optimistic 以太坊的发展,我们发现越来越多的以太坊工具不断发现自己无法使用,这是由于我们旧的EVM兼容性设计理念。

声音 | 周鸿祎:没有什么系统是不能攻破的,区块链系统亦然:在《吴晓波频道十年二十人》第2018-07-04期中,奇虎360公司董事长作为嘉宾出席。对于区块链,周鸿祎也表达了其“质疑”,提出当区块链的系统不够安全时,会“打击整个行业的信心”。周鸿祎得出经验,没有不能攻破的系统,无论多完美的系统,只要它设计得足够复杂,便一定存在漏洞。“越复杂,漏洞越多。”[2018/7/6]

我们知道我们可以做得更好。为了真正支持大众,我们需要的不仅仅是与EVM合约兼容的东西,而是从根本上等同于EVM本身的东西。

EVM等效性是我们如何弥合以太坊L1的基础设施网络效应和以太坊L2的执行环境之间的差距。

简而言之:EVM等效性完全符合以太坊黄皮书,即协议的正式定义。根据定义,L1以太坊软件必须符合该规范。

这意味着——深入到最深处——现有的以太坊堆栈现在也将与L2系统集成。每一个调试器。每一个工具链。每个节点的实现。我们相信任何L2提供任何EVM体验都必须达到这个标准-任何不足都是不可接受的。

OVM v1引入了一个容器化系统,它位于Geth的EVM之上,有助于避免在L1上冗长地重新实现整个EVM。

这种组合在早期取得了一些胜利,但由于EVM本身不支持容器化,所以它不是免费的。随着Optimistic 以太坊的发展,不可忽视的等价性的力量不容忽视:

李笑来:人为割裂区块链和互联网是利益之争,不存在什么“古典互联网”:李笑来在接受媒体采访时表示:“不存在什么‘古典互联网’,互联网就是互联网,区块链也是互联网的一部分。你怎么可能指着你的肚子之外的部分说,这是‘古典身体’,然后再接着问,‘这个肚子和古典身体之间有着不可调和的矛盾’?人为割裂区块链和互联网,本意不是理论体系的互斥,而是利益的争夺。”对于中国互联网的主要矛盾是什么,李笑来表示并不知道,只知道互联网发展迅速造成了更大的贫富差距,引发了一定的社会矛盾,这是不能回避的事实。[2018/3/6]

像Solidity、Vyper和Hardhat这样的项目都在开发他们的OVM版本的开发工具,

随着每一行代码的改变,采用像Erigon这样的实验性实现变得越来越困难。这告诉我们,我们总是需要投入大量的精力来集成未来的客户端实现。

与现有的超优化版本相比,重新实现EVM的某些部分会带来gas开销。这让我们认识到,要实现气体成本的最小化,就必须采用EVM等效设计理念。

现在是时候寻求一种更好的方法了。

值得庆幸的是,我们找到了一种比在EVM中冗长地重新实现EVM更好的方法。

分离区块生成和执行

在实践中,我们确实需要对以太坊L2-ify做一些改变:特别是区块是如何生成的。在L1上,节点使用工作证明共识机制来确定区块;在L2上,批量交易通过发送到“父链”(L1以太坊)的批量应用。如果一个L2使用它自己的工作证明,那么它将是一个L1!所以在这个层面上,“等效性”根本就是无稽之谈。

Game.com创始人徐乐:现在谁都定义不了什么是区块链游戏 :Game.com的CEO徐乐接受采访时说:“我的第一条twitter是在07年发的。进入游戏领域10年后,我发了第二条twitter,说Game.com会告诉全世界什么是区块链游戏。我说那句话的意思是:目前没有人能够定义什么是区块链游戏。目前的概念都是错误的。只有干出来,干成了标准,做成了老大,再去定义才有意义。”后又在朋友圈分享想法:“1.首先需打造基础服务,甚至比交易所还要安全的数字货币充提币的自动化系统加人工风控,冷钱包存储永不联网的保障用户的数字资产安全;2.有基础后,才有资格为数字货币玩家群体提供娱乐服务,服务端的内容只有在非常必要的情况下才有必要放在区块链上;3.一定要用区块链思维去思考和设计新玩法,进行再创造,舍弃旧世界的东西。”[2018/3/3]

区块链模块化的一个核心模式是将共识与执行分离——也就是说,使用不同的流程来确定和执行下一个区块。我们可以借用这个模式在L2中使用。基本上,我们只需要定义一个函数,它接受L1区块,对它们进行Rollup处理,然后输出L2区块——格式与L1区块完全相同。从那以后,L2的执行可以被定义为等效于L1。

那么,现有L1客户端实现之间的共识/执行模块化的现状如何?它即将在所有以太坊实现中标准化。

事实证明,ETH2合并需要与EVM等效性Rollup完全相同的抽象:信标链提供与L1对Rollup完全相同的“父链”角色。这使得在L2中使用L1客户端变得非常简单。

好了,我们已经讨论了为什么等效性为强大的、模块化的抽象和非常简单的客户端实现打开了大门。但是我们如何在链上执行这个呢?首先,模块化的强大之处在于它的灵活性——只要解决方案与EVM等效,我们就可以使用它。这意味着欺诈证明的改进,甚至是EVM等效性的零知识证明(当它们变得可行时),都可以被简单地放入现有的链下堆栈中。

不过,在短期内,我们今天需要一些可行的措施——我们已经发现了这一点。一种解决方案是在Solidity中实现一个完美的EVM等效实现,但EVM是一个包含许多VM指令的复杂工具,因此这是一项重要的任务。此外,未来对EVM的更新也必须在Solidity中重新实现。

我们的解决方案:不是在Solidity中实现EVM,而是用更小、更简单的指令集实现一个VM,并在欺诈证明期间在这个VM中运行EVM。为此,我们必须简单地编译一个现有的EVM解释器,例如geth,以便在更简单的VM中运行。

我们允许Geth本身在一个有争议的环境中运行。由于Geth是EVM等效的,所以环境也是如此。这使我们能够绕过在链上重新实现EVM,并使系统能够适应未来对EVM的升级。

如果以太坊要实现其以Rollup为中心的未来,那么Rollup必须以以太坊为中心。

这就是等效性所提供的。

这种模块化的、以Geth为中心的设计不仅仅是一个可供我们使用的优雅的实现——它是向防欺诈基础设施商品化迈出的一大步。今天,安全地设计和启动一个Rollup需要对L2争议有深入的了解,以及它们如何与节点软件一起工作。这严重限制了创新——想象这样一个世界,每个web开发人员都必须是IP网络、系统管理和微芯片制造方面的专家。

未来的Rollup将非常简单,不需要L2专家来部署。这意味着L2将不再在如何或是否提供安全性上竞争,而是在提供安全性的内容上竞争。这包括在:

性能、稳定性和正常运行时间

网络效应、生态系统专业化和社区

MEV预防和测序工具

总之,这意味着EVM等效性的Rollup在去中心化上竞争。这是整个生态系统民主化的巨大胜利,也是使我们整个行业更加脆弱和抵制审查的重要一步。

这也意味着我们的团队最终可以专注于我们的核心竞争力——最重要的部分——打造世界上最快、最可靠、最安全的L2 Geth。

以太坊兼容性的枷锁已经解除。

EVM等效性性的威力归结于标准化。

在多链的世界中,“一次编写,随处部署”变得至关重要。

拥有许多“兼容”链(每个链都略有不同)会导致碎片化:从需要单个EVM专家团队处理单个代码库,到需要为每个链的每个代码库组建EVM专家团队。

Vitalik在首次公开EVM时就将其与Javascript进行了比较,这种类比在本文中得到了很好的体现。在互联网的早期,浏览器之间的不兼容性困扰着网络开发,并导致开发者和生态系统分裂。

Web3完全是关于协调和开源标准的,而等效性为即将成为标准的EVM提供了一条路径,以避免重复过去的错误。

即使随着这个标准的发展,我们对欺诈证明的方法意味着L2可以毫不费力地协同发展。L1和L2手牵手一起前进。

这一好处是双向的——几乎所有以太坊EIP都可以在L2上被采用,并且Rollup成为一个激动人心的创新实时测试环境。想象一下,一个位于激励测试网和主网之间的Rollup,验证新的交易类型、预编译和EOF,在它们升级到L1之前测试不可预见的结果。

DeFi最大的障碍之一是,测试所有你想要的,无法取代 DeFi 的现场环境。你不能在测试网络上“重新创建”DeFi,所以当你想测试更改时,它总是“在产品中测试”。

EVM等效性允许我们在实时环境中测试EIP,并对整个以太坊环境做出更安全、长期的改进,而不需要“交叉硬分叉”。

L2早就承诺了一个多链以太坊的未来,充满活力的城市深入到这个新网络空间的前沿。虽然我们可以期待这些链是多样化和丰富的,但EVM 等效性引入了一种与以太坊的新连接——不仅仅是作为结算层,而是在其组成的最深层。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:15ms0-0:848ms