论文部分内容阅读
Hash函数是密码学中最基本的模块之一,被广泛应用于数字签名、消息鉴别、模拟randomoracle和伪随机数生成器等领域,是近几年密码学研究的热点领域。本文对Hash函数的研究现状和存在的问题做了全面的介绍,比较和分析了Hash函数的各种设计思想和分析方法,并对若干问题进行了探讨。MD迭代方式是目前最常用的设计方法,通常为了保证Hash函数的抗碰撞性需要压缩函数具有抗自由碰撞性。本文进一步研究了MD迭代方式构造的Hash函数和压缩函数之间的关系;在黑盒子模型下证明了在压缩函数不能抵抗某些自由碰撞攻击的条件下,MD迭代方式构造的Hash函数仍然具有抗碰撞性。此结果放宽了对压缩函数的限制,更有利于压缩函数的设计。平衡度是衡量Hash函数安全性的新指标,本文重点研究了压缩函数平衡度在MD迭代方式下的保持问题。在原定义模型下,MD迭代方式不能保持压缩函数的平衡性,从而给压缩函数的设计要求带来了困难。鉴于此本文提出了局部平衡度的概念,并证明当压缩函数满足局部平衡性要求时,MD迭代方式构造的Hash函数的平衡度要大于等于压缩函数的平衡度。最后从实际应用角度出发,讨论了Hash函数针对目前攻击方法的预防措施,通过对算法简单升级的办法来增加其抵抗攻击的能力。