什么是 data availability?
Data availability 保证了提议区块背后的完整数据已发布到网络中,因此任何参与者都可以下载它并独立验证或重建链的状态。这个概念对 rollup 最为重要,因为 rollup 在其父链之外执行交易,并且必须将底层数据发布到某个可验证的地方。
DA 解决的问题是数据扣留。区块生产者可能会发布一个看起来有效的区块头,同时隐藏其中的交易,导致网络无法证明任何错误,因为证据缺失。确保数据已被发布(哪怕只是短暂发布)可以阻止这种攻击,并使欺诈证明和状态重建得以运行。
DA 具有刻意的临时性。网络只需要将数据保留足够长的时间,以便验证和争议期通过,之后就可以进行裁剪。Ethereum 在大约 18 天后会丢弃 blob 数据,而 Celestia 将其最短裁剪窗口缩短至略多于 7 天,从而在吞吐量增长的同时保持节点存储需求不变。
发布数据是大多数 Layer 2 networks 最大的运营成本,因此 DA 的价格和容量直接决定了 rollup 费用。这使得 DA 变成了一个竞争激烈的市场,Ethereum、Celestia、EigenDA 和 Avail 都在向相同的客户出售 blobspace。

Data availability 是如何工作的?
现代 DA 系统结合了纠删码、密码学承诺和随机采样,使小型、低成本的节点能够在不下载大量数据的情况下验证海量数据的存在。
1. 纠删码
纠删码通常使用里德-所罗门编码(Reed-Solomon encoding)将区块的数据扩展为更大的一组冗余片段,这样只需通过部分碎片就可以重建原始数据。如果扩展数据的一半存活下来,整个数据集就能存活下来。
这一特性改变了数据扣留问题。如果没有编码,隐藏一笔交易意味着压制一个微小的碎片,随机检查几乎永远无法捕捉到这一点。有了编码,隐藏任何内容都意味着压制大量扩展数据,以至于只需少数几个样本就能以近乎百分之百的确定性检测到这个空缺。
承诺将碎片绑定到区块头,以便节点对照指纹检查每个样本。Celestia 将其编码数据排列在一个二维正方形中,并带有 命名空间默克尔树(namespaced Merkle trees),而 Ethereum 和 Avail 则使用 KZG 多项式承诺对 blob 数据做出承诺,从而在不泄露其余部分的情况下证明某个碎片属于该集合。
2. 数据可用性采样 (DAS)
采样是构建于编码之上的验证技术。轻节点不会下载整个区块,而是请求一些随机片段,并根据承诺进行检查。每一次成功的采样都会大幅提高所有数据均已发布的概率,几十次采样即可将置信度提升至 99.99% 以上。
安全性随参与度的提升而扩展。每个额外的采样节点都会查询不同的随机坐标,因此成千上万个轻客户端能够共同覆盖整个数据集,尽管没有任何单台机器保存了完整数据。被扣留的数据会迅速在采样中暴露出问题,诚实节点会在区块最终确认之前将其拒绝。
由于采样的存在,大区块变得安全可靠。区块链可以在不迫使每个节点购买更多带宽的情况下将数据容量提升一个数量级,因为验证成本大致保持不变。这就是 Ethereum 的 PeerDAS 和 Celestia 轻节点网络背后的机制。
3. 全节点、轻节点与重构
data availability 网络将验证职责分配给不同类型的节点。全节点负责下载并存储完整区块或其指定部分,向网络其余部分提供采样服务,并在区块生产者扣留部分区块时利用纠删码片段重构丢失的数据。
轻节点负责执行采样。它们仅保存区块头和承诺,运行在笔记本电脑或手机上,但仍能获得数据确实存在的强有力保证。在 Ethereum 的 PeerDAS 设计下,甚至连验证者也不再需要存储每个 blobs,因为每个节点只托管编码数据的一个指定切片,并从对等节点处对其余部分进行采样。
重构是将两者结合在一起的安全网。如果有足够多的诚实节点在彼此之间持有足够多的片段,完整数据集就始终能够被重建并重新发布,因此 sampling 网络需要一个最低限度的诚实节点群体,而更大的群体会使网络变得更加稳固,而非带来负担。
4. 数据可用性委员会 (DAC)
并非每条链都会为完整 data availability 保证支付费用。data availability 委员会是一组固定的已知运营商,它们将 rollup 的数据保存在父链之外,并签署数据存在的证明。Validium 和 optimium 采用这种模型将成本降至接近零,但前提是用户必须信任委员会,而不是进行公开验证。
如果委员会合谋或失效,用户可能无法证明其余额或退出链,这种风险可以通过 sampling 系统来消除,因为该系统允许任何人直接检查数据。L2BEAT 追踪了哪些网络依赖委员会,哪些网络依赖可验证的 data availability 层,而很大一部分应用链出于价格考虑仍然选择了委员会模型。
混合设计试图缩小这一差距。一些委员会会在父链上发布密码学承诺,添加 staking 和 slashing 来惩罚不良行为,或者在证明停止到达时回退到完整的链上发布。

