原文标题:On data availability layers
原文作者:Bridget Harris
原文编译:kaori,BlockBeats
数据可用性层已成为模块化架构的重要组成部分,充当可插入组件来降低成本并扩展区块链。DA 层的核心功能是确保链上数据可供所有网络参与者使用和访问。从历史上看,每个节点都必须下载所有交易数据以验证数据是否可用——这是一项效率极低且成本高昂的任务。这就是大多数区块链目前的工作方式,也是可扩展性的障碍,因为验证所需的数据量随着块大小线性增加。最终用户在这里遭受损失:数据可用性成本占用户在 Rollup 上进行交易所产生的交易成本的 90%(目前 Rollup 将交易数据发送到以太坊的成本为 1300-1600 美元/mb)。
数据可用性采样 (DAS) 的引入从根本上改变了这种架构。通过 DAS,轻节点可以通过参与区块数据的多轮随机采样来确认数据可用,而不必下载每个整个区块。一旦完成多轮采样,并且达到数据可用的某个置信阈值,交易过程的其余部分就可以安全地进行。通过这种方式,链可以扩展其块大小,同时保持简单的数据可用性验证。并且还实现了可观的成本节省:这些新兴层可以将 DA 成本降低高达 99%。
0xngmi 中的 DA 的一个非常恰当的类比
除了实现更高的吞吐量之外,数据可用性层对于提高互操作性也很有意义。廉价的 DA 将不可避免地推动新的定制 Rollup 链的寒武纪爆发,通过 Caldera、AltLayer 和 Conduit 等 Rollup-as-a-service 提供商使部署变得越来越简单。然而,随着 L2 和 L3 生态系统的出现,它们默认会变得支离破碎。让用户使用新平台已经很困难了——如果互操作性、流动性和网络效应有限,情况会变得更糟。统一的 DA 层作为每个网络的基础,会使得资金流变得更加简单,并吸引更广泛的用户群。
Caldera 和其他 RaaS 提供商将使项目能够在构建自定义汇总时选择 DA 层
Avail、EigenDA 和 Celestia 是 DA 生态系统中的主角——每一个都服务于相同的空间,但在基础设施堆栈、执行和上市方面采取的方法略有不同。
在技术架构方面,Avail、Ethereum 和 EigenDA 采用了 KZG 承诺,而 Celestia 则采用欺诈证明以确认区块编码的正确性。生成 KZG 证明,虽然是一种对数据可用性非常严格的方法,却给区块生产者带来了更多的计算开销,尤其是在区块大小增加的情况下。另一方面,Celestia 假设数据可以通过其防欺诈方案隐式获取。作为一种未完成计算「工作」的交换,系统必须等待一段时间以进行欺诈证明争议期,然后节点才能确认该块已准确编码。KZG 证明和欺诈证明都在经历快速的技术进步;它们的权衡可能会变得更加复杂,目前还不清楚哪种机制会严格优于另一种。
对于 Avail 而言,他们采用了 KZG 承诺的架构,使其非常适合 zk 结构。如果 zk 在未来占主导地位,而 Celestia 依赖于乐观欺诈证明,这对 Celestia 可能构成挑战。此外,即使所有全节点都宕机,Avail 的 P2P 轻客户端网络也能够支持该网络;而在 Celestia 的架构中,轻客户端在没有完整节点的情况下无法运行。Avail 和 Celestia 在 DAS(分布式存储)下均采用纠删码,将数据分割成碎片,增加冗余,并允许对数据进行重建以进行验证。
与 Celestia 和 Avail 的技术堆栈相比,EigenDA 充分利用了以太坊现有的基础设施。如果需要将数据发送到 Rollup 合约以证明其可用性,EigenDA 将继承与以太坊相同的最终确定时间。如果 Rollup 完全采用 EigenLayer,就能更迅速地实现最终确定。
为了达成共识,Avail 采用了从 Polkadot 的 SDK 继承的 BABE + GRANDPA,同时使用了提名权益证明(NPoS)。NPoS 用于提名一组验证者,委托人希望看到他们当选,而 BABE 规定了谁将提议下一个区块,GRANDPA 则充当了区块最终确定算法。
Celestia 使用 Tendermint 作为共识机制,允许用户质押他们的 TIA 以获得验证者质押奖励。尽管 Celestia 能够通过 Tendermint 实现快速确定性,但由于其 optimistic 架构,实际数据可用性的保证存在等待期(用户必须有时间提交欺诈证明)。
EigenDA 本身没有共识,而是有两种机制来保证数据可用性的有效性:
Proof of custody(监护证明):这本质上是一种经济安全机制,可确保节点存储数据,但实际上并不能保证该数据提供给网络中的每个人。如果节点不遵守,就会被 slash,例如如果他们无法证明他们拥有数据。
Sufficient decentralization(充分的权力下放):确保操作者集保持去中心化和抗合谋性对于网络正常运行至关重要。拥有庞大而独立的验证者集,数据的提供变成了一个竞争,许多市场参与者愿意加入。在这个规模下,进行合谋是极其困难的。
值得一提的一个有趣观点是,Celestia 的活跃验证者集由前 100 名质押令牌最多的验证者组成,而这个门槛可能在未来降低。此外,他们的每个验证者都存储了整个数据集。而 EigenDA 将对存储一小部分数据的每个节点(未来可能是数百万个)进行优化,因此,如果足够的节点是诚实的,数据就可以被重建。有关 EigenDA 的完整起源(和更多细节)可以在 Sreeram 最近的帖子中找到。
最后,Avail 对主要 DA 层的核心组件进行了有益的比较。
关于每种设计的权衡也出现了新的讨论。David Hoffman 指出,Celestia 本身就是一个完整的区块链——一个复杂的堆栈,需要的不仅仅是纯粹的 DA。另一方面,EigenDA 只是一组智能合约,但它依赖于以太坊,而 Celestia 和 Avail 则不然。
Celestia 团队认为,为了安全性,代币是必要的,而 EigenDA 最终将需要代币,因为不可能削减链上数据的可用性。他们认为,为了确保节点是诚实的、数据可用并惩罚恶意节点,网络必须能够通过包括原生代币在内的激励结构进行验证。在这里,Celestia 的 Nick White 提出了对 EigenDA 的批评:「除非源链被分叉,否则保留数据的重新验证器不会被 slash——这是极不可能的,因为这是以太坊。」
从品牌角度来看,EigenDA 是一款与以太坊极其一致的产品。EigenLayer 团队正在根据 EIP-4844 和 danksharding 进行构建——用 Sreeram 的话说,EigenDA 被构建为「唯一以 ETH 为中心的数据可用性层」。他解释说,根据定义,数据可用性层是一种模块化产品,但其他 DA「Layer」实际上是区块链本身。
将 DA 层打包到区块链中确实会给在其上本地运行的 Rollups 带来明显的好处,主要是安全保证的形式。然而,Sreeram 提到,他的团队构建 EigenDA 的目标是创建一种产品,从第一原则开始为以太坊生态系统提供数据可用性服务——一个毗邻以太坊生态系统的真正的「Layer」。他指出,这里不需要单独的共识,因为基于以太坊的 Rollup 已经依赖网络进行排序和共识。(Sreeram 在最近的 Bankless 节目中解释了这一点。)
Avail 采用有效性证明和 DAS 构建,可在生态系统方面实现高度的灵活性和互操作性。他们的架构为可扩展框架奠定了基础,该框架旨在支持跨许多不同平台的服务。这种「不偏不倚」的立场允许更大的互操作性和资金流动,并且也吸引非以以太坊为中心的生态系统。这里的最终目标是从所有链中获取有序交易数据,并将其聚合到 Avail,使它们成为所有 web3 的协调中心。为了启动该网络,Avail 最近在其激励测试网的同时推出了节点冲突活动,允许用户运行验证器和轻客户端并参与网络挑战。
Celestia 的生态系统由 RaaS 提供商、共享排序器、跨链基础设施等组成,涵盖以太坊、以太坊 rollups、Cosmos 和 Osmosis 等生态系统。
这些设计选择中的每一个,无论是技术方面还是营销方面,都伴随着有趣的权衡。就我个人而言,我不确定数据可用性类别是否会是一个赢家通吃或商品化的市场——相反,可能存在寡头垄断式市场,项目会选择最适合其需求的 DA 层。根据协议的类型,团队可以针对互操作性、安全性或对某个生态系统或社区的偏好进行优化。如果自定义用例汇总按预期爆炸式增长,他们会毫不犹豫地集成 DA 层 - 并且将有不止一种强大的选项可供选择。
这项技术——以及总体上的模块化叙述——仍然相对较新,Celestia 最近刚刚上线,Avail 和 EigenDA 将在未来几个月内进入主网。然而,迄今为止模块化主义的技术进步非常出色(其中许多概念在几年前还只是想法!)。通过从本质上改进我们构建和使用区块链的方式,DA 层无疑将成为本周期及以后周期的核心技术之一。