散列加密强字符串的字节是否会削弱其强度

时间:2011-12-15 15:20:56

标签: hash cryptography

我不确定这种方式是否会保留加密随机二进制字符串的强度。

我已经生成了一个随机二进制字符串,例如它是48字节,然后我使用sha384算法对其进行散列,这是否会削弱加密强度?

2 个答案:

答案 0 :(得分:2)

当然你松散的力量,因为SHA-384并不完美 - 它应该是,但没有。如上所述,没有用例,很难预测这会产生多大的差异。你不应该失去太多。

通常,我认为这是一个非常安全的操作。许多密钥派生方案使用类似于H(主密钥材料|计数器)的东西,然后在最后切掉不必要的字节。

但是,正如CodeInChaos评论的那样,这一切都取决于用例。

答案 1 :(得分:1)

SHA-384本质上是SHA-512 +截断。由于您的输入只有384位长,因此使用SHA-512对其进行散列将得到最多具有384位熵的结果。当现在进行截断阶段SHA-512-> SHA-384时,您(或消息摘要函数)可能最终剥离最多128位的熵。因此,在这种情况下,有可能通过额外的散列步骤来削弱它。