首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算并行散列的安全性问题?

计算并行散列的安全性问题?
EN

Cryptography用户
提问于 2019-07-16 20:00:23
回答 1查看 117关注 0票数 3

像SHA-256这样的大多数散列算法的一个问题是它本身是串行的。不能有效地使用SIMD并行单个SHA-256计算。

但是,您可以高效地并行计算多个SHA-256散列,因为您可以将每个算法保持在SIMD寄存器的一个车道上。

以SSE为例:每个寄存器有四个32位的通道。并行计算SHA-256四次是有意义的。我们可以定义一种新的哈希算法来计算单个文件的哈希,将输入分割成四块,计算四块(并行)的散列,然后通过散列最后四个子散列来生成最终结果。显然,这将是一个新的哈希函数,不匹配正常的SHA-256。

这种设计是否存在安全问题,而正常的哈希算法不存在呢?

EN

回答 1

Cryptography用户

回答已采纳

发布于 2019-07-16 20:47:33

这种设计是否存在安全问题,而正常的哈希算法不存在呢?

至少不是为了防撞。

假设您可以基于哈希函数H_p为复合构造H生成一个冲突。然后就会有两个输入x\neq x',比如H_p(x)=H_p(x')。然后,要么在最后的哈希调用上出现冲突,然后我们可以按照H_p的描述重构相关的输入。或者,最后调用的所有输入在x,x'和不同的切片之间是相等的,然后在H中产生冲突,我们可以重构冲突。

因此,对于H_p来说,每一次碰撞都意味着H会发生冲突,但是由于我们假设H具有抗碰撞能力,所以对于H_p来说并不存在有效的冲突。

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

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

复制
相关文章

相似问题

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