以太坊扩容之路:The Surge解析与L2发展前景

以太坊可能的未来:The Surge

以太坊的扩容策略起初有两种:分片和Layer2协议。分片让每个节点只需验证和存储部分交易,而Layer2则在以太坊之上构建网络。这两种策略最终融合,形成了以Rollup为中心的路线图,至今仍是以太坊的扩展策略。

以Rollup为中心的路线图提出了简单分工:以太坊L1专注成为强大且去中心化的基础层,L2承担帮助生态系统扩展的任务。这种模式在社会中普遍存在,如法院系统(L1)保护合同和财产权,创业者(L2)则在此基础上建设。

今年,以Rollup为中心的路线图取得重要成果:EIP-4844 blobs大幅增加了以太坊L1的数据带宽,多个以太坊虚拟机Rollup已进入第一阶段。每个L2作为具有自身规则和逻辑的"分片"存在,分片实现方式的多样性和多元化已成为现实。但这条路也面临一些独特挑战。我们现在的任务是完成以Rollup为中心的路线图,解决这些问题,同时保持以太坊L1的稳健性和去中心化。

Vitalik新文:以太坊可能的未来,The Surge

The Surge:关键目标

  1. 未来以太坊通过L2可达10万以上TPS;
  2. 保持L1的去中心化和鲁棒性;
  3. 至少一些L2完全继承以太坊核心属性(去信任、开放、抗审查);
  4. 以太坊应感觉像统一生态系统,而非34个不同区块链。

Vitalik新文:以太坊可能的未来,The Surge

内容概述

  1. 可扩展性三角悖论
  2. 数据可用性采样的进一步进展
  3. 数据压缩
  4. Generalized Plasma
  5. 成熟的L2证明系统
  6. 跨L2互操作性改进
  7. 在L1上扩展执行

可扩展性三角悖论

可扩展性三角悖论认为区块链三个特性间存在矛盾:去中心化(运行节点成本低)、可扩展性(处理交易数多)和安全性(攻击者需破坏很大比例节点才能使单笔交易失败)。

三角悖论不是定理,介绍它的帖子也没附数学证明。它给出启发式论点:如果去中心化友好节点每秒可验证N笔交易,你有一个每秒处理k*N笔交易的链,那么:(i)每笔交易只能被1/k个节点看到,攻击者只需破坏少数节点就能通过恶意交易,或(ii)你的节点将变强大,链不会去中心化。该文从不想证明打破三角悖论是不可能的,而是表明这很困难,需跳出该论证隐含的思维框架。

多年来,一些高性能链声称不从根本改变架构就解决了三元悖论,通常通过软件工程技巧优化节点。这总是误导性的,在这些链上运行节点比在以太坊上更难。本文将探讨为何如此,以及为何仅凭L1客户端软件工程本身无法扩展以太坊。

然而,数据可用性采样与SNARKs结合确实解决了三角悖论:它允许客户端只下载少量数据并执行极少计算,就能验证一定数量数据可用,且一定计算步骤正确执行。SNARKs无需信任。数据可用性采样有微妙的few-of-N信任模型,但保留了不可扩容链的基本特性,即使51%攻击也无法强制坏块被网络接受。

解决三难困境的另一方法是Plasma架构,它巧妙地将监视数据可用性的责任推给用户。2017-2019年,当我们只有欺诈证明来扩展计算能力时,Plasma在安全执行方面很受限,但随着SNARKs普及,Plasma架构对更广泛使用场景变得更可行。

Vitalik新文:以太坊可能的未来,The Surge

数据可用性采样的进一步进展

我们正在解决什么问题?

2024年3月13日,当Dencun升级上线时,以太坊区块链每12秒slot有3个约125 kB blob,即每slot数据可用带宽约375 kB。假设交易数据直接在链上发布,ERC20转账约180字节,则以太坊上Rollup最大TPS为:375000 / 12 / 180 = 173.6 TPS

加上以太坊calldata(理论最大值:每slot 3000万Gas / 每字节16 gas = 每slot 1,875,000字节),则变为607 TPS。使用PeerDAS,blob数量可能增至8-16,这将为calldata提供463-926 TPS。

这是对以太坊L1的重大提升,但还不够。我们想要更多可扩展性。中期目标是每slot 16 MB,结合Rollup数据压缩改进,将带来~58000 TPS。

它是什么?如何运行?

PeerDAS是"1D sampling"的相对简单实现。在以太坊中,每个blob是253位素数域上4096次多项式。我们广播多项式的shares,每个shares包含从总8192个坐标中相邻16个坐标上的16个评估值。在这8192个评估值中,任何4096个(根据当前提议参数:128个可能样本中任何64个)都可恢复blob。

PeerDAS工作原理是让每个客户端侦听少量子网,第i个子网广播任何blob的第i个样本,并通过询问全球p2p网络中对等方(谁将侦听不同子网)来请求它需要的其他子网上blob。更保守版本SubnetDAS仅使用子网机制,没有额外询问对等层。当前提案让参与权益证明节点使用SubnetDAS,其他节点(即客户)使用PeerDAS。

理论上我们可将"1D sampling"规模扩展很大:如果将blob最大数量增至256(目标128),就能达到16MB目标,而数据可用性采样中每个节点16个样本 * 128个blob * 每个blob每个样本512字节 = 每slot 1 MB数据带宽。这只是勉强在容忍范围内:可行,但意味着带宽受限客户端无法采样。我们可通过减少blob数量和增加blob大小来优化,但这会使重建成本更高。

