如何成为一个 Validator 并加入到 Atlas 网络中[高级]
如何成为新的 validator 高级篇
为了让您的资产更安全,我们需要您设置一些必要的身份识别参数才能成为 validator 。我们也设置了相应的阈值,以便筛选那些真正想为链做出贡献的人。 当然,我们会给这些人相应的奖励。 以下步骤视为您的第一次操作,因为您只需执行一次以下操作即可成为 validator 。除非您注销验证器或取消 相应的操作,否则您无需执行第二次操作,以免浪费您的 gas 费。
第1步:创建账号
在这一步中,您需要将您的身份信息存储到相应的管理合约中,该合约将管理您的账户、密钥和元数据。 此步骤的目的是通过授权用于签名证明、投票、验证替代密钥来确保锁定的 MAPO 更加安全。通过 这样做,您可以在保持访问存储您锁定的 MAPO 的密钥的同时继续参与协议。 您需要 createAccount 命令来执行上述操作,更多关于 createAccount 命令的详细信息请参阅这里。
第2步:授杈
授权一个地址代表账号签名共识消息。这个授权地址称为 signer(签名人)。正如他的名字一样,他只负责签名,你的奖 励不会发放给 signer,而是发放给上一步创建的账户,
第3步:锁定 MAP
我们设置成为 validator 的阈值是锁定 1,000,000 MAPO 到相应的管理智能合约中。 这部分锁定的 MAPO 将用于以后的惩罚,这也是当选的条件之一。 您需要 LockedMAP 命令来执行上述操作,更多关于 LockedMAP 命令的详细信息请参这里。
第4步: validator 注册
此步骤是注册成为新 validator 的关键步骤。 您需要 register 命令来执行上述操作,更多关于register 命令的详细信息请参阅这里。 到这一步,您将成功注册为 validator 。接下来,您可以尝试为自己投票。如何投票请参阅这里。
第5步:投票
validator 必须至少拥有总票数的 0.001 比例才能考虑参加选举。所以 validator 不能没有选票。 我们可以使用我们的 validator 账户为自己投票,也可以让其他 validator 或投票者为自己投票。 我们在第了步中锁定了 1,000,000 MAP,现在为自己投票是一个明智的决定
示例
启动你的节点
在启动节点之前你需要先构建 atlas,如何构建图集请参阅这里
你需要准备两个 keystore,一个用于质押的称为 account,一个用于参与共识签名区块的 signer。
如果希望 atlas 节点在后台运行而不挂起,可以使用nohup和&的组合,或者 screen 之类的工具。下面我们将使用 screen 进行演示
account.json:account 的 keystore 文件 signer.json:signer 的 keystore 文件
--miner.validator :指定 signer 的地址 --port 30321:确保端口在防火墙上打开
节点启动后会通过内置的引导节点连接到网络,并同步区块数据。
生成 ECDSA 签名
生成一个由 signer 账号签署的 ECDSA 签名,该 signer 账号签署了 validator 账号
生成证明
使用 signer 私钥生成证明。
创建账号
使用签名授权
使用 signer 签署的 ECDSA 签名 (0x59dff185...32f0d700) 进行授权
signer 账号:0x98efa292822eb7b3045c491e8ae4e82b3b1ac005 signer 私钥:8df920b696ef3f5fdcf01624405ea8236b2b4907766ad61d42ce877df05f8bca
锁定 MAPO
使用证明注册 validator
通过使用 signer 的私钥生成的证明进行注册 validator。
验证注册
至此我们已经完成了 validator 的注册步骤,现在我们来验证一下是否成为了 validator。
投票
投票数不能大于锁定票数。
现在我们来给 validator 投票,投票的命令如下:
验证投票
现在,让我们验证投票是否有效。
从结果来看,我已经成功给自己投票了,但是还不够。我们需要在下一个 epoch 中 调用 RPC 来最终确定我们是否被选为可以参与区块生成的验证者,如下所示:
Last updated