Ethereum 上的 Data Availability:blobs 与 PeerDAS
Ethereum 随着 2024 年 3 月的 Dencun 升级将 data availability 变成了一项一流的产品,该升级通过 EIP-4844 引入了 blobs。blobs 是 rollup 附加到区块上的 128 KB 数据包,由独立的手续费市场定价,并在大约 18 天后被裁剪。
自上线以来,容量一直在分阶段攀升。Dencun 以每个区块 3 个 blobs 的目标开始,Pectra upgrade 将其翻倍至 6 个,随后 Fusaka upgrade 激活了 PeerDAS,这是一种允许节点在无需下载所有 blobs 的情况下进行验证的采样协议。Fusaka 还加入了 Blob Parameter Only 升级(BPO),这是一种预先安排的小型升级,可在不进行完整硬分叉的情况下提高 blob 限制。
几周内又进行了两次 BPO 升级。第二轮 BPO 升级将目标提升至每个区块 14 个 blobs,最高可达 21 个,即每个区块约 2.7 MB 的数据,核心开发者保留了进一步增加的余地,直到需求填满新的空间。路线图正朝着完全 danksharding 迈进,其中二维采样支持更高数量的 blobs,即将到来的 Glamsterdam upgrade 重构了区块传播,以开启下一步。
定价与容量同样重要。Blob 费用在它们自己的拍卖机制中浮动,因此当 blobspace 充足时,Rollup 支付的费用非常少,而在饱和时则会激增,这一周期在需求赶上 Pectra 的限制、而 Fusaka 重置裕度时便上演过。

Ethereum Blobs 对比 Celestia 对比 EigenDA 对比 Avail
Rollup 现在可以在 Ethereum 的原生 blobspace 和专用 DA 网络之间进行选择,这一决定决定了它们的成本基础、吞吐量上限和信任假设。Ethereum 提供了最深厚的安全性,并将数据验证保留在结算 Rollup 的同一验证者集中,而替代方案则以更低的成本出售更多的原始带宽。
Celestia 是最大的专用 DA 网络,这是一个权益证明(PoS)链,除了对由轻节点采样验证的数据 blob 进行排序和发布之外,不做其他任何事情。其 Matcha 升级将最大区块从 8 MB 提高到 128 MB 并将通胀减半,这是旨在实现每秒 1 GB 吞吐量的路线图的一部分。主权 Rollup 和 Eclipse 等高吞吐量链为了价格和裕度而在那里发布数据。
EigenDA 走了一条不同的道路,它作为一项由通过 EigenLayer 重新质押的 ETH 保障安全的服务运行,而不是运营自己的链。其第二版本在主net上达到了每秒 100 MB,这是所有 DA 系统中最高的实时吞吐量,这也是像 MegaETH 这样注重性能的链在其之上构建的原因。代价是一个更接近去中心化委员会而非公开采样链的分发模型。
Avail 介于两者之间,是一个采用与 Ethereum 的 danksharding 路线图相同的 KZG 承诺和采样设计的主权 DA 链。它目前运行 4 MB 区块,并有通往多吉字节容量的明确路径,并将 DA 层与 Nexus(一个现已在 mainnet 上线的跨链协调系统)配对。
以下是主要选项的对比方式:
data availability 与数据存储
DA 和存储回答的是不同的问题。availability 证明了数据在区块产生时已被发布且可检查,这是共识和欺诈证明所要求的。存储则确保数据在事后长期可检索,这是浏览器、索引器和重放历史的用户所要求的。
区块链只强制执行第一点。一旦 Ethereum 大约 18 天的 blob 窗口或 Celestia 的修剪窗口过去,协议就不再保证数据依然存在,而保留数据的动力则转移到了需要历史记录的各方,包括 rollup 团队、归档节点、浏览器和索引器。
永久存储网络扮演了第二个角色。像 Arweave 和 Filecoin 这样的系统付费让节点无限期保存数据,一些 rollup 会将其修剪掉的 blob 历史归档在那里。将这两者混为一谈会导致一种常见的误解,即修剪会使得 rollup 不安全,然而在数据过期时,与安全性相关的窗口期其实早已关闭。

