白话解读Optimism的运行机制
此文整合并翻译自 @0xRafi 发的推特 thread
1.由于 Optimism 团队发布了消息表示其主网上线时间将提前,我认为大家很有必要了解以太坊 Layer2 解决方案 Optimism 是什么、它是如何运作的、以及它会给以太坊带来什么。
2.大家之所以这么期待,是因为诸如 Optimism 此类的 L2 解决方案有助于:提高以太坊的吞吐量 (每秒交易处理量);缩短交易打包等待时间 (确认一笔交易所需要的时间);以及大大地降低 gas 费。而且是在不牺牲以太坊主网安全性的前提下进行扩容。
3.这就是真正的 Layer2 解决方案与 “单纯的侧链” 解决方案 ( 如 @0xPolygon 或 @xdaichain) 的最大区别。侧链解方案有自己的共识机制和安全性,并且不能从以太坊 Layer1 的安全性中获益,而 Layer2 解决方案可以保持以太坊一层网络的安全性。
4.举个例子,如果我们使用 Optimism:当用户在以太坊主网 (或 Layer1) 上提交了一笔交易,交易数据会存储在 L1 上,但是智能合约计算的处理将在子链 (即 Layer2) 上进行,最后计算结果发回 Layer1 中。
5.由于计算过程是一笔交易中耗时最久、成本最高的部分,因此在 Layer2 处理计算大大地减少了 Layer1 的计算需求,从而提高网络的吞吐量并降低交易费。L1 仅接收交易数据,将其发送至 L2 中,然后再接收 L2 的计算结果
6.Optimism 是一个比较“通用”的解决方案。任何 L1 上的 Solidity 智能合约 (也就是任意的 L1 app) 都可以在 Optimism 的 Layer2 上运行,且不需要构建额外的功能。
7.下图展示了 Optimistic Rollup 的工作方式,两个大方框分别是 Optimistic Rollup 合约 和 Optimistic 虚拟机 (OVM)。Rollup 为 L1 智能合约,负责接收交易数据,然后发送数据至 L2 中以及接收计算结果。但是有趣的部分发生在 L2 中。
8.在 L2 上,交易会提交给一个 "Sequencer" 序列器 (可以说是 L2 上的矿工)。然后它会立即回应,生成一个已签名的收据以保证交易的执行和排序。然而,如果序列器作恶,没有正确地执行交易或者抢跑交易的话怎么办呢?
9.遇到这种情况时,用户可以向 L1 上的裁判合约提交那份已签名的收据,如果证实序列器没有正确履行其义务,那么 ta 就会被罚没 (即丢失其质押的资金)。所以 L2 可以说是一个小型的 PoS 系统。
10.但当遇到争议时,L1 上的裁判合约应能够像 L2 上一样进行计算,并获得完全相同的计算结果。这就需要运用到 OVM 了。
11.OVM 可以说是 L2 对 L1 的适配器,确保 L1 以太坊虚拟机 (EVM) 就像在 L2 中处理 L2 的计算一样。这样做的目的是使得 L2 上的任何计算都可以在 L1 上得到验证 (如果需要的话)。这非常重要。
12."Optimistic" 乐观的由来是,我们假设所有在 L2 上进行的计算是正确的,直到有人提出争议。如果存在争议,L1 上的裁判会在以太坊网络上重新运行该计算并检查结果。
13.为了激励用户充当“瞭望塔”并验证计算结果,Optimism 是如此设置的:任何人如果发现不诚实行为且对之提出异议,都可以从作恶序列器 (Sequencer) 的罚金中获得部分奖励。即使用户自己没有验证自己所有的交易,其他用户也会帮忙验证。
14.最棒的一部分是,一旦足够多的以太坊 app 在 Optimism 的二层网络上运行,大多数用户将花大多数时间留在 L2 上,而不需要回到 L1 上 (除非出现争议需要解决,或者用户有提款需求)。
15.看到这里,也许读者会觉得这将使得以太坊 L1 无效。然而事实上,这将进一步扩展以太坊的生态系统,以太坊将可以支持新的、吞吐量更大的应用,而按照当前网络的容量这是无法实现的事情。
16.Optimism 另一个很棒的点是,它具有“账户抽象”功能。也就是说,每个账户都是可以被改动的“合约”账户,因此可以实现各种交易条件,如多签或者其他 gas 支付方式。
17.那目前 Optimism 的应用情况如何?首先,Synthetix 现正在私人主网上运行 Optimism。一旦实现完成,Synthetix 计划将其质押以及挖矿功能完全转移到 L2 上,然而将交易功能同时在 L1 和 L2 上保留
18.@Uniswap 在 10 月 19 日使用 Optimistic Rollups 运行了一个游戏化的概念证明 (Unipig),并且一旦 Optimism 上线主网,Uniswap 将会是他们的第一批用户。@chainlink 也宣布了其将和 Optimism 合作,@coinbase 钱包增加了对 Optimism 测试网的本地支持......
19.@compoundfinance 估计也会支持 Optimism (还没确定下来),@RariCapital 也会在他们平台集成 Optimism。将来还会有很多项目加入,这将对以太坊网络速度和交易费带来意义重大的影响。
20.这对我们意味着什么:Synthetix 的测试显示,使用 Optimism 后,gas 费最多可以降低 143 倍,交易确认时间低至 200 毫秒;而 Unipig 测试显示,gas 费最多可以降低 100 倍,交易确认时间低至 169 毫秒。
21.Optimistic Rollups 同样非常适合以太坊 2.0 的生态系统。因为以太坊 2.0 将首先推出数据扩容方案,其后再推出计算扩容方案。在初期,Rollup 将首先保证计算方面的可扩展性,并与以太坊 2.0 并存。
22.Optimistic Rollups 同样非常适合 以太坊 2.0 的生态系统。因为以太坊 2.0 将首先推出数据扩容方案,其后再推出计算扩容方案。在初期,Rollup 将首先保证计算方面的可扩展性,并与以太坊 2.0 并存。
23.Optimism 团队提出的最后一个很棒的想法是,使用 MEVA (即矿工可提取价值拍卖) 来选择序列器。Karl 在 ethresear.ch 发了篇文章《MEV 拍卖:通过拍卖交易顺序权来解决MEV问题》来解释这一内容:https://ethresear.ch/t/mev-auction-auctioning-transaction-ordering-rights-as-a-solution-to-miner-extractable-value/6788
24.最后还有一些其他链接:
• Optimistic Rollup 介绍:
https://medium.com/plasma-group/ethereum-smart-contracts-in-l2-optimistic-rollup-2c1cef2ec537
• @kelvinfichter 对 Optimism 的视频介绍:
https://www.youtube.com/watch?v=eYeOW4ePgZE
• Blockcrunch 播客,嘉宾 @kevinjho :
https://blockcrunch.libsyn.com/is-plasma-dead-the-rise-of-optimistic-rollups-on-ethereum-kevin-ho-optimism-ep-97
• Synthetix 宣布向 Optimism 迁移:
https://t.co/5ImnwsRFPI?amp=1