前言
让我们从一个比喻开始。
想象一下我们回到了中学的数学课上。正如中学数学老师往往冷酷的那样,我们的老师递给我们一张表单,上面列着一百道长除法题,每一道都有非常大的数字。我们被告知,我们的任务是要计算出尽可能多的题目。但棘手的是,我们必须使用同一张纸来写出答案和进行每一个计算步骤。仅仅几分钟后,我们就不得不正视这项任务的荒谬之处:要将这么多完整的解题方案挤进这一张纸上简直是不可能的。
这个噩梦般的故事和Rollups什么关系?
在这个比喻中,这张纸就好比一个以太坊区块,而这些数学问题就是智能合约交易。以太坊目前极度拥挤。有太多的交易需要被打包进每个区块中。更糟糕的是,这些交易中的大多数都是计算密集型的(也即需要进行大量计算),比如闪电贷(flashloans)或通过聚合器进行的交易。过去(DeFi之前的)那种简单的转账和支付的时代已经一去不复返。
Scroll联创:测试网超400万个唯一钱包地址,每天处理逾50万笔交易:金色财经报道,Scroll联合创始人YeZhang和Sandy Peng在Anna Rose的Zero Knowledge Podcast节目中分享了Scroll最近一年的项目进展和生态发展,以及Scroll团队建设、如今的Layer2格局、Scroll硬件加速方面的成果和未来的技术路线图。
YeZhang表示,Scroll的首要任务是尽快启动主网,团队已经将电路发送给审计公司,下一步将是实现去中心化证明者,最后是设计去中心化排序器。Sandy表示,目前Scroll测试网有超过400万个唯一钱包地址,每天处理超过50万笔交易,100多个项目向官方提交了信息。[2023/5/15 15:02:53]
这就是问题的关键。就像该比喻中的数学老师要求我们把每一行辛苦的长除法都填到一张纸上一样,以太坊也必须处理和记录每一笔交易的每一行计算。
直到Rollups的到来。
Aztec Network:计划推出的新链并非Layer1,而是一个更强大的Rollup Layer2:金色财经报道,Aztec Network官方发推称,该项目计划推出的全新区块链网络并非Layer1,而将是一个采用了Noir语言的更新、更强大的Rollup Layer2。
此前消息,Aztec Network已宣布将逐步关停DeFi隐私桥项目Aztec Connect,未来将把重点集中在Noir语言和下一代加密区块链的开发上。[2023/3/14 13:01:50]
Rollups将计算转移至链下,而在链上只存储最少的交易数据。从这个基本意义上讲,Rollups就像是以太坊计算的「草稿纸」。Rollups处理所有凌乱的数据处理,通过对交易进行批量处理("卷起")的方式来实现单个以太坊区块内包含的智能合约交易量呈指数增加。
这个比喻有助于描述Rollups要解决的问题(也即"由于计算超负荷造成的网络拥塞"),甚至为我们提供了一个关于Rollup解决方案的模糊概念(也即"将计算转移至链下")。但至于Rollups是如何工作的,它们是什么样子的,以及为什么它们让我们人如此兴奋,我们还需要深入研究一下。
Layer 2 Rollup高性能框架Godwoken上线主网测试版本:据官方消息,Nervos 上完全兼容以太坊的Layer 2 Rollup高性能框架Godwoken上线主网测试版本,目前已开放Godwoken白名单计划,开发者可申请参与主网测试。
Godwoken 为CKB提供了扩展能力以及基于账户的编程模型,使得以太坊系的DApp均可以接入到Nervos的Layer 2中来。[2021/11/4 21:25:57]
什么是Rollup?
本质上来说,每个Rollup都是一条单独的区块链,但进行了一些修改。与以太坊一样,每个Rollup协议也有一个执行智能合约代码的“虚拟机”。Rollup的虚拟机独立于以太坊自己的虚拟机EVM而运行,但它是由某个以太坊智能合约管理。这种连接性使得Rollups能够与以太坊进行通信。Rollup执行交易并处理数据,以太坊接收并存储结果。
在技术层面上,Rollup链和其他更传统的区块链之间的关键区别在于产生新区块的方式。
跨Rollup转账应用HopProtocol已支持L2扩容方案Arbitrum:9月17日消息,跨Rollup转账应用HopProtocol已支持L2扩容方案Arbitrum,目前仅支持USDT与USDC转账,将在下周开放对ETH的支持。用户可向hUSDC/USDC和hUSDT/USDT流动性池添加流动性,并通过HopProtocol的桥接合约在L1上锁定USDC或USDT,在Arbitrum上铸造hUSD或hUSDT。目前HopProtocol支持的网络包括以太坊主网、Polygon、xDai、Optimism以及Arbitrum,用户已经可以通过Hop进行USDC、USDT在Arbitrum与其他支持的扩容网络之间的转账。[2021/9/17 23:31:34]
通常,区块链是一个由多方(即"矿工"或"验证者",取决于区块链的共识类型)组成的分布式网络维护。这些各方通过共识来共同生产区块。简单地说,各方投票决定如何处理一组交易,或者换句话说,如何构建下一个区块。获得多数支持的区块将被永久写入区块链中。
BM:EOS也可部署zksync rollup:9月16日,EOS创始人BM(DanielLarimer)转发V神“已利用zkSync新资助13个项目”的推特并表示,这很好,但是尝试将其与像Bancor这样的DeFi交换器一起使用,并观察状态冲突将吞吐量降低到每个块一个事务,客户端必须不断重新生成证明并签署新的TRX。有人问EOS是否支持zksyncrollup,BM回应称,EOS也可部署zksyncrollup。[2020/9/17]
相比之下,Rollup链并不通过多数决定规则来运行。相反,监控Rollup状态的某个单一方可以向以太坊(L1基础层)发送所谓的“断言”,说明某个批次的交易应该如何被处理。重要的是,以太坊将独立地接受或拒绝这一断言,不管该Rollup的大多数其他方是否支持这一断言。在实践中,这通常意味着Rollup链的某个单一方会被指定处理交易和生产区块的任务。
等等...Rollups是中心化的?
Rollup区块生产的这一中心化属性正是Rollups能够如此高效地处理交易的部分原因。但这也提出了一个明显且令人担忧的问题:没有多数人的共识,Rollups如何确保区块生产是正确的?如果区块生产者碰巧是恶意的,会发生什么?
这种中心化让习惯于基于共识的区块链的加密用户感到困惑。事实上,如果故事到此结束,我们可能会(错误地)得出这样的结论:Rollups只是“由单一方复制的数据库”,正如Avalanche联合创始人KevinSeqniqi最近在推文中(误解的)那样。
实际上,这个关于Rollup中心化的指控与其说是错误的,不如说是逻辑上的误解。通常情况下,没有健全共识机制的中心化区块链确实容易受到腐败和敌意接管的影响;然而,在Rollups的独特情况下,这种缺乏去中心化实际上对于它们的安全性或者可靠性并不是一个问题。为了理解为什么会出现这种情况,我们需要更深入地了解。
数据可用性的重要性
回顾一下我们一开始的那个不幸的数学作业。用于计算的「草稿纸」允许我们在主要表单上仅需写下题目和答案即可;Rollups就好比是「草稿纸」,它们“将智能合约计算转移至链下,而在链上只存储了最少的交易数据。”
实际上,这最后一部分,也即"在链上存储交易数据",对于Rollups的运作方式至关重要。在一个Rollup链中,只有计算(数据处理)在链下进行,而Rollup处理的每一笔交易仍会将其输入数据(也即"calldata")存储在以太坊上。
在链上保存交易数据的重要性是什么?在数学作业的比喻中,我们最终交给老师的那张纸包括了长除法题目和它们的答案,这使得老师可以检查我们的作业,即使我们没有在上面写出单独的计算步骤。类似地,链上数据的持久可用性意味着,Rollup上面的任何计算都可以被以太坊基础层重复计算。
简而言之,Rollup的链上数据可用性允许一个内置的审查过程。在将交易永久记入账本之前,以太坊可以对Rollup链上处理的交易的完整性进行“再次检查”(doublecheck)——几乎就像美国最高法院的司法审查权力一样。
局限性是一种优势
因此,Rollups的关键特性是它们的局限性。Rollups仅将交易推送到(以太坊)基础层;它们不能强制基础层接受,因为如果有必要,以太坊可以推翻任何Rollup交易。由于它们受到这个审查过程的制约,因此Rollup交易被认为是缺乏真正的确定性(finality)。
考虑到Rollups的这种局限性,我们可以回到上文未解决的有关Rollups中心化的指控。Rollup的某个单一区块生产者可能会试图恶意地处理交易,但如果这样做,以太坊(基础层)将在审查过程完成后直接拒绝该批次的交易,且该区块生产者将受到惩罚。
当前,“审查过程”的运作方式取决于Rollup是OptimisticRollup还是ZKRollup。但对于这两者来说,审查过程的效率都要比以太坊自己处理交易的效率高得多。
总而言之,Rollup系统基于“制衡”,这确保了以太坊始终保持作为主权链:以太坊自己的共识是真理的最终仲裁者。
然而侧链就不一样了。由于缺乏相同的审查过程,侧链通过自己的、完全独立的共识机制来处理交易。侧链交易在某种程度上是“最终的”(finality),而Rollup交易不是(直到它们在以太坊上得到确认)。因此,侧链需要更大的信任假设,因为它们不能从以太坊自己的去中心化安全性中获益。事实上,我认为侧链更类似于EVM兼容的Layer1,而不是Rollup。
总结
概括一下:Rollups将计算移出链下,以释放更多的链上空间。链上的数据可用性是至关重要的,因为这允许以太坊对Rollups交易的可靠性进行再次检查。这种审查过程反过来又充当了对Rollup区块块生产的“检查”,从而消除了对共识机制的需要。
Rollups最终让以太坊既能得到蛋糕又能吃掉它:它们在不破坏网络去中心化安全性的情况下释放出更多的链上容量。至少在我看来,这是我们所希望的最优雅的扩容性解决方案。
感谢t11s和Hasu的评论和建议。
来源:BenjaminSimon
编辑:南风
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。