作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
双重哈希肯定可以比仅一层哈希提供更高的安全性,但这是否一定意味着它更具有抗碰撞性?这个问题以更数学的形式:如果 H 是一个抗碰撞哈希函数,那么对于某些 x 来说 H(H(x)) 是否仍然具有抗碰撞能力?
最佳答案
事实上,由于内部 H 的输出有限,因此抗碰撞性可能更差。
例如,采用从{0,1}n→{0,1}n映射的函数H。 (我们将 x 限制为 {0,1}n 以使其更易于查看。)假设有 a、b 来自 {0,1}n 和 c = H(a) = H(b) 。这意味着H(c) = H(H(a)) = H(H(b))。当你在第一次转换中发生碰撞时,你无法取消它。
如果{0,1}n中没有发生碰撞,则第二个转换将以相同的方式执行。
由于我们通常将哈希函数称为 {0,1}* → {0,1}n,因此必然有第一次转换和第二次转换中的冲突可能会使情况变得更糟。
关于hash - 双散列是否具有抗碰撞性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27256117/
我是一名优秀的程序员,十分优秀!