账户租金与清理
每个持有 ZBC 的 ZooBC 账户每个周期都要支付一笔少量的固定租金:在 mainnet 上,按起始价格为每 30 天 0.01 ZBC。只要账户存在,每个节点都会把它保存在自己的状态中,而租金最终会清除那些无人使用的账户。余额不足以支付租金的账户会被清理,其最后的零头进入长效池。
为什么账户要付租金
区块链的状态是共享的:每个节点都存储每一个账户、余额和记录。为这部分空间收费,可以防止链被废弃账户和垃圾账户塞满,因此付租金不是可选的。租金也不是利息:没有人因持有币而赚取它,它也不会有任何部分归 ZooBC Foundation。它归保存状态的节点所有。
如何收取
- 价格。 在 mainnet 上,每 172,800 个区块(一个 30 天的快照周期)0.01 ZBC(1,000,000 个原子单位)。席位可以对价格投票(价格投票)。
- 计时。 租金计时从账户第一次收到正余额时开始,第一笔租金在一个周期之后到期。
- 无需交易。 链在到期高度自行扣取租金。因此它显示在账户的资金变动
/api/v1/accounts/<address>/movements中,而不在其交易之中。 - 去向。 租金进入长效池,长效池在每个区块中向节点支付一部分(资金池)。
- 负载。 一个区块最多向 2,000 个账户收取租金;其余的等待下一个区块。
要么付租金,要么被清理
在到期高度,链把余额与租金相比较:
- 余额足以支付租金: 租金被支付,下一笔租金在一个周期之后到期。
- 余额少于租金: 账户被清理。其余额、nonce(交易计数器)和租金计时归零,分账策略被清除,组账户被解散。剩余的零头进入长效池。
账户永远不会负债,也没有人替它支付租金。如果被清理的地址再次收到 ZBC,它就重新开始,有新的租金计时和新的 nonce。密钥丢失的账户也会以同样的方式随着时间离开状态,不会有任何 ZBC 因此损失(ZBC 从不销毁)。
谁付,谁不付
- 账户组支付基础租金,外加其组记录的存储租金。其成员不付租金,因为他们的资金存放在组地址上(账户组)。
- 长效池和存储池免交租金。
无论余额多少,账户租金对每个账户都是同一个固定金额。链上保存的其他内容各自支付租金:数据集和文件(数据集、链上文件(DFS)、去中心化存储池)、保存更久的交易(付费保存数据(存续))、代币(代币维护费(存续))、市场(市场与订单)以及托管(托管)。
对价格投票
租金周期跟随快照周期。席位可以投票把价格降到低至一个原子单位,每个周期最多减半,这样,即使 ZBC 升值,保有一个账户的实际成本也不必变得昂贵。任何投票都不能把它提高到每个周期 10 ZBC 以上(价格投票)。
清理账户与修剪历史不是一回事:节点也会在一段时间后丢弃旧区块和旧交易,详见 历史修剪。