3

假设出于某种原因我想使用 SHA512 作为我的散列函数。假设我也有它的源代码。

SHA512 包含常量表。如果我在此表中到处更改几个值(例如 5)怎么办?

这将如何影响散列函数的可靠性和对攻击的“抵抗力”(它不再是标准算法,攻击者可能不知道轮值已更改)?

4

1 回答 1

3

SHA512 中的轮常数是随机选择的。(更准确地说,它们是前 64 个素数的立方根的小数部分——这种方法被用来表明这些数字没有隐藏漏洞;具体方法对安全证明并不重要。 )

除非您选择真正退化的值,例如零,否则更改它们应该不会影响算法的安全性。

于 2012-12-20T07:26:25.660 回答