作者:Alex Gluchowski Jun 12th 2020

译者:Babylon

我们提供了一个评估多种因素的以太坊第二层扩展解决方案的指南。

随着越来越多的扩展解决方案日渐成熟,以太坊第 2 层扩展生态系统已变得难以为建设者所用。棘手的问题在于,每个解决方案的承诺都是去信任化,安全,经济和易于使用的,这不可避免地会造成细微差别。我们鼓励构建者避免将这些属性视为事实,而应进行全面的尽职调查,以探究每种解决方案正在做出的不可避免的权衡。

为了简化此任务,我们整理了一系列问题,以帮助建造者评估不同的扩展解决方案,并采用最适合其需求的解决方案。这些问题分为以下几类:

1 )安全

2 )性能 / 经济性

3 )易用性

4 )其他

除了这些问题之外,我们还汇总了一张对照表,为您提供了与解决方案提供商进行对话的起点。尽管我们尽最大努力使比较保持中立和公正,但以表格的形式简洁地表达不同方法的细微差别仍然是一项艰巨的任务。我们希望带有更多上下文的扩展问题清单能够弥补这一问题。

非常感谢 Georgios Konstantopoulos (Layer 2 独立研究员),John Adler,Ben Jones,JD Kanani,Patrick McCorry,Justin Drake (以太坊基金会)和 Brecht Devos (Loopring 路印),感谢他们对该表的审查和更正。

日渐成熟的以太坊 Layer 2 扩展方案对比评估

1. 安全

( 1 )活跃度假设(例如:瞭望塔)

该协议是否要求用户活跃度?换句话说:用户是否需要自己或通过受信任的代表(瞭望塔)监视扩展解决方案的所有链上(即 L1)活动?

在某些情况下,可以将活跃度委派给受信任的各方,并提供与其服务的用户一致的激励措施(即有约束力的)。但是,值得注意的是,这种受信任的代表在行为不当时可能损失的金额始终仅限于他们作为受信任的代表投入的相应“存款”(即安全保证金)的大小。人们应该考虑是否有机会窃取比存款中更多的价值,以及他们承受这种风险的程度如何。

( 2 )大量退出假设

扩展解决方案的安全性假设是否包括所有用户都能在短时间内成功执行到 L1 的退出交易(提款)的能力?

当出于安全原因,特定 L2 解决方案的所有用户都需要在短时间内离开 L2 时,L2 就会大量退出。如果他们选择留下,则操作员可能会进行一些操作并耗尽仍留在 L2 中的资金。例如,在 Matic 中,所有用户退出的窗口为 1 周。

由于网络拥塞和 DoS 攻击,这可能非常成问题。例如,在给定大规模退出的时间范围内,以太坊网络可能高度拥挤,因此可能无法及时挖掘交易。即使在没有拥塞的情况下,攻击者也可以尝试操纵汽油价格或使节点黯然失色,以确保交易不会及时进行。这是值得考虑的攻击媒介。

( 3 )保管

L2 验证者的法定人数是否会使用户在不确定的时间内无法使用资金?他们可以占用用户资金吗?

如果您希望您的项目保持不受审查的限制,那么这尤其重要。

( 4 )热钱包秘钥的弊端

此 L2 解决方案中资金的安全性是否取决于操作员保护必须保留在在线计算机上以保持系统正常运行的密钥(即热钱包密钥)的能力?

众所周知,热钱包很难获得保护。

( 5 )易受加密货币经济攻击

加密经济攻击的解决方案有多脆弱?它是否基于博弈论假设?

有多种涉及加密经济诱因的攻击,包括损害 L2 验证者(或其操作人员),贿赂 L1 上的矿工,创建暗 DAO 等。这些攻击媒介正在迅速发展,并且在依赖于博弈论假设的系统中难以证明可消除。

这还包括从技术上讲不是盗窃但实际上是等效的场景。例如,对 Validium 的这种双花攻击,攻击者无法通过设计窃取其他人的资金,但仍然可以自己花双花。

( 6 )密码原理

解决方案是否依赖于标准密码学还是利用了新颖的密码学研究,例如 SNARK 或 STARK?

通常,世界上密码构造的时间越长,有人破解它的机会就越长。使用的最先进的和最近的原语是,实施和审核它们的团队应要求的能力和审查更多。

2. 性能 / 经济性

( 1 )最大产量

