以太坊二层扩容之路:Plasma衰落与Rollup崛起_LAS:Marvellex Classic

编者按:本文来自链闻,撰文:AshwinRamachandran与HaseebQureshi,前者系区块链风险投资机构DragonflyCapital初级合伙人,后者为DragonflyCapital管理合伙人,编译:詹涓,Odaily星球日报经授权转载。那是2017年8月。以太坊原生代币ETH的价格接近历史最高水平,以太坊区块链随着使用量增加而爆棚,链条在不断增长的需求下不堪重负,研究人员和开发人员正在疯狂地寻找新的扩容解决方案。在世界各地的区块链会议上,开发人员讨论了不同的扩容建议。以太坊社区迫切需要一个解决方案。在这种狂热中,Plasma论文的首个版本发布,它承诺提供一个第2层扩容解决方案,称其可以处理「全世界几乎所有的金融计算」。

TechCrunch关于Plasma的报道让我们再快进到2020年。以太坊还是跟从前一样缓慢,但它却战胜了所有的所谓的「以太坊杀手」。以太坊2.0的发布日期不断推迟,随着许多开发团队偃旗息鼓,Plasma似乎已经完全消失了。新的解决方案,如optimistic和ZKrollup被誉为最好的扩容解决方案。而关于Plasma的记忆,似乎消失得无影无踪。所以,是谁杀死了Plasma?

让我们把时间拨回到2017年初。以太坊第一次成为了主流,人们对不久的未来充满无限的乐观。有人声称所有有价值的资产不久将被代币化。旧金山的各种聚会上只有站着的地方,每当提到以太坊,人群就会聚集。但是以太坊并没有实现可伸缩性。在这股热潮中,VitalikButerin和JosephPoon发表了一篇论文,介绍了一种名为「Plasma」的新第2层扩容解决方案。

VitalikButerin和JosephPoon在旧金山的一次会议上介绍PlasmaPlasma声称能令以太坊扩展到Visa级别的交易量,这种大胆的说法促使开发人员和社区兴奋无比。不久后,以太坊的研究团队聚集在Plasma周围,将它视为解决以太坊可伸缩性问题的办法。

但是到底什么是Plasma,为什么它最终没有兑现它的承诺呢?Plasma是如何运作的?

最初的Plasma白皮书描述了一种构造MapReduce「区块链树」的机制。树中的每个节点都代表一个唯一的区块链,这个区块链连接到它的父节点,所有这些区块链被安排在一个巨大的层次结构中。然而,最初的规范很模糊而复杂。在它发布后不久,Vitalik在一篇新论文中简化了这个规范,论文题为MVP(MinimalViablePlasma,最小可行化Plasma)。

Plasma「区块链树」MVP提出了Plasma的简化版本:一个简单的基于UTXO的侧链,在数据不可用的情况下能保持安全性。但什么是侧链?数据不可用意味着什么?在深入研究Plasma之前,我们先来看看这些术语的含义。侧链,就是连接到另一个区块链上的区块链。侧链可以通过许多不同的方式,比如由可信的第三方、某个联盟或共识算法来运营。例如,Blockstream在名为Liquid的比特币网络上参与一个联盟侧链。Liquid在其信任模型中进行了权衡,因此能确保更高的事务吞吐量。用户必须相信联盟不会串通和窃取资金。在这种情况下,区块链运营商是Liquid联盟的各种成员,譬如Blockstream公司。

Liquidpeg-in和peg-out机制的可视化一个侧链通过双向挂钩连接到一个更大的区块链上。用户可以通过将资金发送到特定的地址或主链上的智能合约,将资金存入侧链。这被称为「peg-in」交易。要提取资金,用户可以在侧链上执行相同的操作,在主链上取回他们的资金。这被称为「peg-out」交易。但这与Plasma有什么关系呢?正如我们在上面的例子中所看到的,将资金移出侧链需要一个关键的组成部分:信任。用户必须相信侧链运营商不会携款潜逃。但区块链的主要特征不就是免信任吗?如果用户想要在无需信任其运营商的情况下与侧链进行交互,该怎么办?这正是Plasma所要解决的问题。Plasma的设计最大限度地降低了侧链运营商的信任要求。也就是说,即使运营商行为不端,Plasma也能防止资金被盗。但即使运营商不能直接窃取资金,侧链还有另一个问题。如果侧链运营商发布了一个区块头,但拒绝发布底层交易数据,该怎么办?这将阻止任何人验证侧链的正确性。这个概念称为数据不可用。Plasma试图在哪怕运营商拒绝提供交易数据的情况下,仍能确保用户的安全——万一运营商拒绝发布数据,所有用户仍然可以取回他们的资金并退出侧链。Plasma对其安全性和可伸缩性做出了很大的承诺,给人们带来了希望。因此,在2017年的牛市中,人们普遍认为Plasma可以解决以太坊的可伸缩性问题也就不足为奇了。但随着市场在2018年清醒起来,区块链炒作轰然倒塌,有关Plasma的一幅更现实的图景开始显现。在现实世界的部署中,Plasma构成的问题比解决方案还多。第一个问题是,每个用户必须监控和验证PlasmaMVP链上的所有交易,以检测恶意运营商的行为并及时退出。然而,事务验证成本高昂,并且这种监视需求为参与Plasma链增加了大量开销。研究人员还意识到,用户很难退出Plasma链。当用户试图从PlasmaMVP链中提取资金时,他们必须提交退出交易请求,然后等待一段时间。这就是所谓的挑战期。在挑战期的任何时候,任何用户都可以通过提供退出无效的证明来挑战另一个用户的退出。因此,所有的退出只能在挑战期结束后处理,一些挑战期会长达1周。但情况发展得更糟。记住一点,即使运营商扣下数据,我们也希望用户能够从Plasma链中提取资金。MVP是这样处理的:如果Plasma交易数据被扣留,每个用户需要根据Plasma链的最后有效状态来退出并获得资金。(注意:为了避免恶意运营商抢占诚实用户的先机,退出的优先级是根据它们最后交易的时间排序的。)

