这让我很困惑。
最初的Kademlia提供了160bit hex就像sha1一样,原因很明显: 在搜索与infohash相关的对等体时,您只需搜索nodeID,因为它们应与sha1 infohash相同。
但是读到这个: http://www.bittorrent.org/beps/bep_0005.html
id是abcdefghi0123456789
,它是:
1)一半大小
2)使用更多字符,然后使用标准十六进制编码。
那么我错过了什么?
为什么节点ID是这样的?
答案 0 :(得分:2)
要使示例中的原始二进制node_id可打印,
巧妙地选择它只包含字母数字字符
示例中的node_id实际上是:abcdefghij0123456789
如您所见,有20个字符= 20个字节= 160位如预期的那样。
abcdefghij0123456789
十六进制编码为:0x6162636465666768696A30313233343536373839