Vitalik最新长文:坎昆升级之后,以太坊的扩容之路在何方?
作者:Vitalik Buterin
编译: jk ,Odaily 星球日报
3 月 13 日,Dencun 硬分叉激活,使 Ethereum 期待已久的特性之一:proto-danksharding(又名 EIP-4844 ,又名 blobs)成为可能。最初,该分叉将 rollups 的交易费用降低了超过 100 倍,因为 blobs 几乎是免费的。在过去的一天里,我们终于看到 blobs 的体积激增,随着 blobscriptions 协议开始使用它们,费用市场也随之激活。Blobs 不是免费的,但它们仍然比 calldata 要便宜得多。
左图:得益于 Blobscriptions,blob 的使用量终于达到了每块 3 个的目标。右图:随之而来的是 blob 费用「进入价格发现模式」。来源:https://dune.com/0x Rob/blobs。
这个里程碑代表了 Ethereum 长期路线图的关键转变:有了 blobs,Ethereum 的扩容不再是一个「从零到一」的问题,而成为了一个「从一到多」的问题。从这里开始,重要的扩容工作,无论是增加 blob 数量还是提高 rollups 利用每个 blob 的能力,都将继续进行,但这将是更加渐进的。对 Ethereum 作为一个生态系统运作方式的根本性改变相关的扩容变化,越来越多地已经落后于我们。此外,重点已经在慢慢转移,并将继续慢慢从 L1 问题如 PoS 和扩容,转向更接近应用层的问题。这篇文章将探讨的关键问题是:Ethereum 接下来将往哪里去?
Ethereum 扩容的未来在过去的几年里,我们见证了 Ethereum 逐渐转变为以 L2 为中心的生态系统。主要应用开始从 L1 转移到 L2,支付开始默认基于 L2,钱包也开始围绕新的多 L2 环境构建其用户体验。
从一开始,以 Rollup 为中心的路线图的一个关键部分就是独立的数据可用性空间的概念:一个块中的特殊空间部分,EVM 无法访问,可以为二层项目如 rollups 存储数据。由于这个数据空间不可被 EVM 访问,因此可以单独从一个块中广播并单独验证。最终,它可以通过一种称为数据可用性抽样的技术进行验证,这种技术允许每个节点通过随机检查几个小样本来验证数据是否正确发布。一旦实现,blob 空间可以大幅扩展;最终目标是每个时隙 16 MB(约 1.33 MB/ 秒)。
数据可用性抽样:每个节点只需要下载一小部分数据就可以验证整体数据的可用性EIP-4844 (即 blobs)并没有为我们提供数据可用性抽样。但它确实以这样一种方式建立了基本的框架,从这里开始,可以引入数据可用性抽样并在幕后增加 blob 数量,所有这些都无需用户或应用的任何参与。实际上,唯一需要的「硬分叉」仅仅是一个简单的参数变化。
从这里开始,将需要继续发展的两个方向是:
逐步增加 blob 容量,最终实现数据可用性抽样的全景,每个时隙提供 16 MB 的数据空间;
改进 L2,以更好地利用我们拥有的数据空间。
将 DAS 带入现实下一阶段可能是一个简化版的 DAS,称为 PeerDAS。在 PeerDAS 中,每个节点存储全部 blob 数据的一个重要部分(例如 1/8),并且节点在 p2p 网络中维持与许多对等方的连接。当一个节点需要对特定数据片段进行抽样时,它会询问已知负责存储该数据片段的对等方之一。
如果每个节点需要下载并存储所有数据的 1/8 ,那么理论上 PeerDAS 允许我们将 blobs 的规模扩大 8 倍(实际上是 4 倍,因为我们因擦除编码的冗余而损失了 2 倍)。PeerDAS 可以随时间推出:我们可以有一个阶段,在此阶段专业的质押者继续下载完整的 blobs,而单个质押者只下载 1/8 的数据。
除此之外,可以使用 EIP-7623 (或如 2D 定价的替代方案)来对执行区块的最大大小(即块中的「常规交易」)设置更严格的限制,这使得同时增加 blob 目标和 L1 gas 上限变得更安全。从长远来看,更复杂的 2D DAS 协议将让我们全面提升,进一步增加 blob 空间。
提高 L2 的性能如今,二层(L2)协议可以在四个关键方面进行改进。
1. 通过数据压缩更高效地使用字节我的数据压缩概述图仍然可以在这里查看;
天真地来说,一个交易大约占用 180 字节的数据。然而,有一系列的压缩技术可以在几个阶段将这个大小降低;通过最优化压缩,我们可能最终将每个交易的数据量减少到 25 字节以下。
2. 在特殊情况下才使用 L1 的乐观数据技术来保障 L2 的安全Plasma 是一类技术,它允许你在正常情况下将数据保留在 L2 上,同时为一些应用提供与 Rollup 等效的安全性。对于 EVMs 来说,Plasma 不能保护所有的币。但受 Plasma 启发的构建可以保护大多数币。而且比 Plasma 简单得多的构建可以大幅改善今天的 validiums。那些不愿意将所有数据上链的 L2 应该探索这样的技术。
3. 继续改进执行相关的限制一旦 Dencun 硬分叉激活,使得设置以使用它引入的 blobs 的 rollups 成本降低了 100 倍。Base rollup 的使用量立即激增:
这反过来导致 Base 触及其内部的 gas 限制,导致费用意外激增。这导致了一个更广泛的认识,即 Ethereum 的数据空间不是唯一需要扩展的:rollups 内部也需要扩展。
其中一部分是并行化;rollups 可以实现类似于 EIP-648 的东西。但同样重要的是存储,以及计算与存储之间的相互作用效应。这对于 rollups 来说是一个重要的工程挑战。
4. 继续改进安全性我们离 rollups 真正被代码保护的世界还很远。实际上,根据 l2 beat 的说法,只有这五个中的一个,只有 Arbitrum 是完全支持 EVM 的,甚至达到了我所说的「第一阶段」。
这需要直面解决。虽然我们目前还不能对一个复杂的乐观或基于 SNARK 的 EVM 验证器的代码足够自信,但我们绝对有能力走到一半的路程,并有安全委员会可以在高门槛(例如,我提议的是 6-of-8 ;Arbitrum 正在执行 9-of-12)下才能改变代码的行为。
生态系统的标准需要变得更加严格:到目前为止,我们一直宽容并接受任何声称「在通往去中心化的道路上」的项目。到年底,我认为我们的标准应该提高,我们应该只将那些至少达到第一阶段的项目视为 rollup。
在此之后,我们可以谨慎地向第二阶段迈进:一个 rollups 真正由代码支持,并且安全委员会只有在代码「明显自相矛盾」(例如,接受两个不兼容的状态根,或两个不同的实现给出不同的答案)的情况下才能介入的世界。安全地走向这一目标的一条路径是使用多个证明者实现。
这对 Ethereum 的发展意味着什么?在 2022 年夏季的 ETHCC 上,我做了一个报告,描述了 Ethereum 发展的当前状态是一个 S 曲线:我们正在进入一个非常迅速的转变期,之后,随着 L1 的巩固和开发重新聚焦于用户和应用层,开发将再次放缓。
今天,我会说我们明确处于这个 S 曲线的减速、右侧部分。截至两周前,对 Ethereum 区块链的两个最大变革 - 切换到权益证明和重构为 blobs - 已经完成。未来的变化仍然重要(例如 Verkle 树、单时隙终结性、协议内账户抽象化),但它们的剧烈程度不及权益证明和分片。2022 年,Ethereum 就像是在飞行中更换引擎的飞机。2023 年,它更换了翅膀。Verkle 树过渡是剩下的主要真正重要的变革(我们已经有了测试网);其他的更像是更换尾翼。
EIP-4844 的目标是做出一次大的一次性变更,为了为 rollups 设定长期稳定性。现在 blobs 已经推出,未来升级到完整的 danksharding 与 16 MB 的 blobs,甚至将加密技术转换为 64 位 goldilocks 字段上的 STARKs,可以在不需要 rollups 和用户采取任何进一步行动的情况下发生。它还强化了一个重要的先例:Ethereum 的开发过程是按照一个长期存在的、众所周知的路线图执行的,且以「新 Ethereum」为构想构建的应用程序(包括 L2)获得了一个长期稳定的环境。
对应用程序和用户而言,这意味着什么?Ethereum 的头十年在很大程度上是一个训练阶段:目标一直是让 Ethereum L1 起飞,应用程序主要发生在一个小的热情分子群体中。许多人争论说,过去十年缺乏大规模应用证明了加密货币是无用的。我一直反对这种观点:几乎每一个非金融投机的加密应用都依赖于低费用——因此,当我们面临高费用时,我们不应该惊讶于我们主要看到的是金融投机。
现在我们有了 blobs,这个一直阻碍我们的关键限制开始消融。费用终于大大降低了;我七年前的声明,即金钱的互联网每次交易的成本不应超过五美分,终于成真。我们还没有完全走出困境:如果使用增长过快,费用可能仍会增加,我们需要在接下来的几年中继续努力扩展 blobs(并且单独扩展 rollups)。但我们看到了隧道尽头的光明……呃……黑暗森林。
对开发者来说,这意味着一件简单的事情:我们再也没有任何借口。直到几年前,我们为自己设定了一个低标准,构建了显然无法大规模使用的应用程序,只要它们作为原型工作并且合理去中心化就行。今天,我们拥有所有我们需要的工具,实际上也是我们将拥有的大部分工具,去构建同时是密码朋克和用户友好的应用程序。因此,我们应该走出去并做到这一点。
许多人正在迎接这一挑战。Daimo 钱包明确地将自己描述为 Ethereum 上的 Venmo,旨在将 Venmo 的便利性与 Ethereum 的去中心化相结合。在去中心化社交领域,Farcaster 在结合真正的去中心化(例如,看看这个指南,了解如何构建您自己的替代客户端)和出色的用户体验方面做得很好。与之前的「社交金融」热潮不同,平均 Farcaster 用户不是来赌博的——通过了加密应用真正可持续发展的关键测试。
这篇帖子是通过主要的 Farcaster 客户端 Warpcast 发送的,这个截图来自替代的 Farcaster + Lens 客户端 Firefly。
这些成功是我们需要建立在其基础上的,并扩展到其他应用领域,包括身份、声誉和治理。
今天构建或维护的应用程序应该以 2020 年代的 Ethereum 为蓝图Ethereum 生态系统仍然有大量的应用程序,围绕着一个根本上属于「 2010 年代 Ethereum」的工作流操作。大多数 ENS 活动仍然发生在第一层(L1)。大多数代币发行也发生在第一层,没有认真考虑确保第二层(L2)上的桥接代币可用(例如,看看这位 ZELENSKYY memecoin 的粉丝对该币持续向乌克兰的捐款表示赞赏,但抱怨 L1 费用使其太昂贵)。除了可扩展性之外,我们在隐私保护方面也落后:POAPs 全部公开在链上,对于某些用例可能是正确的选择,但对其他用例来说非常次优。大多数 DAO 和 Gitcoin Grants 仍然使用完全透明的链上投票,使它们高度容易受到贿赂(包括事后空投)的影响,这已被证明严重扭曲了贡献模式。如今,ZK-SNARKs 已经存在多年,然而许多应用仍未开始正确使用它们。
这些都是辛勤工作的团队,他们必须处理庞大的现有用户群,因此我不会因为他们没有同时升级到最新的技术波而责怪他们。但很快,这种升级就需要发生。以下是「一个根本上属于 2010 年代 Ethereum 工作流」和「一个根本上属于 2020 年代 Ethereum 工作流」的一些关键区别:
基本上,Ethereum 不再仅仅是一个金融生态系统。它是「中心化技术」的大部分领域的全栈替代品,甚至提供了一些中心化技术无法提供的东西(例如,与治理相关的应用程序)。我们需要以这个更广泛的生态系统为脑海中构建。
结论Ethereum 正在经历一个决定性的转变,从一个「L1 快速进展」的时代过渡到一个 L1 进展仍将非常显著,但稍微温和一些,对应用的干扰也较少的时代。
我们仍需要完成扩容。这项工作将更多地在幕后进行,但仍然很重要。
应用开发者不再仅仅是构建原型;我们正在为数百万人使用的工具进行构建。在整个生态系统中,我们需要完全相应地调整心态。
Ethereum 已经从「仅仅是」一个金融生态系统升级为一个更加彻底的独立去中心化技术栈。在整个生态系统中,我们也需要完全相应地调整这方面的心态。