Tendermint Networks中@符号前的参数含义是什么?
在Tendermint Networks中,@符号前的参数含义解析
嘿,这个问题问到点子上了!在Tendermint的P2P网络配置里,@符号前面的那串看起来像随机哈希的字符串,其实是节点的唯一标识符(Node ID)——相当于每个节点在网络里的专属“身份证号”。
核心作用
这个Node ID可不是随便生成的:
- 它是从节点的加密密钥对(具体是
priv_validator_key.json文件里的公钥)衍生出来的哈希值,具有唯一性和不可伪造性,能帮你的节点准确验证连接对象的身份,避免被恶意节点冒充。 - 结合后面的
IP:端口,就能在分布式网络里精准定位到目标节点,同时确保连接的是合法、可信的节点。
结合你的命令例子来看
你给出的命令片段:
tendermint node --p2p.persistent_peers "429fcf25974313b95673f58d77eacdd434402665@10.11.12.13:46656,96663a3dd0d7b9d17d4c8211b191af259621c693@10.11.12.14:46656"
这里的429fcf25974313b95673f58d77eacdd434402665和96663a3dd0d7b9d17d4c8211b191af259621c693就是两个目标节点的Node ID,后面的10.11.12.13:46656和10.11.12.14:46656是它们的网络地址。你的节点启动时,会通过这组信息去建立并维持和这两个节点的持久连接。
小补充:如何查看自己的Node ID?
如果需要获取自己节点的Node ID,直接在终端执行以下命令即可:
tendermint show-node-id
执行后输出的字符串就是你的节点专属ID,其他节点可以用这个ID+你的IP端口来添加你作为持久节点。
内容的提问来源于stack exchange,提问作者Russell Zhang
相关产品推荐
相关产品推荐

