如果不是因为这篇研究报告是受 MolochDAO 之托而作,我想 DAOSquare 应该不会翻译如此“技术性”的学术论文(至少现阶段不会)。不过,以太坊的扩展性的确是一个重要且热门的话题,现有的解决方案包括 Optimistic Rollup、Zk Rollup,而 Optimistic Rollup 则是一个提出时间并不长的新兴方案,它被认为是最有前途的扩容方案。那么时至今日它的发展情况如何?前景又如何?本文作者 Daniel Goldman 通过大量的调研完成了此份报告,现在,DAOSquare 将这份成果分享给大家!不过由于篇幅过于“宏大”,我们将分三期奉上,本篇为第一部分。
作者:Daniel Goldman(丹尼尔·戈德曼)自由软件工程师、技术火币网是中国的吗顾问、作家
译者:Emma、SnowLu
校对:Samuel
以太坊新兴 Optimistic Rollup 生态系统的技术概览
Optimistic%20Rollerball%20(Daniel%20Goldman%20original,%202020)
以下报告由MolochDAO%20授权制作,John%20Adler%20提供相关意见/复审;但此篇所有观点均代表本人。此外,项目评估仅为该报告发稿时的状态简况(2020年2月)。事事均在变化,不做过度承诺。
笼罩以太坊扩容社区的阴霾--Optimsitc%20Rollup
2019下半年,Optimistic%20Rollups%20(ORU或Optiroll)%20作为以太坊%20Layer%202%20扩容协议迅速兴起大热。本文旨在概述新兴%20ORU%20的开发生态系统至发稿时的简况(2020年2月)。%20我们先将%20ORU%20理论属性放于%20Layer%202%20设计空间大背景下,之后比较不同项目的方法和技术设计决策以及其中的各种取舍。9个项目包括:
Fuel%20Labs
ANON
Whitehat,%20Cellani,%20Lim%20(%20hereby%20“WCL”)
Pinkiebell
Offchain%20Labs
Interstate%20Network
Optimism
IDEX
Celer
点击此处回顾他们的差异性。最后,我们将深入探讨一些定性问题,这些问题将围绕以上项目如何在空间中发挥自己的作用。
背景%20&%20理论
尽管美名在外,但开放且未授权的区块链也有很多问题:网络中的所有完整节点必须可见,并验证系统处理的每笔交易;%20超低效率(相较中心化数字支付系统而言)是加密货币备受争论的扩容挑战的核心。
Layer%202%20协议是减轻此类负担的一类方法。将所有的节点全部验证所有交易,变为仅由感兴趣的各方(例如那些希望获得自己资金的人)对交易的某些子集进行本地验证,以此(以某种方式,形状或形式)来转移这种负担%20。%20重要的是,他们保留基本层无需信任的安全模型,同时无需依赖用户自己运行的软件以外的资源。
数据可用性:解决
在以太坊%20Layer%202%20研发的早期阶段,研发人员计划在隐含假设下运作,即基础层“减轻验证负担”就是完全将(某些)交易数据隔离在区块链之外。%20(请参阅%20Josh%20Stark%202018年初的文章%20Making%20Sense%20of%20Ethereum’s%20Layer%202%20以了解当时的思维方式)。
加密货币协议有其内在的经济属性,可以激励区块生产者及时地、广泛地共享区块(除非是自私挖矿等边缘情况%20selfish-mining%20edge%20cases);%20区块链基础层有时被称为“数据可用性引擎”。%20确保数据是(完全)公开的,可以保证其能够进行验证,并且无效交易几乎无法通过。
因此,在Layer%202的场景中,如果要将数据完全隔离在链外,将不再能保证我们有这种数据可用性;%20因为那些担心数据有效性的人可能会隐瞒数据。%20因此,我们必须弄清楚,在这种极端情况下,如何以某种方式确保不会发生无效的状态更新。%20对于Layer%202系统,数据隐瞒问题始终是最难最坏的情况;因为最糟糕的就是在没有信息的情况下去探寻事实。
如果我们的定义足够宽松,针对该数据隐瞒问题的所有解决方案都可以分为两大类:状态通道和Plasma(channels%20and%20Plasma)。%20如果两方在一个通道中,双方一致同意后,链下数据的更新才真正有效。
因此,如果%20Alice%20选择保留%20Bob%20的数据,Alice%20将处于最新状态;%20保留数据对她没有好处。%20相比之下,Plasma%20则没有双方一致同意的这一要求。%20这直接导致在%20Plasma%20中,如果用户没有任何直接证据,则可能发生无效更新。即使在这种情况下,Plasma%20仍可以保证用户持有必要的链下数据,在交互质疑期中证明并确保其资产所有权。
就实际结果而言,状态通道已成为第一个%20Layer%202%20构造。人们很容易理解,且状态通道(可能)确实解决了一些基础的研究挑战,我们的确也看到状态通道在比特币和以太坊上的应用。%20状态通道具有一些实用属性,例如即时交易,这些属性非常契合一些特定应用程序的需求。%20尽管是较通用的扩容方案,但在某种程度上仍受限制。%20从本质上讲,通道之间是彼此独立的,且免信任的连接将导致资本效率低下,及/或受制于可用的流动路径。%20(我之前在%20Bitcoin’s%20Lightning%20Network%20发表了相关限制以及解决策略。)
Plasma%20有望提供一种用途更广,侧链式扩容方案,使参与者之间可以更轻松地进行信息交互,但是它的发展路程却更艰难。%20有关%20Plasma%20技术挑战的细节不在本文讨论范围之内。%20但是,(非常)简单来说,不能保证数据可用性的这种特质,让很多特性难以立刻保留,例如:支持任意计价支付,用户的验证/存储要求最小化,避免大批量退出方案,以及支持智能合约逻辑%20。%20虽然可以缓解这些问题,但是解决一个障碍的代价往往是加剧另一个障碍。%20简而言之,很难做到完全正确,即使这些构造足够可行,其复杂性也会让实践变得困难而缓慢。%20(我已在此处及此处发表分析了%20Plasma%20Cash%20及其变体的合理进展及其带来的挑战。
Plasma%20的问题让甚至一些人认为其会消失(declare%20its%20demise)。%20即使有人认为这种说法还为时过早(例如我),但是毫无疑问,Plasma%20比预期设想的更加困难复杂,而且传输结果的空间速度比最初希望的要慢。%20随着%20Plasma%20的停滞,以太坊社区渴望类似非监管下的、具有侧链特性的事物。此时,就研究和实施状态而言,Optimistic%20Rollup%20出现了。
数据可用性:让步
我们可以在各种先前的提案中发现目前%20Optimistic%20Rollup%20的构造痕迹,比如Shadowchains,Coinwitness,bulk%20validation%20with%20ZK-SNARKS%20(现在称之为%20ZK-Rollup),以及2015年初的一场关于Arbitrum%20的学生演讲等。
就目前了解而言,John%20Adler%20和%20Mikerah%20Quintyne-Collins(又称““Bad%20Crypto%20Bitch%20”)将协议基础称为“合并共识%20Merged%20Consensus”。%20先前的%20Plasma%20Group%20团队(现为%20Optimism,下文介绍)在一篇博客文章中描述了类似原理,并在%20Optimistic%20Layer%202%20游戏语义分析中将其定为框架,命名为%20Optimistic%20Rollup(无论出于何种原因),并最终确定。
Optimictic%20Rollup%20采用前一段中所述的框架并把它翻转过来;ORU%20并不打算在数据隐瞒的情况下保留非监管性,而是采取了一种更直接的方法,即直接要求将交易数据发布在链上,更具体地说,要求将足够的数据发布在链上,以便任何运行以太坊节点的人都可以重建%20ORU%20的状态。%20扩容的好处在于,Layer%201%20仅需发现数据并将其%20Merkle%20树化为区块根,无需执行任何操作;(理想情况下)计算仅在%20Layer%202%20执行。因此,交易数据作为呼叫数据发布在链上,并且不存储在状态中;因为状态容量增长和计算成本(可能)是以太坊扩容的核心瓶颈,这具有不小的增长空间。
与%20Plasma%20一样,基础层无法直接验证交易就意味着会有一些无效交易。%20在%20ORU%20下,任何当事方都将见证无效交易的更新,然后通过欺诈证据向基础层展示欺诈证明,欺诈证明将还原欺诈性区块以及及后续的区块更新。%20一旦过了足够的时间而没有提交欺诈证明,就可以确定并汇总区块,从这些区块中启动的提款就可以完成。%20为了抑制故意发布无效区块的行为对社区的恶意破坏,区块提交人会发布一个保证金,如果欺诈证明有效,将大幅削减保证金。%20这种防欺诈处理的精确方式是任何特定%20ORU%20结构的核心。
与%20Plasma%20相比,ORU%20有一个不可避免的根本性缺点,那就是它的扩容性相对较低。%20假设链上数据与%20ORU%20块中的数据成正比,则%20ORU%20构造会受到基础层最大数据量的限制。%20不过在其他方面%20ORU%20也有很多益处,包括:
更轻松/更广泛地支持智能合约
更容易地支持任意付款面额
无需许可的区块生产
更简单的博弈退出机制
相对简单的操作
正如我们预料,即使是上述因素也需要在不同的%20ORU%20结构中相互权衡。%20(有关%20ORU%20背后的更多信息,请参阅%20John%20Adler%20的%20“The%20Why’s%20of%20Optimistic%20Rollup”。)
Projects%20Overview%20项目概览
Link to spreadsheet
本报告采访了9个使用 ORU 设计模式的项目,其中一个项目选择在发布时保持伪匿名状态(以下称为“ ANON”)。
仅考虑 Optimistic Rollup 范围内的项目,也就是说,它们必须都是 “Optimistic”,包括某种假设,即“假设有效,除非或者直到提交欺诈证明”(即,不是ZK-rollup)并包括“Rollup”,即,链上发布了足够的数据,任何观察者都可以重建状态并检测无效性(即,不是 Plasma)。大多数所讨论的大多数项目都严格符合这些参数,唯一的例外是 IDEX 2.0.其详细信息将在下面讨论。基于 Plasma 或与 Plasma 相邻的构建上工作的其他各种项目,都属于研究 ORU 的初期阶段,包括 Matic,LeapDAO 和 Cryptoeconomics Lab。
智能合约支持和欺诈证明互动性
ORU 项目之间的核心区别在于它们对智能合约脚本的支持程度,以及它们所需要的验证和欺诈证明的性质。 在本次调研的9个项目中,有5个项目在其 Rollup 中实现了完整的以太坊虚拟机功能,其中 rollup 侧链具有 Solidity 智能合约支持,其支持程度(大致)与以太坊基础层的智能合约支持程度相当,而其余项目则更偏向于支持更有限的、受限的功能。
广义上讲,除了智能合约功能本身之外,支持完整的 EVM 能够保证 rollup 和主链之间的技术一致性,有望与基础架构工具更轻松地集成,并且让开发人员更容易过渡,他们已习惯在 Layer1 上使用 Solidity 编译的智能合约。相反,那些更偏向于支持更有限的、受限的功能项目具有以下优点:成本更低的(或多或少)欺诈证明,验证更容易,可以针对特定用户直接实现优化以及总体上的简化。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。