ZooBC 维基
运行节点

注册节点

注册这一步,把一个只跟随链的节点变成席位的候选者。所有者发送一笔交易,写明节点密钥、锁定一笔质押,并证明所有者与节点密钥相互归属。然后节点加入公开队列。它只有在获得准入后才会出块。

三个步骤:用节点密钥、质押和证明注册;在按质押乘以等待时间排序的公开队列中等待;逐个节点获准进入席位环
三个步骤:用节点密钥、质押和证明注册;在按质押乘以等待时间排序的公开队列中等待;逐个节点获准进入席位环

注册交易

NodeRegistration(类型 2)携带节点密钥、所有者账户、质押和所有权证明。所有者像签署其他任何交易一样签署它。质押和手续费从所有者的账户中扣除;最低手续费是 0.025 ZBC(2,500,000 个原子单位)的基础操作费,加上交易字节的费用(见 手续费)。

没有人审核运营者,没有硬件测试,也没有审批步骤。唯一的检查就是每个节点都以相同方式执行的规则。

所有权证明

这份证明把一把节点密钥绑定到一个所有者。它是一条由节点密钥签名的消息,对于普通的 ZBC_ 所有者,其格式如下:

字段字节数
所有者账户类型4
所有者密钥32
一个近期区块的哈希32
该区块的高度4
节点密钥的 Ed25519 签名64

前 72 个字节按原样签名,不先做哈希,因此整个证明为 136 个字节。每个节点检查四件事:

  1. 签名能用节点密钥验证;
  2. 消息中的账户与交易的发送者逐字节完全一致;
  3. 该区块以该哈希存在于检查节点自己的链上;
  4. 该区块的年龄最多为 720 个区块(3 小时)。

由于证明写明了一个近期区块,它既不能提前很久准备,也不能在之后重复使用。增加质押和认领节点时也需要同样的证明,而席位转移到新的节点密钥时,由新密钥签署一份(见 节点的密钥)。

由所有者地址、近期区块哈希和高度组成的消息条,由节点密钥签名,嵌在由所有者密钥签名的注册交易中,旁边是每个节点所做的四项检查
由所有者地址、近期区块哈希和高度组成的消息条,由节点密钥签名,嵌在由所有者密钥签名的注册交易中,旁边是每个节点所做的四项检查

锁定多少

节点进入队列所需的最低质押取以下两个值中的较大者:

  • 队列最低额,在 mainnet 上起始为 100 ZBC。它是席位投票决定的价格之一(见 价格投票):取值范围从一个原子单位到 250 ZBC,每个快照周期最多变动一次,每次投票最多上调 20% 或下调至一半。
  • 已排队节点质押中位数的一半,它随需求变化。

这一检查只在入队时进行。最低额上调时,已在等待的节点保留其位置。任何人都可以锁定超过最低额的质押以在队列中前移,队列按质押乘以等待时间排序;排队节点也可以在之后增加质押,同时保留已积累的等待时间(见 队列)。

注册之后

完成注册后,节点处于排队状态。它还没有参与分数,并且必须每天表明一次自己在线(见 队列)。当准入计时器轮到它时,它的状态变为已注册,并获得 20% 的默认分数(见 准入节奏),在成熟后开始获得收益(见 成熟与收益)。

在获得准入之前撤回节点要付出其质押的 10%(见 退出注册表)。席位已被删除的节点密钥可以再次注册;它会开始一条全新的队列记录,不从过去继承任何错过的轮次。

另见