退出注册表
ZooBC 注册表中的席位以三种方式之一终止:所有者移除节点;节点的参与分数降到零时,链将其除名;或者持有节点密钥的人认领质押。无论哪种情况,质押都会回到某个账户,要么全额,要么扣除十分之一。质押始终是一笔保证金,而不是费用,而规则确保退出不能被用来逃避罚金。
移除节点
所有者用由所有者密钥签名的 RemoveNodeRegistration(类型 514)移除节点。席位在该区块中关闭。随后,质押(扣除移除交易本身的手续费)在 40,320 个区块的冷却期内被保留,按每 15 秒一个区块计算为 7 天。在冷却期结束的那个区块中,链会自动将其记入所有者的账户;不需要第二笔交易。
退还多少取决于节点离开时的状态:
- 健康的节点,即自其上一个自己的区块以来没有跳过任何轮次的节点,可以拿回全部质押。
- 处于缺席状态(它跳过了一个轮次,此后尚未出块)或被暂停的节点会损失 10%。这也包括只跳过了一个轮次、在其下一个区块之前就离开的诚实节点,因此想拿回全部质押的运营者,应先让节点产出其下一个区块,再将其移除。
冷却期让质押在节点离开期间仍处于风险之中,它与 10% 规则一起,使退出无法成为逃避罚金的途径。
除名
停止产出自己区块的已注册节点不会立即被除名,而是要走过一条渐进的道路(见 错过轮次、暂停与除名):
- 从它跳过的第一个轮次起,它处于缺席状态:没有任何收益,其参与分数每个分数单位下降 5 分(满分 100 分),均匀分摊到该单位的各个区块上。
- 连续第四次错过轮次时,它被暂停并退出出块者抽签,同时仍处于缺席状态。
- 当分数降到零时,它被除名:90% 的质押立即退还给所有者,10% 进入长效池。
在节点数少于 2,880 个的网络上,一个分数单位为 12 小时,因此沉默的节点能维持的时间为:
| 陷入沉默时的分数 | 距被除名的时间 |
|---|---|
| 100% | 约 10 天 |
| 60% | 约 6 天 |
| 20%(起始分数) | 约 2 天 |
在更大的网络上,单位随节点数增长,因此这条路更长。短暂的故障只会损失收入和部分分数,而不会失去席位。如果除名后剩余的活跃节点会少于三个,链也绝不会除名该节点;当多个节点同时面临除名时,由每个节点最后一次被看到的时间决定先保留哪一个。
凭节点密钥认领
ClaimNodeRegistration(类型 770)让任何持有节点密钥的人把质押认领到自己控制的账户。它是为失去所有者账户访问权的所有者而设的,并附带一份由节点密钥签名的所有权证明。所有者本人的认领按移除处理:同样有 7 天的冷却期;如果节点离开时处于缺席或被暂停状态,同样有 10% 进入长效池。仅凭节点密钥、从任何其他账户发出的认领,则先公告,在 40,320 个区块(7 天)之后支付,除非所有者先移除了节点;如果节点届时处于缺席状态,10% 进入长效池(见 节点的密钥)。失去所有者密钥的所有者只能从另一个账户发起认领,因此这样的认领同样要等待这 40,320 个区块。
面临风险的 10%
| 事件 | 退还给所有者 |
|---|---|
| 移除健康节点 | 100%,7 天后 |
| 在缺席或被暂停时移除 | 90%,7 天后 |
| 分数归零时被除名 | 90%,立即 |
| 获得准入前从队列中撤回 | 90% |
| 因缺勤被移出队列 | 90%,立即 |
这 10% 从不销毁。它进入长效池,长效池通过 coinbase 抽奖支付给正在工作的节点(见 ZBC 从不销毁)。队列中的情况在 队列 中说明。相比之下,增加质押只需支付该交易的手续费。
重新加入
席位已被删除的节点密钥可以再次注册。它会开始一条全新的队列记录,不继承任何错过的轮次,并像任何新加入者一样在队列中等待(见 注册节点)。