gpt4 book ai didi

PHP DHT 信息哈希列表?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:06:25 30 4
gpt4 key购买 nike

我想(通过 PHP)收集当前正在下载的 info_hashes 或搜索 DHT。

我见过 BTDigg 将 DHT 用于搜索引擎,我想做类似的事情。

此外,在获得哈希后,如何将哈希转换为种子文件以便获取标题等信息? (再次使用 PHP 通过 DHT)。

我先尝试研究 - Query DHT Server尝试通过 PHP 运行 DHT 查询,我尝试进行修改,但没有成功。我也试过 http://projects-deim.urv.cat/trac/p2pweb/browser/trunk/dht/dht_agg?rev=1但它给了我几个错误,经过多次修复后它仍然无法正常工作。

最佳答案

要实现 DHT 节点,您可能需要阅读 DHT 规范:

http://www.bittorrent.org/beps/bep_0005.html

它描述了消息格式。如果您不熟悉底层 DHT,您可能还需要阅读 kademlia 论文:

Kademlia: A Peer-to-peer Information System Based on the XOR Metric

在 DHT 上启动并运行后,您开始看到信息散列飞快地飞过,您需要实现一个 bittorrent 客户端。或者至少是为了建立对等连接并讨论 bittorrent 协议(protocol)的一个子集,这里描述了它:

http://www.bittorrent.org/beps/bep_0003.html

您通常只需要能够建立 TCP 连接和握手,就好像您什么都没有一样。然后,要下载元数据(或 .torrent 文件),您需要支持位于通用扩展协议(protocol)之上的 ut_metadata 扩展,如下所述:

http://www.bittorrent.org/beps/bep_0010.html

ut_metadata 扩展在此处描述:

http://www.bittorrent.org/beps/bep_0009.html

如果您拥有看到的散列元数据,那么您基本上应该已经设置好了。然后只需从 torrent 文件中提取和索引信息,例如名称、文件名、文件大小等(实际上,您最终只会得到 torrent 文件的信息词典,但这是重要的部分)。

鉴于这是一项相当多的工作,您可能想看看使用已经执行此操作的库,并以某种方式将它们拉入 php。例如,您可能想看看 libtorrent .

关于PHP DHT 信息哈希列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10066985/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com