3

所以我正在用 C++ 编写一个 Bittorrent 客户端,我可以与跟踪器通信,但是当我收到通知响应时,我的 IP 地址是我唯一得到的回报。在通过wireshark查看我的流量并将其与传输中同一跟踪器的流量进行比较后,我得出结论,我一定是错误地发送了torrent的信息散列。

所以,我把它作为我的测试种子(TPB AFK(对种子完全合法!))的信息散列发送:

99FEAE0A05C6A5DD9AF939FFCE5CA9B0D16F31B0

通过阅读网络上的其他一些帖子,我得到了我必须以某种方式对其进行编码的想法,并且它需要是 20 个字节(我愚蠢地没有意识到它不是以前......没有计算在内)。

所以必须有某种编码,我必须将此哈希输入,但它是什么?

4

1 回答 1

2

好的,那 40 个字符的字符串只有 20 个字节……所以发送 info_hash 的正确方法是:

0x99 0xFE 0xAE 0x0A 0x05 0xC6 0xA5 0xDD 0x9A 0xF9 0x39 0xFF 0xCE 0x5C 0xA9 0xB0 0xD1 0x6F 0x31 0xB0

于 2013-10-27T19:30:57.333 回答