根据这个 DefCon 演讲Crawling BitTorrent DHTs for Fun,即使所有其他 Torrent 站点及其备份都被对手关闭,BitTorrent DHT 节点也可以在一夜之间从头开始构建一个 torrent 站点。
在 kademlia 中,peer 从 torrent 站点学习 infohash,为每个 torrent 索引磁力链接。对等点发出get_peers
请求以获取当前正在下载和播种种子的对等点列表。节点 ID最接近 infohash的 dht 节点将元数据返回给查询节点。
无论如何,我需要 infohash 来查询同行。那么,如果一个人没有 infohash,如何在一夜之间建立一个 torrent 网站呢?我认为唯一可能的方法是详尽的密钥搜索。必须随机生成160-bit
infohash 并开始查询对等点,但这需要很长时间。
kademlia 中是否存在任何现有的远程过程调用get_infohash
,例如或get_metadata
允许 dht 节点查询相邻节点的 infohash,因为这是直接从 dht 节点学习 infohash 的唯一方法。