论文部分内容阅读
Hash函数是一种单向函数,被广泛应用在数字签名和认证中。近年来对Hash函数安全性方面的研究是一个研究热点。本文在对Hash函数安全性进行研究的基础上,利用Hash函数的单向性提出了两种基于Hash函数的数字签名方案,设计实现了密文数据检索原型系统。主要工作如下:首先,证明了SHA-3置换函数的差分转移概率特性。通过对SHA-3算法置换函数Keccak-f的分析,提出三维数组的循环移位方法。根据置换函数Keccak-f每一步变换的结构,构造出输出差分的布尔函数表达式。通过研究输出差的差分布尔函数表达式,证明了Keccak-f每一步变换的输入输出差分通过循环移位后,其差分转移概率不变。在此基础上,分析得出当Keccak-f每一步变换的两个输入差分之间和对应输出差分之间均满足相同循环移位特性时,整个置换函数Keccak-f的输入输出差分通过循环移位后,其差分转移概率不变。其次,设计了一种改进SHA-1算法。针对SHA-1存在安全性缺陷,提出了一种对SHA-1的改进算法。该算法有效地增加了运用消息修改技术的困难,并且得到良好的差分扩散特性。由于改进Hash算法只改动了步函数,仅增加了一个加法和循环移位,没有改变信息填充方式和消息摘要长度,容易实现原有基于SHA-1的软硬件产品的升级。经证明并通过测试,得出改进SHA-1与标准SHA-1的效率相当。然后,提出了两种基于Hash函数的数字签名方案。基于Hash函数的单向性构造了两种数字签名方案,一种是基于Hash函数的群签名方案,另一种是基于Hash函数的门限签名方案。基于Hash函数的数字签名是一个全新的签名方法,在签名的过程中不再使用RSA、ECC、ElGamal等公钥密码体制,可以抵抗量子时代量子计算的攻击。最后,设计并实现了基于Hash函数密文数据检索系统。利用Hash函数的单向性设计基于Hash函数的密文数据检索方案。在此基础上,实现了密文医疗病历检索原型系统。该系统能够实现无密钥的精确检索与统计,也可根据检索词模糊匹配缩小查找范围,但只有拥有密钥的人才能查看具体的信息,保证了信息的安全性。