首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么在hashcat中SHA-384吞吐量可能低于SHA-512吞吐量,并且更安全?

为什么在hashcat中SHA-384吞吐量可能低于SHA-512吞吐量,并且更安全?
EN

Cryptography用户
提问于 2019-11-07 08:18:55
回答 2查看 4K关注 0票数 6

我在互联网上找到了一个hashcat基准测试结果:桥猫结果

  • 沙三八四是17065.4 MH/s
  • 沙-512是17280.3 MH/s

为什么SHA-512花费更少的时间?沙-512更长,因此我认为它需要更多的时间和计算资源来计算哈希?

EN

回答 2

Cryptography用户

发布于 2019-11-07 08:27:34

计算中唯一的不同是初始值和输出大小。来自NIST FIPS 180-4

  1. 初始哈希值H^{(0)}应按Sec的规定设置。5.3.4;和
  2. 384位消息摘要是通过截断最终的散列值H ^{(N)}来获得的,其最左边的384位是:H_0^{(N)} \mathbin\|H_1^{(N)} \mathbin\|H_2^{(N)} \mathbin\|H_3^{(N)} \mathbin\|H_4^{(N)} \mathbin\| H_5^{(N)}

当将Inc._哈希_sha384.clInc._哈希_sha512.cl两种源代码进行比较时,人们可以看到,SHA-384实际上比SHA-512所做的工作要少。它不是编码的,只是用不同的初始值截断SHA-512。对于微小的速度差异,一个解释可以是矢量化,帮助SHA-512在最后的计算。

在密码保护的情况下,微小的差别并没有多大的区别。在密码散列方面,我们采用了专门设计的密码机制,如PBKDF2和Argon2,这是密码哈希竞赛的赢家。

在安全方面,SHA384对长度扩展攻击具有抵抗力,但SHA512没有。SHA384对长度扩展攻击具有128位的抵抗力,因为攻击者需要猜测128位才能执行攻击。这是由于截断。

不同的初始值提供域分离。对于域分离,\operatorname{SHA384}(m) \neq \operatorname{SHA512}(m)|_{384},其中|_{384}是截断。

在预图像、二次预图像和一般攻击中的碰撞抗性方面,我们都有;

\begin{array}{|c|c|c|c|}\hline & \text{pre-image resistance} & \text{2. pre-image resistance} & \text{collision resistance} \\\hline \operatorname{SHA-384} & \mathcal{O}(2^{384}) & \mathcal{O}(2^{384}) & \mathcal{O}(2^{192}) \\\hline \operatorname{SHA-512} & \mathcal{O}(2^{512}) & \mathcal{O}(2^{512}) & \mathcal{O}(2^{256}) \\\hline \end{array}

由于通用的\mathcal{O}(\sqrt{2^{n}}) = \mathcal{O}(2^{n/2}) ,其抗碰撞性能为生日袭击

因此,SHA-512在预成像、二次预成像和抗碰撞方面更好.沙-512‘S唯一的弱点是它容易出现长度扩展攻击

票数 19
EN

Cryptography用户

发布于 2019-11-08 18:41:43

为什么SHA-512花费更少的时间?

不是因为密码相关的原因。只有对代码(源,也许是对象)的检查才能看出。本质上,SHA-384是具有不同起始常量的SHA-512,然后删除结果的128位。一种可能是将SHA-512的代码作为子程序使用在单独的代码中。这也可能是一个代码对齐问题,一个分支采取了与没有采取.不管是什么原因,这在crypto.SE上都是个离题的话题。

沙512更长,因此我认为它需要更多的时间和计算资源来计算散列。

是的,SHA-512更长;但是不,它不需要更多的时间,因为它在内部运行一个512位的结果,最终会被截断。不计算128位几乎没有什么可节省的:大约80位中的1/4 (即0.32%),以及两个64位的加载项( 0.4%)。

票数 3
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/75575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档