在以太坊 1.0 边界内解决方案的最大可能吞吐量是多少?以太坊 2.0 呢?

尽管今天解决方案的吞吐量可能令人满意,但是有理由展望未来,并预测项目对额外吞吐量的需求,以及您计划采用的解决方案是否能够适应未来。

( 2 )资本效率

扩展解决方案的资本效率如何?是否需要大量资金才能运作?

与其他解决方案相比,资本效率较低的系统对用户而言成本更高,并且可能会由于缺乏即时流动性而导致运营中断。例如,支付渠道的资金效率相对较低,因为渠道运营商必须锁定其平均渠道数量的倍数,以确保渠道不会达到容量上限。

( 3 )开立新帐户的成本

新用户开始使用 L2 中的帐户是否需要进行 L1 链上交易?

在比较表中,我们指出了每个系统的最佳方案,但是单独的实现可能效率较低。例如,zkSync 和 Loopring 都使用 zkRollups,但是 Loopring 要求用户进行 L1 交易来开设帐户,然后 zkSync 却不会接受付款。

3. 易用性

( 1 )提款时间

提款到 L1 需要多长时间?

为了解决争端,某些解决方案中的取款可能需要长达一周或更长时间。为了减轻这种漫长的等待时间,是否有流动性提供者为用户提供流动性以换取风险溢价?如果存在这样的流动性提供者,它们的可靠性和成本如何?由于快速提款需要付出一定的代价,所以使用这种解决方案的真正代价是什么?

( 2 )达到主观确定性的时间

在协议的安全性假设下,事务能多快到达无法再在 L1 上还原的状态?

通过主观确定性,我们的意思是说,即使 L1 智能合约仍不能依赖交易,也可以说服外部观察者相信交易的不可逆性。例如,在乐观汇总中,您需要在以太坊上进行 1 项确认才能达到 L1 终结,而完全终结则需要大约 1 周的时间。

( 3 )主观确定性的客户端可验证性

能否与轻度客户(浏览器 / 手机钱包)核实达到主观确定性的时间(请参见前面的问题)?

继续上面的示例并进行乐观汇总,虽然您需要对以太坊进行 1 次确认才能达到 L1 终结,但要确认交易是最终的,则必须下载整个汇总状态并执行上周的所有交易,以确保没有乐观汇总块是无效的。

( 4 )即时发送确认

解决方案可以提供完整的或仅绑定的即时交易确认吗?

可以在大多数 L2 协议之上实现“即时表观终结性”,即,交易似乎将在 UX 中立即得到确认。只有付款渠道(状态渠道)为这些确认提供完整的安全保证,而在其他协议中,这些交易仍可以在 L1 中确认之前恢复一定的时间。不过,恢复它们并不是免费的,并且无论解决方案的验证者是否成功,它们都会失去其安全保证金(即存款)。

此功能取决于扩展解决方案的特定实施细节。

4. 其他方面

( 1 )智能合约

L2 是否支持任意可编程的智能合约,或者仅支持可以使用谓词实现的有限子集?

( 2 ) EVM 字节码可移植性

您能否几乎不做任何改动就移植现有以太坊合约的 EVM 字节码?

( 3 )原生隐私支持

该协议是否提供对隐私的本地支持?

默认情况下,如果没有低成本的屏蔽式交易,隐私保护将非常无效,因为各种平台上有关去匿名的多项研究都雄辩地证明了这一点(1、2)。

附言: 关于 zkRollups 的旁注

有两种使用 zkRollups 的有效扩展解决方案,您可以立即试用:Loopring (在主网上直播)和 zkSync (Matter Labs 的平台将于 6 月发布)。它们之间的主要区别是对基础证明系统的选择。 Loopring 使用具有特定于应用程序的可信设置的 Groth16 SNARK,而 zkSync 使用具有通用可信设置的较新的证明系统 PLONK。考虑到该证明系统在设计领域的最新突破,我们相信 PLONK 将成为 zkRollups 采用的主要加速器,并将在以后的文章中对此进行详细介绍。


我们希望这篇文章对您探索扩展解决方案有所帮助,并让您对未来充满信心。如果您有任何疑问或想讨论以上几点,请随时通过电子邮件 hello @ matter-labs.io,Twitter 和 Telegram 与我们联系。

原文链接:https://medium.com/matter-labs/evaluating-ethereum-l2-scaling-solutions-a-comparison-framework-b6b2f410f955