【问题标题】:For DHT, what's the advantage of a 160-bit key over 128-bit?对于 DHT,160 位密钥与 128 位相比有什么优势?
【发布时间】:2017-06-26 03:57:12
【问题描述】:

维基百科告诉我分布式哈希表 (DHT) 通常使用 128 位或 160 位键空间。

128 位是巨大的。 1.7 x 10^28。
160 位更大。 7.3 x 10^47,大致是地球上/中的原子数。 (256 位可以让你知道存在的原子数量。)

如果 10^28 的键空间太小,您会在哈希表中存储什么?他们是不是因为可以做到这一点而只大了一步?

【问题讨论】:

  • 看看生日悖论:en.wikipedia.org/wiki/Birthday_problem。发生碰撞的概率比人们想象的要高得多。
  • @Henry,根据那篇文章中的表格,您需要在具有 128 位键空间的哈希表中拥有 2.2 x 10^19 项,然后才有 50% 的冲突机会。即使您只准备容忍 10^6 中的 1 个机会,您仍然需要插入 2.6 x 10^16 项才能达到该阈值。这是一个巨大的数字。
  • SHA1 为您提供 160 位,这让您有理由使用 160 位密钥,而无需考虑技术原因
  • 对于生日悖论,这并不重要;哈希表中期望重叠的存储桶可以使用树进行存储。 160 位密钥 DHT 是否使用开放寻址?
  • SHA1...好吧,很有意义。跳到 SHA-256 也没有多大意义,因为如果你已经有了一个更小的工具,那就太傻了。

标签: algorithm dht


【解决方案1】:

历史上 sha1 已用于值 -> 键映射,因此是 160 位。

但对于采用椭圆曲线加密技术且公钥与节点 ID 相同或需要超过 80 位抗冲突性的 DHT 来说,更大的尺寸可能更有意义。

另一方面,较小的尺寸只有在您需要挤出每个字节并且不太关心安全性(即您没有连接到互联网)时才有意义。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-04
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-28
    • 1970-01-01
    相关资源
    最近更新 更多