以太坊存储的增长在最坏的情况下,如果所有用户都需要退出一个Plasma链,那么该链的整个有效状态必须在一个挑战期内发布到以太网主网上。考虑到Plasma链可以任意增长,而以太坊区块已经接近其容量,几乎不可能将整个Plasma链倾倒到以太坊的主网上。因此,几乎可以肯定的是,大量退出会把以太坊挤爆。这就是所谓批量退出问题。随着2018年价格开始暴跌,以太坊的追随者开始意识到PlasmaMVP并不是他们所期望的那种万试万灵的可伸缩性解决方案。根本没有办法克服它的弱点。PlasmaMVP是一个死胡同。以太坊仍然将在它的事务负载下挣扎,而以太坊2.0离我们还有很多年。下一代Plasma

2018年年中,随着价格持续下跌,以太坊的研究社区继续尝试改进Plasma,反复研究PlasmaMVP的设计。他们提出的新版本被称为PlasmaCash。据其主要设计者VitalikButerin称,PlasmaCash将允许每秒任意高的交易量,并解决困扰其前身的问题。有些人甚至声称,这种新设计可以达到每秒数十万的交易。

首先,让我们记住PlasmaMVP的问题。在运营商行为不当的情况下,存在批量退出问题用户必须等待整个挑战期结束才能取钱用户必须监控Plasma链上的所有交易PlasmaCash与MVP相比,有一个主要的优势:通过使用不同的数据模型,PlasmaCash可以完全避免批量退出的问题。在PlasmaCash中,所有代币都被表示为非同质代币(NFT),这使得证明一套代币的所有权变得更加容易。简单来说,用户有责任证明自己而非他人拥有对代币的所有权。因此,用户只需要监控他们自己的代币,而不是整个Plasma链。PlasmaCash还提出了一种新的交互式挑战系统,允许用户在运营商行为不当的情况下轻松提取资金。利用一种新的Merkle树结构,即「稀疏Merkle树」,用户可以使用包含证明轻松地验证代币的历史和所有权。在运营商行为不当的情况下,用户只需要发布他们目前拥有的代币的链上证明。然而,PlasmaCash带来了一系列新的问题。首先,恶意用户或代币过去的所有者可能会做出错误的取款尝试。因为用户需要证明他们拥有自己的代币,所以实际上是由这些用户来发现并质疑自己的钱被走。因此,和PlasmaMVP一样,PlasmaCash要求用户每两周至少上线一次,以及时在挑战期内发现错误取款。此外,为了证明代币的所有权,用户必须维护该代币的全部历史记录和相应的包含/排除证明,导致存储需求不断增加。到2018年底,ETH的价格已跌至谷底,乌托邦式的乐观主义不复存在。PlasmaCash虽然比MVP有所改进,但并不是以太坊当年所承诺的Visa规模的解决方案,它的MapReduce「区块链树」现在只是一个白日梦。大多数为PlasmaCash开发客户端的公司都已经将工作搁置,而且其实现都处于半完成状态。以太坊社区陷入了僵局。虽然新的Plasma架构继续出现,并较其前辈略有改善,但以太坊社区未能团结一致支持其中任何一个架构。Plasma似乎已经死了。Rollup现身

就在人们对第2层的信心触底之际,一位化名为BarryWhitehat的用户在GitHub上公开了名为「roll_up」的方案。该报告描述了一种新类型的第2层扩容解决方案:一个类似于Plasma的架构,并可「打包」交易,它无需依赖于对运营商的信任,打包的正确性可以通过使用一个SNARK的链上证据来证明。此SNARK确保运营商不可能发布恶意或无效的事务,并确保所有侧链区块都是有效的。不久后,VitalikButerin对Barry的方案发布了一个改进版,他称之为zk-Rollup。zk-Rollup成为了以太坊论坛上浏览量最高的帖子之一。Vitalik建议引入一种解决方案来避免困扰Plasma的数据可用性问题:在以太坊区块链上发布侧链交易数据。将交易数据作为函数参数发布意味着可以在发布时对其进行验证,随后将其丢弃,这样就不会占据以太坊的存储空间。zk-Rollup可以在不牺牲可负担性或安全性的情况下,避免Plasma的退出游戏和挑战期。有了zk-Rollup,人们可以使用新的密码学一次性解决Plasma的所有第2层扩容难题。

