XRP 地址里有一部分余额不能直接转走,通常不是钱包冻结,而是 XRP Ledger(XRPL)的账户储备机制在起作用。地址要作为链上账户存在,必须保留基础储备;账户创建需计入储备的对象后,还会增加对象储备。钱包显示的是总余额,实际可发送金额往往要扣除储备和本次交易成本。
从“余额足够却发送失败”看 XRP 储备
假设一个地址收到 XRP 后,用户尝试把显示余额全部转出,钱包却提示可用余额不足。原因在于 XRPL 要求账户在共享账本中持有最低数量的 XRP,以限制垃圾账户和恶意数据造成的账本膨胀。这里的 XRP 不是交给平台保管,也不是普通意义上的锁仓,而是该地址维持链上状态所需的余额。
XRPL 是使用 XRP 处理和记录交易的去中心化区块链。想了解资产的基本资料,可查看XRP 币种信息;需要对照其他加密资产时,可进入数字货币资料库。
把地址余额拆成基础储备与对象储备
总储备的计算方式是:基础储备加上 OwnerCount 乘以对象储备增量。基础储备对应账户本身;OwnerCount 反映该账户拥有、且需要计入储备的账本对象数量。例如,信任线可能影响对象储备。按本次成稿时所据 XRPL 储备说明核对,新账户可用 1 XRP 的基础储备创建;对象储备增量会由网络参数决定,并可能经共识调整,因此不应把钱包旧页面或历史教程中的数值长期视为固定值。
还有一个容易影响计算的例外:仅以 1 XRP 基础储备创建的新账户,可以建立最初两条信任线而不增加储备;如果账户入账超过 1 XRP,最初两条信任线也会按正常规则收取储备。由此可见,只看信任线数量,不结合账户入账和链上状态,可能算错可用余额。
沿着 OwnerCount 查明哪部分暂时不能转
排查时先读取地址当前 XRP 余额、OwnerCount、reserve_base_xrp 和 reserve_inc_xrp,再按公式计算总储备,并预留交易成本。钱包若同时显示“余额”和“可用余额”,应以后者作为发送上限参考;不要直接用总余额减去一个长期记忆的固定数字,因为网络可通过共识调整储备参数。
当余额低于当前储备要求时,账户仍会存在,但不能继续向外发送 XRP,也不能创建会提高储备要求的新对象;只要还有足够 XRP 支付交易成本,仍可提交不触发这些限制的交易。之后接收足够 XRP,或储备要求下降,账户便可能重新高于门槛。
删除对象或账户后,储备怎样变化
对象减少时,OwnerCount 可能随之下降,相应储备空间便可释放,但具体结果应以交易执行后的链上状态为准。储备也并非完全静止:它可以用于支付交易成本,而交易成本会从发送地址余额中销毁,甚至让余额降到储备要求以下。若符合删除账户的条件,还可以通过删除账户取回部分 XRP;这不等于直接把当前总余额全部发送给另一地址。
原创文章,作者:eastbtc,如若转载,请注明出处:https://www.eastbtc.com/coins/29299.html