Torrent 跟踪器对每个请求都使用相同的对等 ID 进行回复?

发布于 2024-10-09 18:45:04 字数 375 浏览 7 评论 0原文

我正在编写一个 Java 应用程序来查看 torrent 文件中列出的跟踪器。

我发送以下内容:

http://pow7.com/announce?info_hash=%3f%99%79%31%73%27%9e%be%1d%d2%cd%5f%af%98%7c%17%5f%43%89%f3&peer_id=-jT1000-122843C6A4B0&port=6881&downloaded=0&left=0

但无论我发送什么 info_hash ,我要么得到相同的对等点 ip 地址(74.253.253.31:6757),要么收到错误。

有什么想法为什么会发生这种情况吗?

此致, TX

I'm writing a Java app to look at the trackers listed in a torrent file.

I send the following:

http://pow7.com/announce?info_hash=%3f%99%79%31%73%27%9e%be%1d%d2%cd%5f%af%98%7c%17%5f%43%89%f3&peer_id=-jT1000-122843C6A4B0&port=6881&downloaded=0&left=0

But it doesn't matter what info_hash I send I either get the same peers ip address back (74.253.253.31:6757) or an error.

Any ideas why this happens?

Best regards,
TX

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

沩ん囻菔务 2024-10-16 18:45:04

好吧,我想我找到了问题的答案:
需要根据 info 键的值生成 SHA1 哈希值。我获取从 d (包括,“info”一词之后的下一个字节)到信息映射的最后一个 e (包括)的所有字节。

因此,这将是下面代码片段的粗体部分的 SHA1:

...:info d5:filesld6:...[many bytes]...e 9:...
(没有 d 前面和 e 之后的空格)

然后我简单地转换 MessageDigest 返回的字节数组,并为每个十六进制 2 位数字对插入 % 。例如:

%70%47%8F...[剪断]...%13%6F%6C

Ok, I think I found the answer to my question:
One needs to generate a SHA1 hash from the value of the info key. I take all the bytes from d (included, next byte after the word "info") to the last e of the info map (included).

Thus is will be SHA1 of the bold part of the snippet below:

...:info d5:filesld6:...[many bytes]...e 9:...
(With out the spaces in front of d and after e)

Then I simple convert the byte array returned by MessageDigest and insert % for every hex 2 digit pair. E.g.:

%70%47%8F...[snip]...%13%6F%6C

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文