干货:二层扩容方案 Optimism 和 Arbitrum 的异同

Optimism 和 Arbitrum 是时候拉出来较量一下了。

原文标题:《科普 | OptimismPBC vs Arbitrum》

作者: Kris Kaczor

我们先来看一下 Optimism 和 Arbitrum 之间的共同点

· 都属于 Rollup,是货真价实的 Layer 2 方案,将所有交易数据都存储在 Layer 1 上

· 都是「乐观型(optimistic)」,即,使用欺诈证明

· 都使用定序器来实现即时「确定性」

· 都具备通用的跨链消息传递功能,可以用来构建高级代币桥,如 @MakerDAO 的快速取款桥:https://forum.makerdao.com/t/announcing-the-optimism-dai-bridge-with-fast-withdrawals/6938

接下来是重头戏——不同点。Optimism 和 Arbitrum 之间最大的不同点在于欺诈证明机制的实现,即,一笔交易执行完后,如果状态引起争议该如何解决?

Optimism 采用单轮欺诈证明。也就是说,Layer 1 会在链上执行整个 Layer 2 交易,来验证状态根。这使得欺诈证明具有即时性,这是优点。

但是,这里面也存在一些问题

· 你需要监督交易执行,为此需要使用 OVM(即为了避免副作用而重新编写的 EVM

· Layer 2 交易的 gas 使用量不得超过 Layer 1 区块的 gas 上限

· 每执行一笔交易,你都需要在链上生成状态根——导致成本上升:(

存在安全隐患

Arbitrum 采用多轮欺诈证明。简单来说,就是通过二分查找,找到引起分歧的那个区块的第一个操作码。找到之后,只需在链上执行这个操作码。

多轮欺诈证明的优点如下:

· 它只需为一整批交易生成一个状态证明,并发布到链上

· Layer 1 区块 gas 上限并不重要,因为 Layer 2 交易不完全在 Layer 1 上执行

缺点如下:

· 需要 EVM -> AVM 翻译(幸好是自动的)

· 速度很慢——最坏情况下,需要长达 2 周时间才能完成欺诈证明。实际上是一周时间。

· 需要原始提款人在线并配合

从另一种角度来思考,Optimism 是集装箱化的,而 Arbitrum 是虚拟化的。

Optimism 的方法有一个很大的缺点。想象一下,如果出现硬分叉,导致以太坊共识规则改变,操作码被删除/重新定价或修改。这时,突然在 Layer 1 上重新执行过去的交易会得到截然不同的最终状态。我不知道 Optimism 团队会如何解决这个问题,但是我想真到了那一天他们会想出办法的。Arbitrum 完全控制 AVM 规范,因此不用担心这种问题。

这两个项目都试图尽可能贴近以太坊生态系统,但是这里面有一些不同。总的来说,你依然可以使用你所知道的与 EVM 相关的工具(solidity、hardhat 和 waffle 等)。但实际上没那么简单。

Optimism 需要一个特殊的 solidity 编译器来生成 OVM 字节码。因此,它只与 Solidity,而且是特定版本的 Solidity 兼容。另一方面,Optimism 的 Layer 2 节点只是经过了修改的 geth 客户端,修改的目的是为了提高兼容性。

从表面上来看,Arbitrum 完全兼容 EVM/JSON RPC 规范,但是它的节点是自定义实现。Arbitrum 通过自动化的 EVM-> AVM 翻译来支持欺诈证明。因此,它支持任何 EVM 语言(vyper、YUL+ 等)。

Optimism 使用 weth,而且内置钱包抽象。Arbitrum 自带 ETH 支持。

Arbitrum 提供统一的免许可桥,来实现任意代币和 Layer 2 之间的桥接(它部署了一个通用 ERC20 合约作为 Layer 2 对手方)。

Optimism 更喜欢专用桥,不过在 Optimism 上构建通用桥也是有可能的。关于这点,@dmihal 知道得更详细;)

最后一个差别是上线实现。Arbitrum 将在本月底上线「面向开发者的主网」,Optimism 则要等到 7 月。

如果你想要了解更多内容,我建议你观看这场由 @stonecoldpat0 主持的 @karl_dot_tech 和 @hkalodner 之间的友好辩论。

就我个人而言,这两个项目我都很支持。我已经等不及看到它们主网上线了。整个以太坊社区都亟需合适的 Layer 2 方案,而不是什么可扩展侧链。

如果你想要了解 Optimism 桥的例子,可以查看 https://github.com/makerdao/optimism-dai-bridge。我们准备在下周发布兼容 Arbitrum 的版本。

转载声明:本文 由CoinON抓取收录,观点仅代表作者本人,不代表CoinON资讯立场,CoinON不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。若以此作为投资依据,请自行承担全部责任。

声明:图文来源于网络,如有侵权请联系删除

风险提示:投资有风险,入市需谨慎。本资讯不作为投资理财建议。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2021年5月28日 下午7:35
下一篇 2021年5月28日 下午7:36

相关推荐

干货:二层扩容方案 Optimism 和 Arbitrum 的异同

星期五 2021-05-28 19:35:50

原文标题:《科普 | OptimismPBC vs Arbitrum》

作者: Kris Kaczor

我们先来看一下 Optimism 和 Arbitrum 之间的共同点

· 都属于 Rollup,是货真价实的 Layer 2 方案,将所有交易数据都存储在 Layer 1 上

· 都是「乐观型(optimistic)」,即,使用欺诈证明

· 都使用定序器来实现即时「确定性」

· 都具备通用的跨链消息传递功能,可以用来构建高级代币桥,如 @MakerDAO 的快速取款桥:https://forum.makerdao.com/t/announcing-the-optimism-dai-bridge-with-fast-withdrawals/6938

接下来是重头戏——不同点。Optimism 和 Arbitrum 之间最大的不同点在于欺诈证明机制的实现,即,一笔交易执行完后,如果状态引起争议该如何解决?

Optimism 采用单轮欺诈证明。也就是说,Layer 1 会在链上执行整个 Layer 2 交易,来验证状态根。这使得欺诈证明具有即时性,这是优点。

但是,这里面也存在一些问题

· 你需要监督交易执行,为此需要使用 OVM(即为了避免副作用而重新编写的 EVM

· Layer 2 交易的 gas 使用量不得超过 Layer 1 区块的 gas 上限

· 每执行一笔交易,你都需要在链上生成状态根——导致成本上升:(

存在安全隐患

Arbitrum 采用多轮欺诈证明。简单来说,就是通过二分查找,找到引起分歧的那个区块的第一个操作码。找到之后,只需在链上执行这个操作码。

多轮欺诈证明的优点如下:

· 它只需为一整批交易生成一个状态证明,并发布到链上

· Layer 1 区块 gas 上限并不重要,因为 Layer 2 交易不完全在 Layer 1 上执行

缺点如下:

· 需要 EVM -> AVM 翻译(幸好是自动的)

· 速度很慢——最坏情况下,需要长达 2 周时间才能完成欺诈证明。实际上是一周时间。

· 需要原始提款人在线并配合

从另一种角度来思考,Optimism 是集装箱化的,而 Arbitrum 是虚拟化的。

Optimism 的方法有一个很大的缺点。想象一下,如果出现硬分叉,导致以太坊共识规则改变,操作码被删除/重新定价或修改。这时,突然在 Layer 1 上重新执行过去的交易会得到截然不同的最终状态。我不知道 Optimism 团队会如何解决这个问题,但是我想真到了那一天他们会想出办法的。Arbitrum 完全控制 AVM 规范,因此不用担心这种问题。

这两个项目都试图尽可能贴近以太坊生态系统,但是这里面有一些不同。总的来说,你依然可以使用你所知道的与 EVM 相关的工具(solidity、hardhat 和 waffle 等)。但实际上没那么简单。

Optimism 需要一个特殊的 solidity 编译器来生成 OVM 字节码。因此,它只与 Solidity,而且是特定版本的 Solidity 兼容。另一方面,Optimism 的 Layer 2 节点只是经过了修改的 geth 客户端,修改的目的是为了提高兼容性。

从表面上来看,Arbitrum 完全兼容 EVM/JSON RPC 规范,但是它的节点是自定义实现。Arbitrum 通过自动化的 EVM-> AVM 翻译来支持欺诈证明。因此,它支持任何 EVM 语言(vyper、YUL+ 等)。

Optimism 使用 weth,而且内置钱包抽象。Arbitrum 自带 ETH 支持。

Arbitrum 提供统一的免许可桥,来实现任意代币和 Layer 2 之间的桥接(它部署了一个通用 ERC20 合约作为 Layer 2 对手方)。

Optimism 更喜欢专用桥,不过在 Optimism 上构建通用桥也是有可能的。关于这点,@dmihal 知道得更详细;)

最后一个差别是上线实现。Arbitrum 将在本月底上线「面向开发者的主网」,Optimism 则要等到 7 月。

如果你想要了解更多内容,我建议你观看这场由 @stonecoldpat0 主持的 @karl_dot_tech 和 @hkalodner 之间的友好辩论。

就我个人而言,这两个项目我都很支持。我已经等不及看到它们主网上线了。整个以太坊社区都亟需合适的 Layer 2 方案,而不是什么可扩展侧链。

如果你想要了解 Optimism 桥的例子,可以查看 https://github.com/makerdao/optimism-dai-bridge。我们准备在下周发布兼容 Arbitrum 的版本。