欧易OKEx研究院:以太坊中场战事——Rollup的实与虚

自以太坊诞生以来,其低下的交易处理能力,导致以太坊网络时常发生堵塞,且Gas费用高涨,严重地限制了以太坊生态的发展。为此,以太坊扩容问题一直被市场所关注,在DeFi大爆发的背景下,侧链、状态通道、Plasma等Layer 2扩容方案都无法满足市场的要求, Rollup成为了时代的宠儿。

当然,Rollup并不是一种纯粹的Layer 2方案,而是更像Layer 1和Layer 2的混合体:数据在链下进行计算并打包压缩,随后链上进行存储。此外,为了解决数据的真实性和有效性,保障资产安全,Rollup推出了使用“有效性证明”的ZK-Rollup,以及沿用Plasma“欺诈证明”的Optimistic Rollup。

综合而言,ZK-Rollup和Optimistic Rollup各有优劣,ZK-Rollup适用于支付、交易等非合约领域,成本低且速度快;而Optimistic Rollup因为OVM的存在,目前适用于智能合约应用领域;但随着ZK-Rollup类项目推出图灵完备的EVM,未来ZK-Rollup可能会取代Optimistic Rollup。

但是,Rollup的扩容上限取决于区块Gas消耗量的上限,因此只能成为以太坊在未来短中期的扩容方案,以解决DeFi生态的燃眉之急,从长期看,要根本性地解决以太坊扩展性问题,还仰仗以太坊2.0分片技术的顺利实现。

不过值得注意的是,Rollup协议可以捕获价值,在经济上具有可持续性。可以预见的是,Rollup项目发行的代币将具有巨大的投资潜力。

经过近两年的蛰伏,以太坊的Rollup扩容方案终于走到了要开花结果的黎明前夕:今年2月,Optimism宣布完成了A轮融资,并将于三月上线主网;来自Matter Labs的ZkSync,其主网也于去年上线,并将在今年推出支持图灵完备的智能合约;此外,另一个受行业瞩目的Rollup方案---Arbitrum,也将于今年上线主网。

表1. Rollup方案进展情况

资料来源:欧易OKEx研究院

在Rollup夜尽天明之时,市场也对其充满了期待与追捧。但从实际情况看,很多投资者和以太坊用户对Rollup的认知并不清晰,不过在总体上达成了共识:Rollup很重要,是以太坊的未来。

这句话的前半部分是对的,Rollup对当前的以太坊而言,确实是重要的;但后半部分却是不准确的,Rollup并不是以太坊的未来。更切确地说,Rollup只代表了以太坊的中短期扩容方案,是以太坊解决网络拥堵问题的中场战事,从长期看,要根本性地解决以太坊扩展性问题,还仰仗以太坊2.0分片技术的顺利实现。

想要正确地理解、预测Rollup的未来,把握其中的财富机会,我们还需要从Rollup的历史脉络、原理机制方面进行剖析。


1. 以太坊的扩容战争和Rollup的崛起


自以太坊诞生以来,其低效的性能就不断受到市场的病垢:以太坊网络的TPS(交易处理能力)约为15笔/秒,而Visa网络则是2000笔/秒,双十一期间支付宝更是达到50万笔/秒。低下的交易处理能力,导致以太坊网络时常发生堵塞,且Gas费用高涨,尤其是在2017年的大牛市,以及自2020年兴起的DeFi(去中心化金融)浪潮期间这一现象尤为突出,严重地限制了以太坊生态的进一步发展。

图1. 以坊网络日均交易笔数和Gas消耗量变化

资料来源:Etherscan,欧易OKEx研究院

解决区块链网络的拥堵,提升公链的可扩展性,逐渐成为行业关注的重点。各种区块链的扩容方案也纷至沓来,主要包括两大类:

链上扩容方案,也叫Layer 1方案,主要通过提高区块链本身的交易容量来实现扩容。常见的Layer1方案有增大区块容量(如BCH使用32M容量的大区块),隔离见证(BTC,将数字签名与交易数据分开,改变原区块结构以实现扩容),分片技术(以太坊2.0,将主链的状态和历史记录划分到不同分片上实现扩容)。

