EIP-4844:Blob交易及迈向数据分片的第一步

EIP-4844 (proto-danksharding) 引入了blob交易,为Rollup在以太坊上提供临时的数据空间,显著降低存储成本。通过分离执行数据和blob数据,并在短期保留后丢弃blob,网络在不增加状态大小的情况下获得带宽的显著提升。 此次升级弥合了当前Rollup扩展和完整数据分片之间的差距,降低了费用,提高了吞吐量。

EIP-4844,也被称为 proto-danksharding,引入了一种新的交易类型:携带 Blob 的交易 (类型 0x03)。

这是自 EIP-1559 以来以太坊可扩展性方面最大的一次升级,旨在通过为 rollups 提供它们自己的临时数据空间,从而显著降低它们的成本。

EIP-4844 允许交易附加大的 “blobs” 数据,共识客户端验证这些数据,然后在短时间后丢弃,而不是将 rollup 数据永久存储在链上。

这在数据带宽方面提供了显著的提升,而无需等待完全分片,从而降低了 rollups 的费用,并为以太坊的长期扩展路线图奠定了基础。

在这篇文章中,我们将探讨:

1. 为什么 blobs 很重要,以及它们如何降低 rollup 成本。

2. EIP-4844 引入的新交易字段。

3. 一个完整的 Go 示例,展示如何在 Sepolia 测试网上构建和发送 blob 交易。

以太坊的信标链

在我们深入研究 EIP-4844 Blob 交易 之前,我们需要了解什么是 信标链,它为什么存在,它为以太坊网络带来了什么,以及从以太坊 (1.0) 到以太坊 (2.0) 发生了什么转变。

什么是信标链

信标链 是以太坊从 工作量证明 (PoW) 过渡到 权益证明 (PoS) 的第一部分 (PoS 和 PoW 将在接下来的博客文章中介绍)。它于 2020 年启动,其主要目的是在不处理真实交易或应用状态的情况下,孤立地测试和验证以太坊的 PoS 共识机制。近两年来,它与以太坊的 PoW 链并行运行,产生 空区块,纯粹用于测试和协调。

这种情况在 The Merge 期间发生了改变。

在 The Merge 时,信标链接管了区块生产和共识的角色,不再有 2 条不同的链,而是只有一条权益证明以太坊,现在每个节点需要两个不同的客户端。它开始接收来自 执行客户端 的执行负载 (即,实际的交易数据),共识客户端 使用其基于 PoS 的验证器网络来将它们最终确定到区块中。同时,旧的 PoW 链禁用了其挖矿、共识和网络逻辑,实际上将所有控制权移交给了信标链。

从那时起,以太坊变成了一条 单一的权益证明链,具有两个紧密连接的组件:

  • 共识层 (信标链):处理验证器职责、区块最终确定和共识规则。
  • 执行层 (以前的 PoW 链):处理交易、EVM 执行并管理以太坊的状态。

这两层可以使用 Engine API 相互通信。

信标链做什么

信标链 处理交易执行或智能合约逻辑,这仍然是 执行层 的责任。相反,它专注于共识职责,例如:

  • 接收和组织提议的区块
  • 处理链的证明
  • 运行 分叉选择规则 以决定哪个链是规范的
  • 根据网络参与情况应用奖励和惩罚

简而言之,虽然执行层是以太坊应用程序存在的地方,但信标链确保每个人都同意区块的顺序和有效性。

EIP-4844 Blob 交易

在短期和中期,甚至可能在长期内。Rollups 仍然是以太坊实现扩容的唯一无需信任的途径。由于 L1 gas 费用持续居高不下,整个生态系统越来越迫切地需要支持广泛迁移到Based Rollup 的使用方式。EIP-4844 提供了一个至关重要的临时解决方案。它实现了完整分片将使用的相同交易格式,但实际上并没有对数据进行分片。相反,这些新的 携带 blob 的交易 只是将数据添加到 信标链,共识客户端会在那里下载数据,并在短暂的保留窗口后自动丢弃。EIP-1559 正如我们在 上一篇文章](https://learnblockchain.cn/article/19573) 中看到的那样

然后有两个新的字段:

  • max_fee_per_blob_gas: 这设置了你愿意为 blob 空间 支付的最高费用,类似于 max_fee_per_gas 对常规 gas 的工作方式。
  • blob_versioned_hashes: 这是一个指向实际 blob 数据的哈希列表。这些哈希是使用一种称为 kzg_to_versioned_hash 的加密函数派生的,它们作为对 blob 内容的承诺。(我们不会在这里介绍它)

设置约束

为了构造或验证 EIP-4844 blob 交易,以太坊使用了一种称为 KZG (Kate-Zaverucha-Goldberg) commitments 的加密方案。该方案需要一种称为 trusted setup 的特殊工件——一种一次性预先计算的椭圆曲线幂列表这里 并保存在与此代码相同的文件夹中

发布后,你应该能够看到:

按回车键或点击以全尺寸查看图片

https://sepolia.etherscan.io/tx/0xfd044e8bccdba170a8afd3ec9248cb97fb4ebce49adbe392c47385c23ea82c3b

按回车键或点击以全尺寸查看图片

Sepolia 交易哈希: 0xfd044e8bcc...

总结

EIP-4844 (proto-danksharding) 引入了 blob 交易,为 rollups 提供了以太坊上的临时数据空间,其存储成本仅为今天的几分之一。

通过将执行数据与 blob 数据分离,并在短暂的保留期后丢弃 blobs,网络在不增加状态大小的情况下获得了主要带宽改进。

此升级弥合了当前 rollup 扩展和完整数据分片之间的差距,降低了费用,提高了吞吐量,并标志着朝着以太坊的长期可扩展性愿景迈出的第一个真正步骤。

资源

  • 交易类型代码可以在 这里 找到。
  • 原文链接: medium.com/@andrey_obruc...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Andrey Obruchkov
Andrey Obruchkov
江湖只有他的大名,没有他的介绍。