风险提示:防范以虚拟货币/区块链名义进行的非法集资风险。 ——银保监会等五部门

用非技术语言说透 Rollup 如何实现以太坊扩容

链闻 2021-06-02 14:40:00
微信分享

扫码分享

Rollup 本质上是一个单独的区块链,但有一些修改...

作者:Benjamin Simon,Mechanism Capit / 来源:mechanism.capital

我们先打一个比喻。

想象一下我们又回到了中学数学课上。我们的老师,就像你曾经的中学数学老师那么残忍,给我们列出了一百个长除法问题,每个除法都涉及很大的数字。我们被告知,任务是解答尽可能多的问题。但是有一个问题!我们必须在一张答卷纸上写下最终解决方案和每个计算步骤。几分钟后,伴随着我们胃部下沉的难受感觉,我们感觉到这项任务实在是荒谬的不可能任务。在一页中仅仅能写下少数完整的答案。

这个卡夫卡式的故事与 Rollups 有什么关系?

在这个比喻中,这张答卷纸代表一个以太坊区块,数学问题是智能合约交易。以太坊目前非常拥挤。每个区块中需要包含的交易太多了。更糟糕的是,这些交易中的大部分都是计算密集型的,例如闪电贷或通过聚合器路由的交易。 前 DeFi 时代仅仅有简单的转账和支付的情况已经成为历史。

这就是问题的关键。正如比喻中的数学老师要求我们把每一行艰难的长除法解题答案都塞在一张纸上一样,以太坊也必须处理和记录每笔交易的每一行计算。

Rollups 解决方案的出现改变了这种情况。

Rollups 将计算移到链下,同时只在链上存储尽可能少的交易数据。从这个基本意义上讲,它们是以太坊的演算草稿纸。Rollups 处理所有杂乱的数据处理,使得指数级的智能合约交易批量汇总在单个以太坊块内。

这个比喻可以帮助描绘 Rollups 旨在解决的问题(「由于计算过载导致的网络拥塞」)。它甚至让我们模糊了解了 Rollups 解决方案具体需要什么(「移动计算移至链下」)。 但至于 Rollups 实际上是如何工作的、它们是什么样子、以及为什么它们让像我这样的人如此兴奋——我们需要深入研究。

什么是 Rollup?

Rollup 本质上是一个单独的区块链,但有一些修改。 与以太坊一样,Rollups 协议具有执行智能合约代码的「虚拟机」(EVM)。Rollup 虚拟机的运行独立于以太坊自己的虚拟机,但它们由以太坊智能合约管理。这种连接使得 Rollups 和以太坊进行通信。Rollups 执行交易并处理数据,以太坊接收并存储结果。

在技术层面上,Rollup 链与其他更传统的区块链之间的关键区别在于产生新区块的方式。

通常,区块链由各方(「矿工」或「验证者」,具体取决于链的类型)的分布式网络予以维护。 这些相关各方通过共识共同生产区块。简单来说,相关各方就如何处理一组交易——或者说如何构建下一个区块进行投票。 获得多数支持的区块将成为永久写入链上的区块。

相比之下,Rollup 链不通过少数服从多数的规则运行。相反,监控 Rollup 状态的一方可以将所谓的「断言」(assertion)发送回以太坊,说明交易应该如何处理。重要的是,以太坊可以接受或拒绝此断言,而不管 Rollup 其他方的大多数是否支持此断言。在实践中,这通常意味着 Rollup 中的某一方被指定为处理交易和生成区块的任务。

等一下……Rollups 是中心化的解决方案?

Rollup 区块生产的中心化特性是 Rollup 能够如此高效地处理交易的部分原因。但它也随之产生了一个明显且令人担忧的问题:如果没有多数人的共识,Rollup 如何确保区块生产是正确的——如果区块生产者碰巧是恶意的,会发生什么?

