【问题标题】:Why the salt is 8 characters long? [duplicate]为什么盐是 8 个字符长? [复制]
【发布时间】:2018-10-19 17:03:20
【问题描述】:

为什么盐的长度不超过 8 ~ 16 个字符?

另外,为什么大多数情况下是在密码的前面或后面,而不是在不同的位置?

这是为了让断路器更难吗?还是没用?

【问题讨论】:

  • 你应该先阅读the wikipedia article。例如,它解释说,盐以明文形式存储,带有散列密码+盐。因此,没有必要让盐的长度超过"long enough",也不需要改变它的位置。根本没关系。请记住盐的用途是什么(防御字典攻击/彩虹表)。

标签: encryption cryptography salt


【解决方案1】:

因为更多的盐没有用处。

加盐的目的是防止某些并行攻击在合理的时间/内存和/或驱动器空间内起作用。 (你不能再有一个说 Hash A => Password A 的表,因为即使你有足够的磁盘空间来构造一个彩虹表,salt 也会使可能的条目数量超出可行性。你不能再散列一个潜在密码一次,然后将其与一堆散列进行比较,因为每个散列的盐很可能是不同的。)

16 个字符为您提供 10^16 到 96^16 倍的可能性,这已经符合“超出可行性”的定义。过了某个时间点,您只是增加了自己的存储需求而没有显着的好处。

【讨论】:

    【解决方案2】:

    8个字符的salt足以抵抗现实生活中任何可以想象的字典攻击,它使任何字典或彩虹表都无用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-05
      • 1970-01-01
      • 2014-04-10
      • 1970-01-01
      • 1970-01-01
      • 2021-05-04
      • 2012-11-13
      • 1970-01-01
      相关资源
      最近更新 更多