为什么 data availability 对 rollup 至关重要
每个 rollup 的安全性最终都归结为一个断言,即局外人可以检查其状态,而如果没有发布数据,这一断言就会失效。Optimistic rollups 需要这些数据,以便挑战者能够 spot 一个无效的状态根,并在争议窗口内提交欺诈证明。如果排序器可以隐藏交易,就没有人能够构建证明,盗窃行为将在无人挑战的情况下最终完成。
ZK rollups 出于不同的原因需要它。有效性证明已经保证了状态转换计算正确,但用户仍然需要底层数据来了解自己的余额,并在 rollup 运营商消失时退出。没有数据的证明只能让链保持正确但无法使用,这就是为什么这两个rollup 家族都将 DA 视为不可协商的条件,而 validiums 则接受较弱的委员会保证来削减成本。
DA 的容量也限制了 rollup 的性能。一条链处理交易的速度取决于它发布背后数据的速度,因此 blob 限制和 DA 带宽设定了整个 Layer 2 生态系统的吞吐量上限和费用水平。这种联系解释了为什么过去两年中每一次重大的扩容升级(从 Dencun 到 Fusaka 再到 Celestia 的 Matcha)首先都是一次 DA 升级。

确保 data availability 的挑战
数据扣留仍然是核心攻击手段。采样从统计学上克服了这一点,但这些保证依赖于必须在实践中成立的假设,包括足够多的诚实采样节点、不可预测的样本请求以及在片段丢失时的正常重建。Celestia 针对极少轻节点群体的区块重建协议仍在积极开发中,而 PeerDAS 在 Ethereum mainnet 上的发布也才刚过去半年。
经济学带来了第二层压力。专用的 DA 层将 blobspace 定价得如此低廉,以至于手续费收入依然微薄,这引发了人们对长期如何资助其验证者集合的质疑,而 Ethereum 则面临着相反的张力,因为将数据推送到外部层会把手续费收入从其自身的验证者那里转移出去。基于委员会的系统继承了熟悉的中心化风险,因为一小部分运营商集合可以进行审查、串通或干脆离线。
规模本身增加了工程风险。传播 128 MB 的区块或每秒 100 MB 的分散数据触及了网络极限,每一次容量的跃升都必须保持一个特性,即普通家庭网络连接仍然可以验证该链。该路线图的目标(吉字节级别的区块及更高)完全依赖于随着数据集呈指数级增长,采样能够继续保持有效。
最后总结
data availability 最初只是 rollup 设计中一个晦涩难懂的角落,后来却演变成整个扩容辩论的轴心。谁发布数据,谁就定义了在其之上构建的链的安全性;谁为其定价,谁就定义了用户支付的费用。
该领域已经围绕采样达成了共识。Ethereum 的 PeerDAS、Celestia 的轻节点以及 Avail 的 KZG 设计都汇聚于同一个洞察,即对经过纠删码处理的数据进行随机检查,可以让小型机器验证巨大的区块,而 EigenDA 则展示了再质押运营商集合在今天能够提供多少原始带宽。
我们预计需求将决定下一个阶段。Ethereum 上的 blob 容量超越了使用量,Celestia 的余量是其旧限制的 16 倍,而悬而未决的问题是,究竟有哪些应用(从高频交易链到链上游戏)能够成长并填满为它们构建的空间。






.webp)