这种中心化特性让习惯于基于共识的区块链加密用户感到困惑。事实上,如果故事到这里结束,我们可能会(错误地)得出结论,例如 Avalanche 联合创始人 Kevin Seqniqi 最近在 推特上所说 的那样——Rollup 只是「由单方复制的数据库」。

实际上,正如我们将看到的,所谓中心化的指控与其说是错误的,不如说是逻辑上的误导。 通常情况下,没有强大共识机制的中心化区块链很容易受到腐败和 恶意收购 的影响。 不过在 Rollup 的独特情况下,缺乏去中心化实际上并不会造成安全性和诚信度的问题。要理解为什么会这样,我们需要更深入地挖掘。

数据可用性的重要作用

回想一下我们开头提到的数学作业难题。我们的救命稻草是可以用于计算的草稿纸是这样我们只需要在答卷纸上写下问题及其答案。Rollup 就好像是草稿纸,我们说它们「将智能合约计算移到链下,同时仅在链上存储尽可能少的交易数据。」

事实上,最后一个环节——链上交易数据的存储——对于 Rollup 的工作方式至关重要。 在 Rollup 中,只有计算(数据处理)处于链下状态。Rollup 处理的每笔交易仍将其输入数据(正式名称为「调用数据」)存储在以太坊上。

将交易数据保存在链上的重要性是什么? 在数学作业这个比喻中,我们交给老师的最后一张答卷纸包括了长除法问题及其答案。我们的老师事后可以检查我们的成果,即使答卷中没有包括单独的计算步骤。同样,链上数据的持续可用性意味着以太坊底层可以重复 Rollup 上的任何计算。

简而言之,Rollups 的链上数据可用性意味着可以有内置的审查过程。以太坊可以「复查」在 Rollup 链上所处理交易的诚信度,然后再将它们永久写入分类账——就像美国最高法院的 司法审查权 一样。

受限性的力量

因此,Rollup 的关键含金量在于其受限性。Rollups 只将交易推送到底层; 它们不能强制接受,因为以太坊可以在必要时推翻任何 Rollup 交易。因为它们受制于这个审查过程,所以说 Rollup 交易不具备真正的最终性。

考虑到 Rollup 的受限性质,我们可以回来谈尚未解决的中心化指控。Rollup 的单个区块生产者可能会尝试恶意处理交易。但如果是这样,以太坊将在审查过程完成后简单地拒绝该批次,并且该区块生产者将受到惩罚。

现在,「审查过程」究竟如何运作取决于 Rollup 是 Optimistic 机制还是零知识机制(点击 这里 了解更多)。但对于两者而言,审查过程比没有 Rollup 的以太坊自行处理交易的效率会有指数级的优势。

总之,Rollup 系统依据「制衡」原则来确保以太坊依然是主权链;以太坊自身的共识是真相的最终仲裁者。但重要的是,这不同于侧链解决方案。由于缺乏相同的审查流程,侧链通过自己的、完全独立的共识机制处理交易。侧链交易是「最终的」,而 Rollup 交易则不是(直到它们在以太坊上得到确认,才确立最终性)。 因此,侧链需要更高的信任假设,因为它们不能从以太坊自身的去中心化安全机制中受益。事实上,我认为侧链更类似于兼容 EVM 的第 1 层解决方案,而不是 Rollup。

总结

概括地说:Rollups 解决方案是将计算移至链下以释放更多链上空间。链上数据可用性至关重要,因为它意味着以太坊可以仔细检查 Rollup 交易的诚信度。反过来,这一审查过程可作为对 Rollup 区块生产的「检查」,Rollup 因此无需共识机制。

Rollups 最终可以让以太坊拥有足够大的市场(蛋糕)并能吃掉这一蛋糕:它们在不破坏网络去中心化安全性的情况下,以指数级的水平释放了更多的链上容量。至少在我看来,这与我们所期待的扩容解决方案一样优雅。

感谢 t11s 和 Hasu 富有建树的评论和建议。

白话区块链

区块链世界入口第一站,人人都能看懂的区块链;24 小时热点实时追踪。