11、CRUSH哈希函数的密码分析

CRUSH哈希函数的密码分析

1. 引言

在哈希函数设计中,Merkle - Damgård(MD)构造曾被广泛使用,但后来受到了攻击,如Wang等人对MD4、MD5、SHA - 1等的多块碰撞攻击。因此,Iterated Halving作为一种新的哈希函数设计范式被提出,CRUSH哈希函数就是Iterated Halving的一个具体实例。不过,目前CRUSH还未得到充分分析。本文将揭示Iterated Halving技术以及CRUSH哈希函数实例存在的严重安全和实现问题。

好的哈希函数应具备碰撞抗性、原像抗性和第二原像抗性这三个主要安全属性。碰撞抗性指的是很难找到两个不同的消息x和y,使得哈希函数H满足H(x) = H(y);第二原像抗性则是指在已知消息x及其哈希值H(x)的情况下,很难找到另一个消息y使得H(y) = H(x)。如果一个哈希函数不具备碰撞抗性和第二原像抗性,其应用将受到限制。本文将展示在CRUSH中可以通过十次操作找到碰撞和第二原像,即使将CRUSH中的块密码替换为192位或256位密钥的高级加密标准(AES),同样的攻击依然有效。

2. CRUSH哈希函数

CRUSH由数据缓冲区、双射选择组件(BSC)、布尔函数$f_i$($1 \leq i \leq 3$)和双射函数B组成。B实际上是一个块密码,其明文来自数据缓冲区,密钥材料来自布尔函数。B函数包含一个重复的子函数F,但F的具体细节不影响本文的攻击。

CRUSH的作者建议可以通过用另一个块密码替换B来构造Iterated Halving范式下的另一个哈希函数,例如使用192位或256位密钥的AES。

2.1 使用CRUSH压缩消息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值