提交数据要先讲清楚交易长什么样
Celestia 上提交数据不是把字节直接塞进区块,而是发一笔专门的 blob 交易。官方文档把它的结构拆成两层:外层是一笔标准的 Cosmos SDK 交易,里面装 MsgPayForBlobs 这条消息;消息本体只描述数据的元信息与承诺,真正的数据作为一到多个 blob 挂在交易信封上。这个分层决定了很多计费细节——你付的费用既取决于数据本身有多大,也取决于这笔消息要跑过多少校验步骤。
正因为结构与普通转账不同,容量口径也要分开看。文档记下的界限是:从 v6 起各网络的最大交易尺寸为 8 MiB(8,388,608 字节),而且这个帽子扣在整笔交易上,包含 MsgPayForBlobs、全部 blob 和序列化开销,所以一条交易里能装的 blob 总量必然略小于这个数。具体小多少,取决于扣除 PFB 之后还剩多少份额、份额版本与排布规则,以及稀疏份额的第一个格子只有 478 字节、后续格子是 482 字节这一事实。方格侧的上限是另一本账:文档写明 Mocha 与主网当前的最大方格尺寸为 32 MiB,未来网络用更大的方格时,单笔可装的 blob 容量随之上升,但 8 MiB 的交易尺寸上限会变成真正卡住你的那一条。
费用从哪几段拼出来

PFB 的 gas 由两部分相加。第一部分是固定成本,文档给的默认值是 65,000 gas,用来覆盖签名验证、交易体积检查、账户读取这些落在计费函数之外的操作。第二部分是动态成本:先把每个 blob 的字节数换算成需要多少份额,再用份额数乘以每份额字节数,乘以每字节 gas 单价,最后再加上每个 blob 的一笔静态量。也就是说,两个总字节数相同但拆成不同条数的 blob,账不会完全一样。
需要留意的是单价本身不是永恒常数。文档明确点名 blob.GasPerBlobByte 与 auth.TxSizeCostPerByte 这两个参数可以通过治理机制调整,实际花费以链上当前的参数状态为准。任何拿旧截图估算新成本的做法,都可能因为一次参数投票而失效。
费用市场:一个按 gas 价排序的内存池
Celestia 的费用市场用的是标准的按 gas 价优先的内存池:出价高于内存池里其他交易的,会被验证者优先纳入。文档同时给出了三种估算路径。默认情况下,费用估算依赖你的节点所连接的那台共识节点;如果想换一个专门的服务来报价,可以用 --core.estimator.address 指定端点;如果你不愿接受任意高的价格,可以用 --max.gas.price 设上限,一旦估算价超过这个上限,交易干脆不提交——文档写的默认上限是最小 gas 价(0.2 TIA)的一百倍。
一个容易被误读的点:这里的优先级来自内存池排序,而不是一层强制的最低价格。文档记载,从 celestia-app v1.0.0 起,协议层面并不强制最低费用(这一点与以太坊的 EIP-1559 路线不同),改为每台跑内存池的共识节点用本地配置的 gas 价门槛来决定接不接受一笔交易——无论是用户直投还是邻居节点转发过来。这意味着同一条交易在不同节点面前的遭遇可能不一样:你从一台低门槛节点进的池,未必会被另一台高门槛节点收下。
不退还是这套账最实际的一条
对普通提交者来说,最需要记住的是:gas 不退还。文档的表述是,费用按一笔固定金额扣除,金额等于用户在交易里声明的 gas 上限乘以 gas 价。状态机不会为没用完的 gas 退款,所以估不准 gas 上限就等于自愿多付。反过来,由于用户往往直接声明 gas 价而不是先算出固定费用,系统内部是用总费用除以 gas 上限来反推出 gas 价的——上限填得虚高,即使实际执行没花那么多,扣的仍是按上限算出的那笔。
这套机制与以太坊 blob 市场的差别值得对照着读。以太坊侧的基础费由协议按块内 blob 用量自动调节,用户填的是手续费上限;Celestia 侧则把价格发现完全交给内存池竞价,节点用本地门槛守门,费用一次扣死。同一段数据在两边“到底贵在哪一段”因此完全不同:一边主要看协议算出的基础费与优先费,另一边看你自己填的上限、当时刻的市场报价,以及 blob 被拆成了几条。
核对成本时可以看的字段
想复核一笔提交到底花了多少,顺序可以是:先看回执里实际扣的费用,再对照交易里声明的 gas 上限与 gas 价,两者相乘应当等于扣款;如果不等,优先怀疑客户端在提交前改写了报价或估算端点。其次看 blob 的条数与各自字节数,按份额换算规则粗算动态成本,加上 65,000 固定成本,与声明上限比对——差距过大说明上限填得保守,这部分差额按上面的规则是不退的。最后看参数版本:如果治理动过每字节单价,同样的数据在新版本上会算出不同结果。
至于这一切的边界:本文描述的机制、默认值与参数名称都以 Celestia 官方文档当前记载为准,涉及治理可调参数时不假定其长期不变。数据发布了不等于永远检索得到,费用低也不等于可用性等级更高,这类判断要放到具体的数据可检索性与轻节点验证口径里另行核对。涉及实际资产支出的任何估算都不构成投资建议,也不代表对未来费率的预测。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。