原文标题:《IOSG Weekly Brief |拆解数据可用性层:模块化未来中被忽视的乐高积木 #136》?
撰文:Jiawei,IOSG Ventures
tl;dr
对于轻客户端的数据可用性,采用纠删码来解决该问题几乎没有异议,不同点在于如何确保纠删码被正确编码。Polygon Avail 和 Danksharding 中采用了 KZG 承诺,而 Celestia 中采用了欺诈证明。
对于 Rollup 的数据可用性,如果把 DAC 理解为联盟链,那么 Polygon Avail 和 Celestia 所做的就是使数据可用性层更加去中心化——相当于提供「DA-Specific」的公链,以此提升信任级别。
未来的 3 至 5 年内,区块链的架构必然由单体化向模块化演变,各层呈现低耦合状态。未来可能出现 Rollup-as-a-Service(RaaS)、Data Availability-as-a-Service(DAaaS)等许多模块化组件的提供商,实现区块链体系结构的可组合性乐高。模块化区块链是支撑下一个周期的重要叙事之一。
模块化区块链中,执行层已经「四分天下」,后来者寥寥;共识层逐鹿中原,Aptos 和 Sui 等崭露头角,公链竞争格局虽未尘埃落定,但其叙事已是新瓶装旧酒,难以寻找合理的投资机会。而数据可用性层的价值仍然有待被发掘。
在聊数据可用性之前,我们先花点时间对模块化区块链进行简要回顾。
图片来源:IOSG Ventures, 据 Peter Watts 改制
关于模块化区块链的分层暂无严格定义,一些分层方式从以太坊出发,另一些则偏向通用化的视角,主要看在何语境下进行讨论。
执行层:两件事发生在执行层。对单笔交易而言,执行交易并发生状态更改;对同批次的交易而言,计算该批次的状态根。当前以太坊执行层的一部分工作分给了 Rollup,即我们熟知的 StarkNet、zkSync、Arbitrum 和 Optimism 等。
结算层:可以理解为主链上的 Rollup 合约验证状态根的有效性(zkRollup)或欺诈证明(Optimistic Rollup)的过程。
OpenAI CEO:公司已不用API付费客户数据训练大语言模型:金色财经报道,ChatGPT开发公司OpenAI首席执行官Sam Altman表示,公司已经有一段时间没有使用付费客户的数据来训练人工智能大语言模型了;用户们显然希望我们不要使用他们的数据进行训练,所以我们已经改变了我们的计划,未来我们也不会这样做了。网络记录也显示,今年3月1日,OpenAI悄然更新了其服务条款,不会使用通过其API提交的任何数据来服务改进,包括AI模型训练,除非客户或组织选择加入。但OpenAI的新隐私和数据保护仅适用于使用该公司API服务的客户。[2023/5/6 14:46:49]
共识层:无论采用 PoW、PoS 或其他共识算法,总之共识层是为了在分布式系统中对某件事达成一致,即对状态转换的有效性达成共识。在模块化的语境下,结算层和共识层的含义有些相近,故也有一些研究者把结算层和共识层统一起来。
历史状态层:由 Polynya 提出(仅针对以太坊而言)。因为在引入 Proto-Danksharding 之后,以太坊只在一定时间窗口内维护即时数据可用性,之后则进行修剪操作,把这项工作交给其他人。例如 Portal Network 或是其他存储这些数据的第三方可被归类于这一层。
数据可用性层:数据可用性存在什么问题?对应的解决方案各自是什么?这是本文要集中讨论的问题,在此先不对它进行概括。
图片来源:IOSG Ventures
回到 18、19 年,数据可用性更多在于轻客户端节点的语境;而在之后的 Rollup 角度下数据可用性又有着另一层含义。本文将分别从「节点」和「Rollup」的两个不同语境来解释数据可用性。
图片来源:https://medium.com/metamask/metamask-labs-presents-mustekala-the-light-client-that-seeds-data-full-nodes-vs-light-clients-3bc785307ef5
Web3社交图谱Relation集成ChatGPT提供AI Chat Bot服务:12月7日消息,Web3社交图谱基础设施Relation宣布集成ChatGPT人工智能对话模型,在Relation IM中提供不受地区限制的AI Bot服务。
此前消息,1月28日,基于Internet Computer的Web3社交基础设施Relation宣布以2000万美元估值完成种子轮融资。[2022/12/7 21:28:47]
我们首先来看全节点和轻客户端的概念。
由于全节点亲自下载和验证每个区块中的每笔交易,因此不需要诚实假设来确保状态被正确执行,有着很好的安全性保证。但运行全节点需要存储、计算能力和带宽的资源要求,除了矿工以外,普通用户或者应用没有动力去运行全节点。况且,如果某个节点仅仅需要在链上验证某些信息,运行全节点显然也是非必要的。
这是轻客户端在做的事情。在 IOSG 的文章「多链生态:我们的当前阶段与未来格局」中我们简要介绍了轻客户端。轻客户端是区别于全节点的一种说法,它们往往不与链进行直接交互,而依赖邻近的全节点作为中介,从全节点请求所需要的信息,例如下载区块头、或是验证账户余额。
作为节点的轻客户端可以很快地同步整条链,因为它只下载和验证区块头;而在跨链桥模型中,轻客户端又作为智能合约——目标链的轻客户端只需要验证源链的代币是否被锁定,而无需验证源链的所有交易。
问题出在哪?
这样存在一个隐含问题:既然轻客户端只从全节点那里下载区块头,而不是自己下载和验证每笔交易,那么恶意的全节点(区块生产者)可以构造一个包含无效交易的区块,并把它发送给轻客户端来它们。
我们容易想到采用「欺诈证明」来解决这个问题:即只需要 1 个诚实的全节点监测区块的有效性,并在发现无效区块后构造一个欺诈证明、将其发送给轻客户端来提醒它们。或者,在收到区块后,轻客户端主动询问全网是否有欺诈证明,如果一段时间后没有收到,那么可以默认该区块是有效的。这样一来,轻客户端几乎可以获得与全节点等同的安全性(但仍然依赖于诚实假设)。
然而,在以上论述中,我们实际上假设了区块生产者总是会发布所有的区块数据,这也是生成欺诈证明的基本前提。但是,恶意的区块生产者可能在发布区块的时候隐藏掉其中的一部分数据。这个时候,全节点可以下载这个区块,验证它是无效的;但轻客户端的特点使它们无法这样做。并且由于缺少数据,全节点也无法生成欺诈证明来警告轻客户端。
Yuga Labs将向迈阿密当代艺术学院捐赠CryptoPunk #305:11月15日消息,Yuga Labs 将向迈阿密当代艺术学院(ICA Miami)捐赠 CryptoPunk #305,作为一项新计划的一部分,该计划旨在将收藏中的标志性 NFT 放入世界各地的博物馆和画廊。[2022/11/16 13:09:40]
另一种情况是,可能由于网络原因,一部分数据在稍后才会上传,我们甚至无法判断这时的数据缺失是客观条件所致还是区块生产者有意为之——那么欺诈证明的奖惩机制也就无法生效。
这就是我们要讨论的在节点中的数据可用性问题。
?
?图片来源:https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding??
上图中给出了两种情况:其一,恶意的区块生产者发布了数据缺失的区块,这时诚实的全节点发出警告,但随后该生产者又补充发布了剩余的数据;其二,诚实的区块生产者发布了完整的区块,但这时恶意的全节点发出了假警告。在这两种情况下,网络中的其他人在 T3 之后看到的区块数据都是完整的,但都有人在其中作恶。
这样看来,采用欺诈证明来确保轻客户端的数据可用性是存在漏洞的。
2018 年 9 月,Mustafa AI-Bassam(现 Celestia CEO)和 Vitalik 在合著的论文中提出采用多维纠删码来检查数据可用性——轻客户端只需要随机下载一部分数据并验证,就能确保所有数据块是可用的,并在必要时重建所有数据。
采用纠删码来解决轻客户端的数据可用性问题几乎没有异议,Polygon Avail、Celestia(以及以太坊的 Danksharding)中都采用了 Reed-Solomon 纠删码。
不同点在于如何确保纠删码被正确编码:Polygon Avail 和 Danksharding 中采用了 KZG 承诺,而 Celestia 中采用了欺诈证明。两者各有优缺,KZG 承诺无法抗量子,而欺诈证明依赖一定的诚实假设和同步假设。
俄罗斯央行反对在本地的结算中使用加密货币:金色财经报道,俄罗斯央行反对在本地的结算中使用加密货币。俄罗斯央行行长Nabiullina表示,她“反对在结算中使用私人加密货币\",尽管她表示她“支持数字金融资产的发展和金融的数字化”,但她还表示“数字金融资产不限于私人的加密货币”。[2022/11/10 12:45:18]
除 KZG 承诺外,还有采用 STARK 和 FRI 的方案可用于证明纠删码的正确性。
(注:纠删码和 KZG 承诺的概念在 IOSG 的文章「合并在即:详解以太坊最新技术路线」中有提及,由于篇幅所限,在本文中不作展开解释)
Rollup 中的数据可用性是:在 zkRollup 中,需要使任何人可以自行重建 Layer2 的状态,以确保抗审查;在 Optimistic Rollup 中,需要确保 Layer2 的所有数据都被发布,这是构建欺诈证明的前提。那么问题在哪?
?图片来源:https://forum.celestia.org/t/ethereum-rollup-call-data-pricing-analysis/141?
我们来看 Layer2 的费用结构,除了固定花费外,与每批次交易笔数相关的变量主要在于 Layer2 的 Gas 花费以及链上数据可用性的支出。前者的影响微乎其微;而后者需要为每个字节恒定支付 16 gas,整体占到 Rollup 成本的 80%-95% 之多。
(链上)数据可用性很贵,怎么办?
一是降低在链上存放数据的成本:这是协议层做的事情。在 IOSG 的文章「合并在即:详解以太坊最新技术路线」中,我们提到以太坊正在考虑引入 Proto-Danksharding 和 Danksharding 来为 Rollup 提供「大区块」,即更大的数据可用性空间,并采用纠删码和 KZG 承诺解决随之而来的节点负担问题。但从 Rollup 的角度去想,被动等待以太坊来为自己做适配是不现实的。
二是把数据放到链下。下图列出了当前的链下数据可用性方案,通用化方案包括 Celestia 和 Polygon Avail;在 Rollup 中作为用户可选的方案包括 StarkEx、zkPorter 和 Arbitrum Nova。
币安首席战略官:希望将推特平台作为处理Web3问题的“沙盒”:11月2日消息,据外媒报道,币安首席战略官Patrick Hillman表示,币安作为股权合作伙伴斥资5亿美元协助马斯克收购推特,是希望将社交媒体平台作为处理Web3问题的“沙盒”。币安正在寻求成为推特增长和创新的关键合作伙伴,并转向用“Web3解决方案”来解决社交媒体平台上的挑战,例如推特是否可以作为支付系统创建“小额微交易”。
Hillman表示,机器人问题已经损害了加密社区使用推特进行自由发言,支付策略可以作为抵御机器人的一种方式,“能够解决机器人问题对于重启围绕加密的健康对话至关重要。”(CoinDesk)[2022/11/2 12:07:40]
?图片来源:IOSG Ventures
(注:Validium 原本特指 zkRollup 与链下数据可用性相结合的扩容方案,为方便起见,本文中以 Validium 指代链下数据可用性方案并一同参与比较)
以下我们具体来看这些方案。
在最简单的 Validium 方案中,由中心化的数据运营商来负责确保数据可用性,用户需要信任运营商不会作恶。这样的好处是成本低,但实际上几乎没有安全保证。
于是,StarkEx 在 2020 年进一步提出了由数据可用性委员会(DAC)维护的 Validium 方案。DAC 的成员是知名且在法律管辖区内的个人或组织,信任假设是他们不会串通和作恶。
Arbitrum 今年提出了 AnyTrust,同样采用数据委员会来确保数据可用性,并基于 AnyTrust 构建了 Arbitrum Nova。
zkPorter 则提出由 Guardians(zkSync Token 持有者)来维护数据可用性,他们需要质押 zkSync Token,如果发生了数据可用性故障,那么质押的资金将被罚没。
三者都提供了称为 Volition 的选项:用户按需自由选择链上或链下数据可用性,根据具体的使用场景,在安全性和成本之间自行取舍。
图片来源:https://blog.polygon.technology/from-rollup-to-validium-with-polygon-avail/
提出上述方案基于这样的想法:既然普通运营商的信誉度不够高,那么就引入更权威的委员会来提高信誉度。
一个小型委员会的安全程度足够高吗?以太坊社区早在两年前就提出了 Validium 的勒索攻击问题:如果窃取了足够的委员会成员的私钥,使得链下数据可用性不可用,那么可以威胁用户——只有他们支付足够的赎金才能从 Layer2 提款。据 Ronin Bridge 和 Harmony Horizon Bridge 被盗的前车之鉴,我们无法忽略这样的可能性。
既然链下的数据可用性委员会并非足够安全,那么如果引入区块链作为信任主体来保证链下数据可用性呢?
如果把前述的 DAC 理解为联盟链,那么 Polygon Avail 和 Celestia 所做的就是使数据可用性层更加去中心化——相当于提供了「DA-Specific」的公链,拥有一系列的验证节点、区块生产者和共识机制,以此提升信任级别。
除了安全性的提升之外,如果数据可用性层本身就是一条链,那么它其实可以不局限于为某个 Rollup、或者某个链提供数据可用性,而是作为通用化的解决方案。
图片来源:https://blog.celestia.org/celestiums/
我们以 Celestia 在以太坊 Rollup 上的应用 Quantum Gravity Bridge 为例进行解释。以太坊主链上的 L2 Contract 像往常一样验证有效性证明或欺诈证明,区别在于数据可用性由 Celestia 提供。Celestia 链上没有智能合约、不对数据进行计算,只确保数据可用。
L2 Operator 把交易数据发布到 Celestia 主链,由 Celestia 的验证人对 DA Attestation 的 Merkle Root 进行签名,并发送给以太坊主链上的 DA Bridge Contract 进行验证并存储。
这样实际上用 DA Attestation 的 Merkle Root 代替证明了所有的数据可用性,以太坊主链上的 DA Bridge Contract 只需要验证并存储这个 Merkle Root,开销得到了极大的降低。
(注:其他数据可用性方案还有 Adamantium 和 EigenLayr。Adamantium 方案中的用户可以选择托管自己的链下数据,在每次状态转换后都签名确认自己的链下数据可用,否则资金将被自动发回主链来确保安全;或者用户可以自由选择数据提供商。EigenLayr 是偏向学术的方案,提出了 Coded Merkle Tree 和数据可用性预言机 ACeD。这里暂不展开讨论)
图片来源:IOSG Ventures,据 Celestia Blog 改制
在逐一讨论上述方案后,我们从安全性 / 去中心化程度、Gas 花费的角度来做一个横向比较。注意,该坐标图仅代表笔者的个人理解,作为模糊的大致划分而非定量比较。
左下角的 Pure Validium 安全性 / 去中心化程度和 Gas 花费都是最低的。
中间部分是 StarkEx 和 Arbitrum Nova 的 DAC 方案、zkPorter 的 Guardians 验证者集方案,以及通用化的 Celestia 和 Polygon Avail 方案。笔者认为采用 zkPorter 采用 Guardians 作为验证者集,对比 DAC 来说安全性 / 去中心化程度稍高;而 DA-Specific 区块链的方案对比一组验证者集又要稍高。与此同时 Gas 花费也相应增加。当然这只是极粗略的比较。
右上角的方框内是链上数据可用性的方案,有着最高的安全性 / 去中心化程度和 Gas 花费。从方框内部来看,由于这三种方案的数据可用性都由以太坊主链提供,故它们具有等同的安全性 / 去中心化程度。纯 Rollup 方案对比单体化的以太坊来说显然 Gas 花费更低,而在引入 Proto-Danksharding 和 Danksharding 之后,数据可用性的成本将进一步得到降低。
注:本文讨论的「数据可用性」语境大多在以太坊之下,需要注意 Celestia 和 Polygon Avail 是通用化的方案,并不限于以太坊本身。
最后我们在表格中对上述方案做个总结。
在讨论完上述数据可用性问题之后,我们发现所有方案本质上是在三难困境的相互制约下做权衡取舍,而方案之间的区别在于权衡的「细粒度」不同。
从用户角度考虑,协议提供同时链上和链下数据可用性的选项是合理的。因为在不同的应用场景之下、或者不同的用户群体之间,用户对安全性和成本的敏感程度亦各不相同。
上文更多讨论了数据可用性层对以太坊和 Rollup 的支持。在跨链通信上,Polkadot 的中继链为其他平行链提供了数据可用性的原生安全保证;而 Cosmos IBC 依赖于轻客户端模型,故确保轻客户端能够验证源链和目标链的数据可用性至关重要。
模块化的好处在于可插拔和灵活性,能够按需为协议做适配:例如卸下以太坊的数据可用性包袱,同时确保安全和信任级别;或是在多链生态下提升轻客户端通信模型的安全级别,降低信任假设。不仅限于以太坊,数据可用性还可以在多链生态、甚至未来更多的应用场景下发挥作用。
我们认为:未来的 3 至 5 年内,区块链的架构必然会由单体化向模块化演变,各层呈现低耦合状态。未来可能出现 Rollup-as-a-Service(RaaS)、Data Availability-as-a-Service(DAaaS)等许多模块化组件的提供商,实现区块链体系结构的可组合性乐高。模块化区块链是支撑下一个周期的重要叙事之一。
其中,执行层的估值巨兽(即 Rollup)已经「四分天下」,后来者寥寥;共识层(即各个 Layer1)逐鹿中原,在 Aptos 和 Sui 等公链开始崭露头角后,公链竞争格局虽未尘埃落定,但其叙事已是新瓶装旧酒,难以寻找合理的投资机会。
而数据可用性层的价值仍然有待被发掘。
(Hyperbitcoinization) 如果你读过《比特币标准》这本书,或者在推特上关注了那些自由主义加密货币硬核玩家.
1900/1/1 0:00:00国内音乐行业市场在去年随着疫情过去和短视频平台兴起有所回暖,由中国传媒大学撰写的《2021 年中国音乐人报告》显示,2021 年音乐人的收入在较低收入和中等收入的占比有所降低.
1900/1/1 0:00:00趋势交易是一种常见的投资方法,简单的说就是顺势而为的投资。比如我们判断未来行情会上涨,那么在上涨之前就去加仓。但趋势却是一个很主观,没有客观定义与标准答案的事物.
1900/1/1 0:00:00NFT英文全称为Non-Fungible Token,翻译成中文就是:非同质化代币,具有不可分割、不可替代、独一无二等特点。在区块链上,数字加密货币分为原生币和代币两大类.
1900/1/1 0:00:00AMM自动做市机制下的交易为什么会产生价格滑点,并带来无偿损失呢?理论上,公开市场上的任何一笔交易都会对标的物价格带来影响,造成标的物价格变动,这种影响和变动或大或小,或直接或潜在.
1900/1/1 0:00:003月初以太坊的君士坦丁堡升级,其中包含了一条,将难度炸弹(Difficulty Bomb)往后推迟12个月的改进协议。有读者给白话区块链留言说,这句话每个字都认识,但就是没看懂这句话是什么意思.
1900/1/1 0:00:00