链下扩容方案,也叫Layer2方案,主要通过第二层协议在链下执行大部分交易,以降低成本提高效率。目前主流的Layer2方案包括状态通道、侧链、Plasma。

图2. 区块链扩容主要方案

资料来源:欧易OKEx研究院

在以太坊发展早期,人们普遍认为侧链(Sidechain)技术是解决区块链扩容问题的最佳方案。所谓侧链,即平行于主链的另一条独立的区块链,通过将部分交易以托管的方式转移到侧链,以此实现主链扩容,但这带来两个严重问题:首先,侧链上的资金安全得不到保障,一旦黑客控制住了某条侧链,就可以将侧链上的资金盗走;其次,侧链不能保证数据的可得性,只要黑客控制了侧链,就可以拒绝分享底层交易数据,对主链安全性造成重大打击。

图3. 侧链技术方案原理

资料来源:欧易OKEx研究院

为了解决侧链存在的问题,并实现以太坊扩容,以太坊创始人Vitalik在2017年推出了名为“Plasma”的Layer 2扩容方案。Plasma的特别之处在于设计了一套欺诈证明机制:Plasma将特定的底层数据发送给用户自己进行保管,解决了数据可得性问题;此外,Plasma有一个“退出期”设计,即便黑客取得侧链的控制权并尝试取款时,任何用户都可以在“退出期”内提交证据来进行挑战,如果挑战成功,任何人都不能提取这笔资产,并且运营方也将被罚款,由此保证了数据的真实、有效和准确性,解决了资金安全性问题。

然而,Plasma解决了侧链的问题,却产生了新的问题:首先,用户必须每两周上线一次,以实现对Plasma链的监控,否则错过了“退出期”,黑客就可以取出资产;其次,用户必须自己保存底层交易数据,以保证数据的可获得性,但却给用户带来巨大的存储成本。因此,Plasma对用户并不友好,体验极差。在2018年的大熊市背景下,曾经被以太坊社区基于厚望的Plasma方案也逐渐被抛弃。

事实上,即便没有2018年的大牛市,Plasma也难以适应以太坊生态的发展---从2019年开始,DeFi逐渐兴起,以Uniswap为代表的AMM更是成为其中的佼佼者。对于Uniwap上的流动性提供者(LP)而言,其存放在交易池中的资产,很容易发生改变,不可能满足Plasma方案中对LP每次交易时都进行挑战验证的要求。事实上,大量的DeFi协议都可以在不经用户同意下改变账户状态,因此Plasma在DeFi时代是注定没落的。

图4. Layer 2扩容方案的演化发展

资料来源:欧易OKEx研究院

同样地,状态通道也存在侧链和Plasma面临的问题:状态通道不能代表那些逻辑上没有明确所有者的对象 (如 Uniswap),需要对象都是明确的资产所有者。

因此,在DeFi对于以太坊生态越来越重要的今天,无论是状态通道、侧链,还是Plasma,都无法满足以太坊的现实需求。与其说是V神对Rollup起到了决定性的推动作用,不如说是时代选择了Rollup。那么Rollup的特殊之处在哪呢?


2. Rollup原理解析


在解析Rollup之前,我们不妨了解Plasma的扩容方式:在链下,由Plasma运营者将等待批量处理的交易汇总起来,生成一个梅克尔树(Merkle Tree),树中每个叶子可以代表一笔交易资产的信息,如果没有交易,则叶子值为0。随后,Plasma将梅克尔树的树根发送给主链上链,同时将梅克尔树的分支发送给用户保管。

因此,主链实际上只保存了梅克尔树根的哈希值,而通过梅克尔树根的引索,可以找到分支叶子中的具体交易信息,但这些具体的交易信息,而是由用户在链下存储,因此节省了链上区块大量的空间,实现了主链的扩容。

图5. Plasma扩容原理

资料来源:Plasma白皮书,欧易OKEx研究院