因此,我们最终想更进一步,进行2D采样,它不仅在blob内,还在blob之间随机采样。利用KZG承诺线性属性,通过新虚拟blob集扩展一个区块中blob集,这些虚拟blob冗余编码相同信息。

重要的是,计算承诺扩展不需要有blob,因此该方案从根本上对分布式区块构建友好。实际构建区块的节点只需拥有blob KZG承诺,它们可依赖数据可用性采样验证数据块可用性。一维数据可用性采样本质上也对分布式块构建友好。

Vitalik新文:以太坊可能的未来,The Surge

还需做什么?有哪些权衡?

接下来是完成PeerDAS实施和推出。之后,不断增加PeerDAS上blob数量,同时仔细观察网络并改进软件以确保安全,这是渐进过程。同时,我们希望有更多学术工作来规范PeerDAS和其他版本DAS及其与分叉选择规则安全等问题的交互。

未来更远阶段,我们需要更多工作来确定2D DAS理想版本,并证明其安全属性。我们还希望最终能从KZG转向量子安全且无需可信设置的替代方案。目前不清楚有哪些候选方案对分布式区块构建友好。即使使用昂贵的"蛮力"技术,即使用递归STARK生成用于重建行和列的有效性证明,也不足以满足需求,因为虽然从技术上讲,STARK大小为O(log(n) * log(log(n))哈希值(使用STIR),但实际上STARK几乎与整个blob一样大。

我认为长期现实路径是:

  1. 实施理想的2D DAS;
  2. 坚持使用1D DAS,牺牲采样带宽效率,为简单性和鲁棒性接受较低数据上限
  3. 放弃DA,完全接受Plasma作为我们关注的主要Layer2架构。

请注意,即使我们决定直接在L1层扩展执行,这种选择也存在。这是因为如果L1层要处理大量TPS,L1区块将变得非常大,客户端将希望有高效方法来验证它们的正确性,因此我们将不得不在L1层使用与Rollup(如ZK-EVM和DAS)相同的技术。

如何与路线图的其他部分交互?

如果实现数据压缩,对2D DAS的需求会有所减少,或至少会延迟,如果Plasma被广泛使用,则需求会进一步减少。DAS也对分布式区块构建协议和机制提出挑战:虽然DAS理论上对分布式重建友好,但这在实践中需要与包inclusion list提案及其周围分叉选择机制相结合。

Vitalik新文:以太坊可能的未来,The Surge

数据压缩

我们在解决什么问题?

Rollup中每笔交易都占用大量链上数据空间:ERC20传输大约需要180字节。即使有理想数据可用性采样,这也限制了Layer协议可扩展性。每slot 16 MB,我们得到:

16000000 / 12 / 180 = 7407 TPS

如果我们不仅能解决分子问题,还能解决分母问题,让每个Rollup中交易在链上占用更少字节,那会怎样?

它是什么,如何工作?

在我看来,最好解释是两年前这张图:

Vitalik新文:以太坊可能的未来,The Surge

零字节压缩中,用两个字节替换每个长零字节序列,表示有多少个零字节。更进一步,我们利用了交易特定属性:

签名聚合:我们从ECDSA签名切换到BLS签名,BLS签名特性是多个签名可组合成单一签名,该签名可证明所有原始签名有效性。在L1层中,由于即使聚合,验证计算成本也较高,因此不考虑使用BLS签名。但在L2这样数据稀缺环境中,使用BLS签名有意义。ERC-4337聚合特性为实现这一功能提供了途径。

用pointers替换地址:如果以前使用过某地址,我们可将20字节地址替换为指向历史记录中某位置的4字节pointer。

交易值自定义序列化:大多数交易值位数很少,例如,0.25 ETH表示为250,000,000,000,000,000 wei。最大基础手续费和优先手续费也类似。因此,我们可使用自定义十进制浮点格式,来表示大多数货币值。

还需做什么,有哪些权衡?

接下来主要要做的是实际实现上述方案。主要权衡包括:

  1. 切换到BLS签名需付出很大努力,并会降低与能增强安全性的可信硬件芯片兼容性。可使用其他签名方案的ZK-SNARK封装来替代它。

  2. 动态压缩(例如,用pointers替换地址)会使客户端代码变复杂。

  3. 将状态差异发布到链上而非交易,会降低可审计性,使很多软件(如区块浏览器)无法工作。

如何与路线图的其他部分交互?

采用ERC-4337,并最终将其部分内容纳

ETH-4.62%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 6
  • 分享
评论
0/400
长线梦想家vip
· 07-22 01:04
三年后 都得看咱L2的脸色 囤点不亏
回复0
alpha_leakervip
· 07-19 10:23
在牛市就得用L2赚麻啊
回复0
gas费吞噬者vip
· 07-19 01:26
L2玩不明白 赔了裤衩!
回复0
TrustlessMaximalistvip
· 07-19 01:21
Rollup真香 上车就对了
回复0
consensus_whisperervip
· 07-19 01:11
多久能跑到10w tps就说个准话
回复0
GateUser-3824aa38vip
· 07-19 01:10
翻来覆去还是比特币好使
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)