5、FORK - 256压缩函数的密码分析与碰撞查找策略

FORK - 256压缩函数的密码分析与碰撞查找策略

1. FORK - 256压缩函数的近碰撞分析

在对FORK - 256压缩函数的研究中,我们首先关注其七步简化版本。该简化版本保留了两次加法、异或和前馈操作,但去掉了第八步(除寄存器的最终置换外)。起初,我们可能认为能找到针对这个七步简化版本的碰撞,但实际上并非如此。在内部寄存器$A_{j,7}$中会存在差异,这些差异的最低位与最初引入的差异$d$的最低位在相同位置(在我们的例子中是第三最低有效位)。这些位在第一、二分支和最后两个分支的加法操作中左移,异或操作会消除它们,但由于前馈操作,差异位会在之前的位置重新出现,无法消除。

因此,我们寻求1 - 比特近碰撞,其概率估计如下:选择第七步之前的随机内部状态(即四个分支中每个分支的$A_{j,6}$、$B_{j,6}$、$C_{j,6}$和$D_{j,6}$值),运行第七步变换和重组机制。经过$2^{32}$次实验,平均有8.96个非零位。1 - 比特近碰撞的概率估计为$2^{-15}$(在$2^{32}$次实验中,有127665个输出是1 - 比特近碰撞)。由于上一节给出的算法在$2^{30}/P_{6d}=2^{49}$次哈希计算中输出$2^{32}$个正确值,因此找到一组$2^{17}$个不同的1 - 比特近碰撞的复杂度约为$2^{49}$次哈希计算。

对于完整压缩函数的近碰撞,之前段落研究的算法以$2^{49}$次哈希计算的复杂度输出FORK - 256输出在八个32位字中的四个上碰撞的$2^{32}$对。在第二个字中仍有一位差异(在固定位置),还需要消除三个32位字。实验发现,第二个字上1 - 比特近碰撞的概率为$2^{-15}$,对于$d = 0x0000404$,

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值