但正如前面所言,由用户在链下保存具体的交易信息,在数据可用性上打了折扣,也不适用于DeFi应用。为此,以太坊社区提出了一种新方案:将交易数据压缩并放在链上,这就是Rollup(聚合)方案。

具体而言,Rollup将交易数据进行压缩编制成梅克尔树,并存储在链上;同时在智能合约中保存梅克尔树的树根(状态根)。Rollup的运营方可以将发布一批汇总交易(Batch),该交易即压缩过的交易集合,而且包含之前的状态根和新状态根 (处理交易之后的新梅克尔树根)。智能合约会对状态根进行检查并更新,由此实现资产的转移。

当然,从上我们可以看出,Rollup并不是一种纯粹的Layer 2方案,而是更像Layer 1和Layer 2的混合体:数据在链下进行计算打包,但在链上进行存储。因此将Rollup称为半链下扩容或semi-layer 2方案更为合适.

图6. Rollup扩容原理

资料来源:Vitalik. An Incomplete Guide to Rollups,欧易OKEx研究院

用一个形象的比喻,现在我们要保存很多电影,Plasma类似于我们将电影存储在电脑上,然后只在U盘上保存一个目录文件,根据这个目录文件的指引,我们可以方便地找到任何一部电影在电脑中的位置;而Rollup的方法则是先将电影进行压缩,随后再全部保存到U盘中。这样一来,我们就可以在U盘中存储更多的电影。

那么Rollup是如何实现压缩的呢?---主要是对交易的参数进行压缩,主要包括Nonce,Gasprice,Gas,To,Value,Signature,如下表所示:

表2. Rollup压缩方式

资料来源:Vitalik. An Incomplete Guide to Rollups,欧易OKEx研究院

在过去,一笔交易需要占用112字节的存储空间,现在只需要12字节的空间,一个字节大约花费16 Gas;而在以太坊上,Gas上限是1250万,我们假设Rollup需要花费50万Gas,那么在Rollup上,其交易处理能力是:

(区块Gas消耗量上限 – Rollup Gas消耗量)/ 每字节的Gas消耗量/一笔交易字节数/出块时间 =(12,500,000 – 500,000)/ 16 / 12 /14= 4464 笔/秒

目前在以太坊上进行一次转账需要消耗约21,000 Gas,这意味着如果全部用来转账,那么以太坊的最大交易处理能力为:区块Gas消耗量上限/ 单笔转账Gas消耗量/出块时间 = 12,500,000 / 21,000 /13 = 45笔/秒

这意味着Rollup在转账场景下降以太坊的TPS提升了100倍。同样地,根据Vitalik的计算,在ERC20转账、Uniswap运用场景,可实现同条件下以太坊TPS扩展100-400倍。

前面的分析一直很顺利,但我们忽略了一个与侧链技术类似的重要问题:如何防止Rollup运营方伪造数据进行盗取资产呢?以太坊社区提出了两个方案:使用“有效性证明”的ZK-Rollup,以及沿用Plasma“欺诈证明”的Optimistic Rollup。


3. ZK-Rollup VS Optimistic Rollup


首先我们看实现有效性证明ZK-Rollup方案。ZK-Rollup即采用  ZK-SNARK (简明的非交互式零知识证明,zero-knowledge succinct non-interactive argument of knowledge)来保证交易的安全性。

"零知识证明(ZKP)"是由 S.Goldwasser、S.Micali 及 C.Rackoff 在 20 世纪 80 年代初提出,指证明者能在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。

一个经典的例子:有一个缺口的环形长廊 ,出口和入口距离非常近(在目距之内),但走廊中间某处有一道只能用钥匙打开的门,Alice 要向 Bob 证明自己拥有该门的钥匙。采用零知识证明,则 Bob 看着 Alice 从入口进入走廊,然后又从出口走出走廊,这时Bob没有得到任何关于这个钥匙的信息,但是完全可以证明Alice拥有钥匙。

图7. 零知识证明案例

资料来源:欧易OKEx研究院

