ERC-8179 Blob 空间分段:一条 128 KiB 的数据块怎么切给多个协议共用
写铭文的用户熟悉一个感受:数据往以太坊写一次,账单主要不是执行 gas,而是数据可用性费用。EIP-4844 引入 blob 后成本大幅下降,但一个结构性浪费被 ERC-8179(Blob Space Segments)的提案者点名:一条 blob 有 128 KiB、4096 个字段元素,而标准引用的对 26 个 rollup 的六个月实证研究显示分布严重两极——大 rollup 接近填满,小项目的使用率不足百分之五,整块付费、大片闲置。按以太坊 ercs 仓库的记录,这份提案状态为 Draft,创建于 2026 年 2 月 8 日。
一个函数一个事件的极简设计
整个标准的链上面只有一件事:declareBlobSegment 发出 BlobSegmentDeclared 事件,把半开区间——从 startFE 起、到 endFE 止——绑定到某条 blob 的版本化哈希上。批量版 declareBlobSegments 一次声明多段;getSegments 与 segmentCount 只是便利读取。最刻意的设计是零存储:事件不进任何状态槽,纯日志。标准给出的效果是声明成本约为有状态方案七分之一——声明只是登记”我在用哪些字段元素”,为此付一笔永久的状态费并不划算。
半开区间加版本化哈希这对组合格式值得解释。半开区间让相邻两段天然不重叠,一个段结束位置就是下一段起点,边界无歧义;版本化哈希则唯一钉住”哪一条 blob”,索引器不需要猜。标准明确它只覆盖声明这一层——blob 怎么组装、费用怎么分、区间怎么谈价都在范围之外,各项目可以继续自行发明市场机制,但至少大家用同一种方言宣布自己占用了哪段空间。

为什么此前各家自建、为什么值得统一
提案的动机部分写得很直接:共享 blob 空间的项目此前各自发明专有事件、自建注册表、自写索引逻辑,工具完全碎片化。共享的前提是两个原语——占用声明,以及跟踪声明的链下索引器。前者是自然的标准化对象:一个全网索引器都能监听的统一事件签名,比一百个私有方案多得多。对生态的现实收益按标准引用的研究口径是数据可用性成本可省八到九成;提案也诚实补了一句,PeerDAS 等升级会抬高 blob 吞吐、摊薄单块成本,成本压力下降会降低共享动机,但不会消除占用不均衡的浪费。
铭文与用户视角的两点关联
读一笔共享数据的验证路径
给一个只读过普通交易的用户画一遍流程。某协议发了一笔带 blob 的交易,你在 blob 浏览器里看到交易挂出一个版本化哈希,想知道其中哪些字节属于谁:过滤 BlobSegmentDeclared 事件,找到挂在这个哈希下的全部声明,每条给出 startFE 与 endFE 两个数字——字段元素按半开区间划界,比如一条声明写 0 到 2048,意思就是这条 blob 前半段归声明者,后半段留给别人,相邻声明的边界正好首尾相接,不重叠也不缝隙。定位到区间后再还原内容:blob 的原始数据以 BLS 模数的域元素编码,每个字段元素丢掉最高位后装 31 字节有效载荷,解码器按区间起止换算字节偏移,取出该协议的负载再按其私有格式解析。这套流程里链上部分全部标准化,剩下唯一的信任点在协议自己的负载编码上——同一个区间塞的是铭文数据、命名空间证明还是压缩批片段,事件不解释,各索引器也不保证互通。对成本敏感的小项目用户,值得记住的因果链是:声明事件便宜到只花一次日志的量级,共享方没有理由不声明;反过来,一个从不发分段声明却宣称共享了 blob 的项目,要么在用私有约定,要么在夸大其词。Draft 接口可能调整,以合约暴露的事件签名为准。
第一,铭文与轻量协议的写入成本是 blob 共享最直接的受益场景:写少量数据的协议不必再为一整块容量买单,理论上单条铭文的数据费有下行空间——具体多少取决于共享层的产品与费率,标准本身不含定价。第二,读一笔共享 blob 交易时的验证姿势变了:过去要判断某段数据在哪,靠各家私有约定;现在可以先查 BlobSegmentDeclared 事件拿区间,再到对应区间解码。对只想理解账单的用户,记住这个结构即可——一条 blob 是房东的整层楼,分段声明是租约上的房间号,而 ERC-8179 只是把租约格式统一成一张所有人都会读的纸。本文为机制说明,不构成任何投资建议。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。