首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ethereum中的节点ID是什么?

Ethereum中的节点ID是什么?
EN

Ethereum用户
提问于 2016-02-09 03:36:59
回答 2查看 10K关注 0票数 24

Enode或Enode的定义是什么?它是用来做什么的,它是怎么做的?

EN

回答 2

Ethereum用户

回答已采纳

发布于 2016-02-09 10:16:22

扩展Hudson的回答:“十六进制节点ID是在URL的用户名部分编码的”

用户名部分是用于验证通信来自网络上特定节点的512位公钥。

更多关于使用RLPx协议的can 在这里找到

其中的主要部分:

节点发现和网络形成是通过类似kademlia的UDP实现的。与Kademlia的主要区别:

  • 数据包被签名
  • 节点ids是公钥。
  • 排除与DHT相关的特征。没有实现FIND_VALUE和存储数据包。
  • 异或距离度量基于sha3(nodeid)
票数 14
EN

Ethereum用户

发布于 2016-02-09 03:41:28

enode是一种以URI的形式描述虚设节点的方法。

十六进制节点ID是在URL的用户名部分中编码的,与主机之间用@符号分隔。主机名只能作为IP地址提供,不允许使用DNS域名。主机名部分中的端口是TCP侦听端口。如果TCP和UDP (发现)端口不同,则将UDP端口指定为查询参数"discport“。

在下面的示例中,节点URL描述具有IP地址10.3.58.6、TCP侦听端口30303和UDP发现端口30301的节点。

enode://6f8a80d14311c39f35f516fa664deaaaa13e85b2f7493f37f6144d86991ec012937307647bd3b9a82abe2974e1407241d54947bbb39763a4cac9f77166ad92a0@10.3.58.6:30303?discport=30301

节点发现协议使用enode uri方案,可以在客户机的bootnodes命令行选项中使用,也可以作为JSRE中suggestPeer(nodeURL)函数的参数使用。

关于enode URI的更多信息可以是在这里发现的,并在这个“连接到虚空”的Wiki条目中提到。

票数 22
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/1177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档