首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP DHT info_hash列表?

PHP DHT info_hash列表?
EN

Stack Overflow用户
提问于 2012-04-09 06:11:13
回答 1查看 1.6K关注 0票数 5

我想(通过PHP)收集当前正在下载的info_hashes或搜索分布式哈希表。

我见过使用分布式哈希表作为搜索引擎的BTDigg,我也想做类似的事情。

另外,在我得到哈希之后,我如何将哈希转换成torrent,这样我就可以获得标题等信息了?(再次使用PHP通过分布式哈希表)。

我首先尝试研究- Query DHT Server尝试通过PHP运行分布式哈希表查询,我尝试进行修改,但我没有运气。我也尝试过http://projects-deim.urv.cat/trac/p2pweb/browser/trunk/dht/dht_agg?rev=1,但它给了我几个错误,经过多次修复后,它仍然不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-12 01:02:41

要实现分布式哈希表节点,您可能需要阅读分布式哈希表规范:

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

它描述了消息的格式。如果你不熟悉底层的分布式哈希表,你可能还需要阅读kademlia的论文:

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

一旦你在分布式哈希表上启动并运行,你开始看到信息散列飞逝,你需要实现一个bittorrent客户端。或者至少是为了建立对等连接并与bittorrent协议的子集进行对话的一个基本框架,这里对此进行了描述:

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

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

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

ut_metadata扩展说明如下:

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

如果你有你看到的哈希元数据,你基本上应该被设置。然后,只需从torrent文件中提取和索引信息,如名称、文件名、文件大小等(实际上您最终得到的只是torrent文件的信息字典,但这是重要的部分)。

考虑到所有这些都是相当多的工作,您可能想要考虑使用已经完成这项工作的库,并以某种方式将它们引入到php中。例如,你可能想看看libtorrent

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10066985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档