1

这让我非常困惑。

最初的 Kademlia 提供像 sha1 这样的 160 位十六进制应该用于明显的原因:当搜索与 infohash 相关的对等点时,您只需搜索 nodeID,因为它们应该等同于与 sha1 infohash 相同的系统。

但读这个: http: //www.bittorrent.org/beps/bep_0005.html

idabcdefghi0123456789是:1) 大小的一半 2) 使用比标准十六进制编码更多的字符。

那么我错过了什么?

为什么节点ID是这样的?

4

1 回答 1

2

为了使示例中的原始二进制 node_id 可打印,
它被巧妙地选择为仅包含字母数字字符。
示例中的 node_id 实际上是:abcdefghij0123456789
如您所见,正如预期的那样,有 20 个字符 = 20 个字节 = 160 位。

abcdefghij0123456789十六进制编码是:0x6162636465666768696A30313233343536373839

于 2017-02-09T17:57:39.850 回答