论文部分内容阅读
我们知道Hash函数的是密码学和信息安全领域中的一个非常重要的基本组成部分,但,自从以MD5为代表的MDx系列Hash函数被我国学者王小云等人破译后,关于Hash函数的研究又重新回到了起步阶段。 在本论文中,我们首先回顾了Hash函数、MAC(message authentication code)、单向函数及其应用等基本概念;分析了Hash函数特性间的关系和对Hash函数的一般攻击;目前常用的三种Hash函数设计方法:一、直接为Hash目的而设计的Hash函数,二、基于分组密码的Hash函数,三、基于模算术(含离散对数)的Hash函数;讨论了MDx系列Hash函数的发展史,并总结了此类Hash函数设计原则和分析方法。 在密码学和信息安全领域里,几个比较著名的Hash算法都是通过迭代压缩函数来实现的,因此,在用迭代方法设计Hash函数时,最关键的是能否找到或设计出一个安全的压缩函数;通常设计压缩函数有两种方法:一、利用某些数学工具专为哈希目的而设计一个压缩函数,二、利用现有的密码算法如分组密码来作为压缩函数等。 我们讨论了基于分组密码的Hash函数MDC-2和MDC-4,在MDC-2的基础上进行一些改进,改进后方案(命名为PMDC-2)的效率是原方案的2倍,并对PMDC-2的安全性进行了分析:PMDC-2与MDC-2在第二原像和碰撞问题上安全性是相当的;而且,如果构成PMDC-2的分组密码算法能抵抗不动点攻击、修正分组攻击、中间相遇攻击、差分攻击,则PMDC-2也能抵抗这些攻击。