【问题标题】:Enumerating Mainline DHT枚举主线 DHT
【发布时间】:2021-10-01 05:24:32
【问题描述】:

我试图理解为什么从历史上看,DHT(分布式哈希表)是用于分散式 p2p 网络的好系统。

从效率的角度来看:让一堆节点知道每个节点是如何到达的,而无需在它们之间进行复杂的通信(在主线 DHT 的情况下使用 XOR 距离),这是一种绝妙的方式。

从匿名的角度来看,我认为情况并非如此:我想知道是否可以枚举 DHT 的节点,以及防止这种发现是否是 DHT 甚至应该解决的问题解决。

例如:想象一个有 100 个节点的 DHT。凭借 DHT 的设计(至少 Mainline DHT),一个节点会(如果我错了,请纠正我):

  • 知道资源 X 在节点 Y 中
  • 也知道如何到达节点 Y

我知道 DHT 爬虫(如 https://github.com/boramalper/magnetico)能够枚举所有节点。

我的推理是正确的,还是我误解了攻击向量?

非常感谢

【问题讨论】:

  • “我可以使用 DHT 爬虫”? “我想知道是否可以枚举 DHT 的节点”-您是指节点(即 IP 地址)还是其中的值(信息哈希)? “或者我误解了攻击向量” - 哪种威胁模型下的攻击?能够跟踪网络上的超链接是一种攻击吗?
  • 抱歉错字:我只是想知道一个节点(任何节点)在进入 DHT 后是否有能力知道所有其他 DHT 节点的 IP 地址

标签: network-programming p2p bittorrent dht anonymity


【解决方案1】:

Bittorrent 不会尝试隐藏任何 swarm 成员的 IP 地址,除此之外,一些跟踪器会公开 API,这些 API 允许获取所有 infohash 的列表,然后依次获取每个 infohash 的所有 IP。因此,从本质上讲,这组 bittorrent 对等点大多是公开的。 DHT 添加了另一种获取此列表的方法。

这不是 bittorrent DHT 独有的,其他 p2p 网络也有类似的属性。

另外请注意,参与 DHT 与参与任何特定的洪流不同。一个节点可以简单地作为一个纯 DHT 节点运行,而无需附加任何 torrent 客户端。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多