从上我们可以看出,ZKP具有计算的不对称性。在ZK-Rollup的方案中,由Rollup运营方投入大量资源以执行ZK-SNARK计算并放在汇总交易(batch)中,而智能合约(验证方)可快速低成本低证明交易安全性。因此ZK-Rollup有诸多好处:能在保护隐私的同时简洁快速地验证数据的真实有效性;但其缺点是计算量大,技术难度高且难以支持虚拟机。

在前面的Plasma方案中,我们已经介绍过其设计的“欺诈证明”机制,可实现交易数据的真实、有效和准确性,保证了资产的安全。Optimistic Rollups正是沿用了该机制:这类 Rollup会追踪所有历史状态根以及每个 batch 的哈希值。如果任何人发现某个 batch 的后状态根不正确,都可以向区块链发布一个证明,证明该 batch 计算错误。智能合约会对证明进行验证,并且对该 batch 及其之后的 batches 进行回滚。

Optimistic选择了Plasma的欺诈证明机制,即意味着有像Plasma一样漫长的“退出期”(约一周时间),这极大地降低了资金的利用效率,但好消息是,随着DeFi生态的成熟,可以有大量的流动性提供者为用户在“退出期”内提供资金,可有效解决资金利用抵消的问题。此外最重要的是,Optimistic Rollup也继承了Plasma的OVM,这意味着可在Optimistic Rollup网络部署兼容以太坊EVM的智能合约,这一点对DeFi尤为重要。

表3. ZK-Rollup和Optimistic Rollup性能对比

资料来源:Vitalik. An Incomplete Guide to Rollups,欧易OKEx研究院

综合而言,ZK-Rollup和Optimistic Rollup各有优劣,ZK-Rollup适用于支付、交易等非合约领域,成本低且速度快;而Optimistic Rollup因为OVM的存在,目前适用于智能合约应用领域;但随着ZK-Rollup类项目推出图灵完备的EVM,未来ZK-Rollup可能会取代Optimistic Rollup。


4. Rollup的未来与财富机遇


从上面我们可以看出,相较于其他Layer2 方案,Rollup能更好地保证数据的安全性和数据的可得性,然而Rollup真的是以太坊的未来吗?

并不是,从Rollup的扩容方案可以看出:区块Gas消耗量的上限即是Rollup方案的上限。这类似于早高峰时乘坐地铁,为了使地铁车厢(区块)能装更多的人,我们可是再挤更多的人进车厢(压缩)。然而,再怎么压缩,也是有上限的。在未来随着区块链应用的不断发展,我们仅仅会为了最多扩容100倍而满足吗?所以从长期看,以太坊扩容的未来还是取决于以太坊2.0分片技术的顺利实现。

然而,根据以太坊官方的规划,以太坊2.0分片的实现可能要等到2030年了。但即便在目前,由于DeFi的大热,以太坊早已拥挤不堪,Gas费高企。几年前的状态通道、Plasma等Layer 2方案无法满足DeFi的要求,分片技术又是一个遥远的目标。正是“往者不可谏,来者也不可追”,Rollup自然而然成为了在短中期应对以太坊扩容方案的最佳方案,成为迈向以太坊2.0的中场接力手。 

当然,Vitalik主推Rollup的另一个原因在于:Rollup协议可以捕获价值,在经济上具有可持续性。

先谈经济价值,Rollup可以缓解以太坊的拥堵,降低Gas费。节约出来的成本,其中的部分就可以转化为Rollup协议的收入(如收费和MEV的方式),并具有经济上的可持续性。

那么Rollup为什么可以捕获价值呢?这与Rollup的特殊性有关:数据放在主链上,仅仅是在链下进行数据计算。这种介于Layer1和Layer2的混合方案,使得Rollup成为主链上一个特殊Dapp应用,因此Rollup项目是可以在主链上发行基于该Rollup协议的代币,能通过代币来捕获协议的价值。

可以预见的是,在未来几个月Rollup大爆发后,将会有众多Rollup发行项目代币,那些愿意将协议经济价值附着在代币上的项目,其代币将具有很大的投资潜力。

写评论,请先登录