账户为什么要冻结 XLM:Stellar 的 base reserve 与拥堵费拍卖 图 1
账户为什么要冻结 XLM:Stellar 的 base reserve 与拥堵费拍卖 · 图 1

在 Stellar 上创建一个账户,链上会立刻”冻结”一部分 XLM;每添加一项资产信任、挂一个订单,冻结额再往上加一档。这些被锁定的币没有消失,也不能花,但会一直跟着账户走。理解这笔冻结额(base reserve)与另一条拍卖式的手续费规则,基本就能看懂 Stellar 经济模型的两根支柱。本文按官方开发者文档拆解它们各自防什么、怎么调整。

每个条目都占一个位:base reserve 的账本逻辑

Stellar 的账本是有限资源,网络给每类持久条目——账户本身、信任线、挂单、签名者、数据条目——都标了一档 base reserve。官方文档写明:一个账户至少保持两个 base reserve 才能存在,每个后续子条目再增加一档。官方 Lumens 页面当前的表述是每个 base reserve 等于 0.5 XLM,也就是说裸账户最少 1 XLM,每多挂一种资产再加 0.5 XLM。数字本身可以由验证者投票调整,但官方明确说这种情况几年一遇。被锁定的 XLM 不销毁、不付息,随时可以通过删除对应条目(撤销信任线、取消挂单)释放出来,逻辑上和 NEAR 的存储质押同一谱系:按占用冻结,可逆退还。

另一条官方明示的分工是:智能合约的数据不需要 base reserve,合约条目走的是按写入付租金的路线。两种状态模型——账户侧押金制、合约侧租金制——在同一条链上并存,核对时要先分清数据住在哪一侧。

费用侧:默认价加拍卖的拥堵阀门

机制示意

手续费这边是另一套逻辑。每操作的基础费下限为 100 stroops,一笔操作的最低账由它决定;stroop 是 XLM 的最小计价单位,一亿分之一。网络空闲时,实际操作费就等于这个下限。当交易需求超过单个账本容量时,网络进入拥堵定价模式:每个账本会淘汰报价最低的那部分操作,下一账本的基础费参考价随被拒绝的需求上调,直到供需重新平衡。官方术语表区分了两个概念——你愿意支付的费率,与最终真正生效的基础费——拥堵期两者不是一回事。

这套设计与以太坊的费用市场差异在于颗粒度:Stellar 调的是全网络统一参考价,不是每个区块各自竞价;用户加价不改变”先到先得”的一般次序,只是挤过当前门槛。对普通转账,默认费率通常就是实付费率;拥堵期钱包如果一直重发同样低价的交易,只会在被拒列表里排队。

冻结额机制防的是谁

假设没有最低余额,任何人都能批量创建空账户、注册垃圾资产名,把全网账本撑成垃圾场——账户创建费在 2015 年网络重启时曾低至千分之一个 XLM,账本随后被数十万空地址淹没,reserve 机制正是那次事故后的矫正。今天的 0.5 XLM 档位把”占一个坑”标出了真实机会成本:对正常用户几乎无感(余额本来就该大于这条线),对空投脚本和状态填充攻击则是乘法级的成本。

官方还提供赞助机制:另一个账户可以替你承担这些 reserve,被赞助账户甚至能以零余额创建。这也是不少应用把”帮用户垫付开户冻结额”写进新手流程的原因——机制允许,成本转嫁是产品选择而非协议义务。

普通用户核对什么

第一,钱包显示余额里有一部分”不可用”时,先数子条目:信任线、挂单、签名者各占一档,删掉自然释放,不需要联系客服。第二,动账户前算一下最低余额线:如果余额贴着 1 XLM 附近做转出,可能因跌破最低余额而失败,先留够 reserve 再转。第三,费用排查时区分两个问题——交易被拒是 fee 太低还是账本拥堵,拥堵期官方建议参考下一账本的参考价而不是固定值。

边界提醒:base reserve 与拥堵费参数是网络协议值,官方页面的”当前值”随时可能随投票改变,正文数字以官方文档核对时为准;本文仅为机制说明,不构成任何投资建议。