这对我来说很奇怪,因为有很多资源说,SHA-512和SHA-384的初始化值是素数平方根的前64位。对于SHA-256和SHA-224,使用这些值的32个LSB或MSB。
但是这个问题出现在我的脑海里,那SHA-512/224呢?0x8C3D37C819544DA2和其他人究竟是如何计算的?我找了很多,但讽刺的是,我没有运气。
那么,这些是如何计算的呢?
发布于 2016-05-03 08:25:22
这些都是使用"SHA-512/t生成函数“计算的,如FIPS-180 (pdf,参见5.3.6)所描述的安全哈希标准。
该过程首先修改普通的SHA-512 IV,然后计算描述所使用的截断模式的字符串的散列,并将其用作IV。这些IVs本质上只是预定义的哈希输出,所以没有任何特别好的数字。
这样做的原因是允许在512以下任意截断长度( 384除外,它有自己先前定义的散列)。
https://crypto.stackexchange.com/questions/35023
复制相似问题