Vitalik的zk-Rollup帖文但是zk-Rollup有它自己的一套权衡方案。生成有效性证明在计算上很昂贵。这些zk-SNARK会在每个区块生成,生成时间可能长达10分钟,而每次验证的成本高达350,000gas,这大约占整个区块的3.5%。此外,目前无法在zk-Rollup侧链上部署通用智能合约。目前正在开发专门的零知识虚拟机,如zkVM和ZEXE,但在与之交互时仍然需要大量的专门知识。在大多数情况下,zk-Rollup限制了一般的可编程性。

zk-Rollup可视化,GeorgiosKonstantopoulos制图到2019年年中,这些新进展为以太坊的研究社区重新注入了活力。zk-Rollup似乎解决了困扰第2层的许多问题。像MatterLabs和LoopRing这样的公司开始积极地开发zk-Rollup,现在这两家公司都已有测试网进行实现。通过优化,MatterLabs相信它可以在ZK同步网络上达到2,000TPS。「乐观」是一剂良药

但并不是所有人都把希望寄托在zk-Rollup上。在第一个zk-Rollup规范发布一年后,JohnAdler和Mikerah引入了一个他们称为「合并共识」的设计。合并共识使得链下的共识系统可以完全在以太坊上验证,而不需要任何花哨的零知识加密。Plasma团队其后发布了合并共识设计的扩展版本,并添加了现在有些声名狼藉的名字:OptimisticRollup。zk-Rollup依赖于zk-SNARKs来验证和完成每个区块,而OptimisticRollup采用不同的方法:你何不假设每个区块都是有效的呢?当每个人都表现得很诚实时,这在「快乐路径」中很有效,但是我们知道运营商可能会行差踏错。那么OptimisticRollup又将如何处理运营者的错误行为呢?「乐观」的答案是使用欺诈证明。欺诈证明是运营商执行无效操作的计算证明。如果运营商发布了一个无效的状态转换,任何人都可以提交一个证明,证明该转换无效,然后恢复那些事务。由于这些证明是非交互式的,它们可以由任何人发送:不需要由用户监控自己的代币的安全性。然而,与zk-Rollup不同的是,OptimisticRollup需要3-5倍的事务数据才能完成。这些数据主要包括签名数据之类的见证。在最好的情况下,除非提交欺诈证明,否则乐观汇总交易永远不需要验证。然而,对链上见证进行验证和发布很昂贵,并且开发人员已经探索了允许廉价的大规模验证和减少事务数据需求的聚合签名机制。这种优化可以将OptimisticRollup的理论TPS从目前的约450TPS一直增加到潜在的约2,000TPS。OptimisticRollup提供了一组与zk-Rollup非常不同的权衡。它们的成本较低,但是它们的安全性较差,换句话说,一直存在不正确地应用事务、之后再予以恢复的可能性。这个安全窗口可以长达一个星期。因此,用户在这个安全窗口期无法退出。然而,可以通过引入二级市场来改善这些退出问题。用户可以将他们的退出权出售给第三方流动性提供者,以换取少量的费用。。这将允许用户立即退出rollup链。虽然zk-Rollup需要程序员理解复杂的约束系统和高级密码学,但OptimisticRollup允许通用智能合约部署。这意味着像Uniswap这样基于智能合约的协议可以建立在OptimisticRollup侧链之上。Rollup系列解决方案为解决Plasma的数据可用性问题和退出复杂性提供了类似的方法,但都有可能极大地扩展Plasma的结构。例如,IDEX已经构建并部署了他们自己的OptimisticRollup版本,并在这个结构上运行了一个去中心化交易所(DEX)。同样,FuelLabs也建立了OptimisticRollup的一个版本,允许UTXO风格的支付和ERC-20代币交换。PlasmaGroup,最近宣布他们把重点放在OptimisticRollup,并致力于在他们的平台上提供通用智能合约性能。上升的一切必然汇合

Plasma最终不仅仅是一个协议。在非理性繁荣时期,Plasma是以太坊需要相信的故事。但事后看来,它所宣称的无限扩容是一种技术上的傲慢。只有在随着Plasma发展的过程中,我们才能深刻地认识到第2层扩容所固有的权衡。ETH的价格在去年有所反弹,人们对ETH的未来也持乐观态度。经过近三年对安全、可扩展和稳健扩容解决方案的探索,以太坊研究社区最终围绕rollup进行了聚合。Plasma和它的兄弟们最初的尝试是高尚的,但一群创新者最终创造出了更现实的第2层设计,这似乎解决了Plasma最糟糕的问题。一些以Plasma为重点的研究小组,如PlasmaGroup,已经着手研究OptimisticRollup解决方案。但是我们认为,寻找最终的第2层扩容解决方案才刚刚开始。这个领域已经涌现出了许多竞争者,我们希望这仍然是一个活跃且令人兴奋的研究和开发领域。

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

金宝趣谈

[0:0ms0-4:744ms