写在前面:面对日益增长的扩容需求,以太坊联合创始人Vitalik Buterin于近日提出了一个新的以rollup为中心的以太坊路线图,其表示:目前以太坊用户的账户是在layer 1,ENS域名、应用等也完全是在layer 1上,而所有这些事物将不得不进行更改,我们需要适应这样一个世界,其中用户的主要账户、余额、资产等完全迁移到rollup等layer 2网络。
上周,Optimism团队宣布了其测试网的第一阶段,以及关于主网的路线图。他们并不是唯一的,Fuel正朝着发布测试网前进,Arbitrum已有了一个测试网。而在ZK rollup这一领域,Loopring、Zksync以及基于Starkware技术的Deversifi已经上线,并在主网上拥有了用户。随着OMG网络的主网beta运行,plasma也在向前发展。与此同时,以太坊1.0的gas价格正攀升至新高,以至于一些非金融dapp被迫关闭,而其它的一些应用则选择在测试网上运行。
以太坊2.0路线图提供了可扩展性,以太坊2.0的早期阶段正在快速接近,但是应用的基础层可扩展性需要在以太坊2.0的最后一个主要阶段才能实现,这还需要几年的时间,更具讽刺意味的是,以太坊2.0作为rollup数据可用性层的可用性出现在阶段1(phase 1),这会在阶段2之前早早落地。这些事实加在一起,可以得出一个特别的结论:以太坊生态系统很可能会迁移到rollup(加上一些plasma和通道),以此作为短期和中期的扩容战略。
如果我们从这一前提出发,我们可以看到它会得出一些关于以太坊核心开发及生态系统开发优先顺序的特定结论,这些结论在某些情况下与当前的路径不同。那这些结论是什么呢?
短期:为Rollup推进以太坊1.0
在短期内,这项工作的主要成果,是将以太坊基础层的扩容集中于扩展数据块的容量,而不是链上计算或IO操作的效率。Rollup可扩展性的唯一决定因素是链能够容纳多少数据,超过当前~60kb/s的任何增长,都有助于进一步提高Rollup的可扩展性。
在基础层仍有一些问题:
- EIP 2929,确保区块链在当前gas水平下抵御DoS攻击;
- EIP 1559,用于燃烧ETH,以及便于发送确定要进入下一区块的交易(rollup仍然依赖于确认);
- 新的椭圆曲线预编译,完全支持人们想要用ZK rollup来实现的事情;
- 十六进制树-> 二进制树更改及其它更改事项,以提高对无状态客户端的支持(因为无论区块链如何使用,无状态客户端都是有价值的);
以太坊1.0客户端可作为optimistic rollup客户端使用。Optimistic rollup仍然需要全节点,如果rollup的内部状态转换规则本质上只需要对以太坊客户端进行一些修改,那么现有的代码就可重新调整用途来运行这些全节点。将共识引擎与状态转换引擎分离的工作,已经在以太坊1.0+2.0合并的环境中完成,这也有助于实现这一目标。特别要注意的是,这意味着像TurboGeth这样的项目仍然非常重要,它除了是高吞吐量的rollup客户端,还是基础层以太坊1.0客户端。
短期:为Rollup调整基础设施
目前,用户的账户是在L1上,ENS域名也是在L1上,应用也完全是在L1上,诸如此类,而所有这些事物将不得不进行更改。我们需要适应这样一个世界:用户的主要账户、余额、资产等完全放在L2中。以下是一些要注意的事情:
- ENS需要支持在L2上注册和传输域名;关于如何做到这一点,请参阅这里;
- Layer 2协议应内置进钱包,而不是像网页dapp。目前,集成到dapp/quasidapp的L2(例如Gitcoin的zksync集成)需要用户完全信任dapp,这大大降低了安全性。理想情况下,我们希望L2成为钱包本身的一部分(metamask, status等),这样我们就可以保持当前的信任模型。这种支持应该是标准化的,这样支持zksync支付的应用,将立即支持zksync内置Metamask、zksync内置Status等。
- 我们需要在跨L2传输方面做更多的工作,使在不同L2之间转移资产的体验,尽可能接近即时和无缝;
- 更明确地标准化Yul或类似的中间编译语言。
以Rollup为中心的经济可持续优点
一个加密项目必须具有财务可持续性,这是一个不可回避的问题,而在2020年,这意味着需要有数百万甚至上千万美元的资金。其中一部分可以由公共物品资助实体(例如Gitcoon赠款或以太坊基金会)覆盖,但这些机制的规模不足以覆盖这一水平的资金。然而,layer 2项目推出自己的代币就可以覆盖了——当然,前提是代币有真正的经济价值作为后盾(即L2要能够实现对费用的捕获)。
以rollup为中心的路线图还有另一个好处,它为L2协议留出了空间,这些L2协议能够收取费用/MEV,可直接或间接地资助开发(通过支持资助开发的代币)。以太坊基础层有另一个重要的需求,即可信的中立性,这使得协议内的公共产品融资变得困难,但是L2拥有自己的公共产品融资机制(或者Gitcoin赠款),其争议性要小得多。因此,对于以太坊整体的长期经济可持续而言,开放这一空间是一个很好的战略举措。
除了资金问题之外,最具创造力的研究人员和开发者往往希望在自己的小岛上处在一个很大影响力的位置,然后就以太坊协议的未来与其他人争论不休。此外,还有很多已经存在的项目试图创建各种各样的平台。一个以rollup为中心的路线图为所有这些项目提供了一个明确的机会,使得它们成为以太坊生态系统的一部分,同时仍保持高度的原生经济和技术自主性。
长期关注点
出了这些短期关注点之外,以rollup为中心的路线图还可能意味着对以太坊2.0长期未来的重新设想:作为每个人都能处理的单个高安全性执行分片,再加上一个可扩展的数据可用性层。
要了解为什么会出现这种情况,请考虑以下几点:
- 今天,以太坊主网的TPS大约为15;
- 如果每个人都转向rollup,那么我们很快就拥有了大约3000 tps;
- 一旦以太坊2.0阶段1出现,并且rollup转移到以太坊2.0分片链以进行数据存储,理论上我们将达到大约10000 tps的最大值;
- 最终,阶段2将会出现,这会带来以太坊2.0分片链和原生计算,这会给我们带来大约1000-5000 tps;
这相当于一个以太坊2.0的“阶段1.5”方法,其中基础层缩减,并专注于做好一些事情,即共识和数据可用性。
实际上,对于以太坊2.0来说,这可能是一个更好的位置,因为分片数据可用性比分片EVM计算要安全得多。虽然分片EVM计算的非诚实多数证明需要欺诈证明,这要求严格且有潜在风险的两个epoch的同步假设,但数据可用性采样(如果使用零知识证明ZKP或多项式承诺)在异步情况下是安全的。
这将有助于区分以太坊2.0主链和其它分片L2链,其中以太坊2.0将是一个基础层,它的功能足够强大,可以实现功能逃逸速度。
从长远来看,以太坊2.0可以专注于什么?
- 在不同的分片上错开区块时间,因此在任何时候,都会有一些分片被安排在几百毫秒内提出一个区块。这使得跨多个分片操作的rollup具有超低的延迟,而不存在链本身具有超低延迟的风险。
- 改进和固化其共识算法;
- 调整EVM以使其对防欺诈证明验证更友好(例如,这可能意味着某种“框架”功能,可防止代码从沙箱中溢出),或允许SLOAD/SSTORE被重新映射为使用帐户存储以外的其他内容作为其数据源;
- ZK-SNARKing任何事物;
折衷提案
如果你不相信“阶段1.5”方向,那么有一条自然的折衷之路可以走:拥有少量的执行分片(例如4-8)以及更多的数据分片。目标是执行分片的数量仍然足够低,以至于在特殊情况下,常规计算机将能够完全验证所有分片,但是与现在相比,基础层空间仍然要大得多。
基础层空间也不能太小,因为用户和应用仍然需要它,例如rollup层之间的移动、提交欺诈证明、ZK rollup中提交零知识证明、发布根ERC20代币合约(当然,大多数用户都将在rollup中活动,但基础合约必须存在于某个地方……),如果这些事务每次要花费140美元,这仍然是一个巨大的用户体验损失。因此,如果有必要,使用4-8个分片而不是1个,可以提供很大的缓解。而且,一台计算机仍然可以验证所有分片。现在,验证以太坊1.0区块平均每13秒需要大约200-500毫秒,因此在短时间内验证8个这样的执行线程是完全可行的。我们可以想象客户端有这样的政策:“如果网络等待时间似乎很短或委员会的满员率> 80%,请依靠欺诈证明和委员会,在特殊情况下直接验证所有分片。”
本文地址: https://www.xiguacaijing.com/news/zhuanlan/2020/29023.html
赞助商