基于混沌映射的单向Hash函数构造_刘军宁
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ISSN 1000-0054CN 11-2223/N
清华大学学报(自然科学版)J Tsingh ua Univ (Sci &Tech ),2000年第40卷第7期
2000,V o l.40,N o.715/33
5558
基于混沌映射的单向Hash 函数构造
刘军宁, 谢杰成, 王 普
(清华大学自动化系,宽带网络信息研究中心,北京100084)
收稿日期:1999-04-05
作者简介:刘军宁(1973-),男(汉),湖南,硕士研究生
文 摘:为提高Hash 函数性能,尝试新的H a sh 函数构造方法,提出一种基于混沌映射的H a sh 函数构造思想,给出利用两个不同的混沌模型构造的单向H a sh 函数,并初步分析了其作为单向H a sh 函数的不可逆性,防伪造性,初值敏感性和混沌映射应用于单向Hash 函数构造的优点与潜力。
实现了任意长原始文本单向ha sh 为128bit H a sh 值的算法。
实验结果表明,这种构造方法实现简单,对初值有高度敏感性,具有很好的单向H a sh 性能。
同时,该方法也易于改造为并行实现,并且迭代的步数与原始文本成正比,有成为一种快速实用的单向Hash 算法的潜力。
关键词:电子商务;数字签名;H a sh 函数;混沌映射中图分类号:
T P 309;T P 393
文献标识码:
A
文章编号:1000-0054(2000)07-0055-04
随着以Internet 为基础的电子商务技术的迅猛发展,以公钥密码术,数字签名等为代表的加密安全技术已成为研究的热点[1~3]。
单向Hash 函数是数字签名中的一个关键环节,可以大大缩短签名时间,在消息完整性检测,内存的散布分配,操作系统中帐号口令的安全存储中也有重要应用。
传统的单向Hash 方法有M D2,M D5,SHA 等标准[2~
4]
,多是
采用基于异或等逻辑运算的复杂方法或是用DES 等分组加密方法多次迭代[1]得到Hash 结果,后种方法运算量很大,难以找到快速同时可靠的加密方法,而前种方法中由于异或运算中固有的缺陷,虽然每步运算简单,但计算轮数即使在被处理的文本很短情况下也很大。
针对以上问题,提出了一种基于混沌映射模型的单向Hash 算法,该算法表达简单,很好地达到了单向Hash 函数的各项性能,迭代轮数与原始文本长度成正比,且很容易改造为并行实现的算法。
1 混沌映射用于Hash 函数的可行性
单向函数的定义:如映射f :X →Y 对所有的x ∈X ,f (x )都容易计算,但对任意的y ∈f (X )=Y 找到x ∈X 使f (x )=y 却是计算上困难的。
则该函数称为单向函数。
单向H ash 函数是一种特殊的单向函数,它满足以下3个条件[1]并有|Y | |X |
:1)不可逆性 已知c =Hash (m )求m 计算困难,即除穷举外没有好办法;
2)防伪造性 已知c =Hash (m ),求n 使Hash (n )=c 计算困难;
3)初值敏感性 c =H ash(m )中c 的每一比特都与m 的每一比特相关,并有高度的敏感性,即每改变m 的一比特,都将对c 产生明显影响。
从数学上看,报文空间可以是无限的,而Hash 结果总是一段定长字节的数字,会有无数的报文具有同样的H ash 函数值,但在Hash 结果达到一定长度,比如结果为固定的128bit 长时,结果空间已有2128
≈3.4028×1028
个,现有的计算环境下在这样大的空间穷举计算是困难的。
Hash 函数把任意信息集合提炼为一个大数。
被处理的文字信息即使只相差一个字符,它们的Hash 结果也会完全不同,这就使要想通过已知的一对x ,y (y =Hash (x ))找到x ′,H ash(x ′)=y ,除穷举外没有什么好的办法。
这些出色的性质使单向Hash 函数广泛应用于各种数据保护场合。
用来以较小的计算和存储代价来保护数据的完整性和正确性。
同时单向Hash 函数可以将原始的长信息压缩,这在电子商务应用中对于数字签名的快速实时实现有重要意义,可以对压缩后的信息进行签名,大大缩短签名时间。
混沌理论在80年代末开始得到密码学界的注意,混沌运动是非线性确定性系统内在随机性的表
现,可以由十分简单的确定系统产生异常复杂的随机行为。
实验结果表明,混沌序列是遍历的,即沿着混沌轨迹对某一函数的平均等于其集平均;由于混沌系统在迭代中的信息损失,使得混沌序列的信息量渐进趋于零,因此对混沌序列进行正确的长期预测是不可能的。
以上特点使混沌序列天然地拥有单向H a sh 函数所要求的较好的散布性和不可逆性[5]
、防伪造性、初值敏感性。
2 基于H ènon 映射的单向Hash 构造
H ènon 映射是一个二维非线性映射,其一维形式为
[6]
a n =1+
b (a n -2-a n -3)-ca
2
n -1
.(1)
其中参数取在b =0.3, 1.07≤c ≤1.09范围内,初值在±1.5之间时系统具有混沌吸引子。
取b =0.3,
c = 1.08。
注意到这个方程在已知第n 项时是无法解析解出n -1,n -2,n -3中的任何一项的,这是系统不可逆性和防伪造性的保证之一。
图1为系统在任一初值下经4000次迭代的结果,由图1可见,该
混沌序列具有很好的类噪声特性。
其分布特性很适合用来构造单向Hash 函数,不仅终值的分布平稳,与迭代步数无关,而且与初值无关,分布也较为均匀,这样在已知终值的情况下,初值分布的概率比较均匀,只能以穷举搜索初值,因而保证了不可逆性和防伪造性。
图1 H ènon 映射混沌吸引子的分布
采用H èno n 映射的一维形式作为迭代方程,构造单向H ash 算法如下:
1)将待处理文本按对应字节的ASCII 码转换为数字,线性变换为- 1.2~ 1.2范围内的数,这样整个文本得到一个大数组,记为S ,记数组长度即文
本字节数为N 。
2)令
a 1= 2.4×S 1k -1- 1.2, a 2= 2.4×S 2
k -1
- 1.2,
其中k =256.3)迭代
令迭代轮数为r =R ×([N /R ]+1),其中[]为取整运算,R =64。
i )j 从3到r 计算
a j =1+0.3(a j -2-c )- 1.08a 2
j -1,
在j ≤N 时,令c =2.4S j /(k -1)-1.2,
在j >N 时,令c =a j -3.
ii )令b 1=a r -2,b 2=a r -1,b 3=a r ,j 从4到3R 计算b j =1+0.3(b j -2
-b j -3)- 1.08b 2
j -1.
4)从迭代结果序列中取出b R ,b 2R ,b 3R ,将它们经线性变换和取整运算映射为两个40bit ,一个48bit 的二进制数,合起来作为最后128bit 的Hash 结果。
3 基于另一模型的单向Hash 构造
将迭代中的H èno n 映射替换为
a j =(1+0.3(a j -2-c )+379a 2
j -1)mod3(2)由于此混沌系统的初值敏感性更高,可以取R =15,并且初始文本按ASCII 码转换为数字时,将每5个字符转换为一个0~3之间的数,其余都与前面的算法相同。
这样迭代的步数减少很多。
图2是系统经4000次迭代结果,可以看出其类噪特性比H èno n 映射还要好。
图2 算法2映射混沌吸引子的分布
4 仿真结果
4.1 文本Hash 结果
取初始文本1为“Dea r Sir ,W e 'd like to inv ite yo u to come back to our site today (http ://w )to finish your registra tion and check out
56
清华大学学报(自然科学版)2000,40(7)
all that has to offer.Therefore,w e hav e included y our passw o rd and usernam e fo r your reference. Yo ur passw ord:abcd123Your username:tra-cy123.”文本2将文本1中首字母的D改为小写,文本3将文本1中的tracy123改为tracy124,文本4将1最后的句号改为逗号,文本5在文本1的最后再加一个空格。
Hash结果用十六进制数表示,基于Hèno n映射的算法1的Hash结果分别为:
文本1:C B E A D A5E8F4F8A1E74 58100B60F19C A1
文本2:E8D F D8A1574D A85A A A F E0F3B3F767833
文本3:66B F6F E51D5E E27E D F D 748322B93837C
文本4:7C E85E C B B9A C6750D99 983A900E C40B A
文本5:434F6E1876481F5C B9E5 E A8E E A A0E929
算法2的Hash结果分别为:
文本1:C901030C00E D908201E7 D D A B815E6C54
文本2:3371E C C57109289B9B A 075586A F7455F
文本3:A A55E151********D70F B9C4F10F A7A9
文本4:2A B B17C8A8069D5B A B C 31435883D07B F
文本5:15189524D646459B98C6 E49E956E5C A9
可见该算法的单向Hash性能是很好的,初值的每bit变动,结果都以很大的概率发生较大变化,具有十分高的初值敏感性。
4.2 混乱与散布性质统计分析
为了隐藏明文消息的冗余度,Shanno n提出了混乱与散布的概念,加密体制中要求充分且均匀地利用密文空间,H a sh函数同样如此,要尽量做到相应明文对应的H ash密文不相关,而对于结果的二进制表示,每bit只有0或1两种可能,因此理想Hash的散布效果应该是初值的细微变化将导致结果的每bit都以50%的概率变化。
考察算法在明文发生1bit变化的情况下,引起Hash密文结果的变化比特数,定义平均变化比特数
B=
1
N
∑
N
t
n=1
B n,(3) 定义平均变化概率
P=(B/128)×100%,(4)
B的均方差ΔB=1
N t-1
∑N t
n=1
(B n-B)2,P的均方差ΔP=
1
N t-1
∑
N
t
n=1
(B n/128-P)2,
其中N t为统计次数,B n为第n次测试时结果的变化比特(bit)数,每次测试方法为:在明文空间中随机选取一段明文进行Hash,然后改变明文1bit的值得到另一Hash结果,比较两个结果得到变化比特数B n。
经256次测试,得到基于Hèno n映射的算法 1.明文1bit变化下的平均密文变化bit数为: B=63.37,P=49.51%,ΔB= 5.854,ΔP= 4.573%.
算法2 B=63.37,P=49.98%,ΔB= 5.880,ΔP= 4.594%.
可见两个算法的平均变化比特数和每比特平均变化概率都已非常接近理想状况下的64bit和50%的变化概率,相当充分和均匀地利用了密文空间,从统计效果来看,攻击者在已知一些明文密文对,对其伪造或反推其它明密文对没有任何帮助,因为明文的任何细微变化,密文从统计上来看在密文空间中都是接近等密度的均匀分布,从而得不到任何密文分布的有用信息,而Δ标志着Hash混乱与散布性质的稳定性,越接近0就越稳定,两个算法的Δ都已很小,算法1的混乱与散布性质更稳定些。
5 算法的快速性和碰撞分析
以上两个算法只是迭代所选用的混沌方程不同,及因混沌方程性能差异而选取的参数值不同,而算法设计的基本思想是一致的。
首先,它们都具有一定并行的特点,直接迭代出3个大数,每个对应最终结果的40bit左右,这就约相当于5个字节并行计算,而以往的方法运算多是以字节为单位。
更重要的是,算法可以容易地改造为真正的并行,只要将原始文本分割为适当长度的子段,分别迭代,再将结果组成新的序列进行迭代,在原始文本十分长的情况下,可以成倍的缩短时间;其次,算法是与原始文本长度基本成正比的,以往的算法往往要将原始文本补齐一固定长度的序列,在原始文本很短的情况下也要进行相当多的计算,而本方法在原始文本很短时只需很小的迭代步数。
所
57
刘军宁,等: 基于混沌映射的单向Hash函数构造
谓碰撞,是指不同的初值H a sh映射结果相同,即发生了多对一映射。
取初始文本为一字节,即8bit, ASCII码对应值为0~255,Hash结果取为8bit,即也为0~255的数,这样初值空间与终值空间相同。
记终值空间即像空间中任一值对应初值空间中原像的个数记为K,记终值空间中具有K个原像的点的个数记为n(k),n(1)越大,n(0)和其它各项越小,说明碰撞越少,混沌函数的散乱能力越强,用值域空间与定义域空间的测度之比来定量衡量碰撞发生程度,令
L=256-n(0)
256,(5)
L的值越接近1,碰撞程度越低,等于1时,完全没有碰撞发生。
图3为两个算法k-n(k)的分布图。
(a)算法1
(b)算法2
图3 两个算法k-n(k)的分布图
基于Hèno n映射的算法1为图3a,算法2为图3b。
算法1:n(0)至n(8)依次为102,86,45,15, 6,1,1,0,0.K>8均为0,L1=0.60156250;算法2:n(0)至n(8)依次为90,99,52,10,2,3,0,0,0. K>8亦均为0,L2=0.64843750。
可见,这两个算法的碰撞程度还是较低的,算法2比算法1稍好。
参数L的计算目前较难与其它算法比较,因为其它算法的设计多与结果长度相关,改变结果长度H ash性能变化难以预测,相当于重新设计算法,而在128bit等应用尺度上的碰撞分析,计算量过于庞大而不现实。
而本算法可以将结果取为任意长度,从而可以方便地在小尺度下进行算法碰撞程度的定量分析,这正是一个独有的优点。
6 结 论
这种新的基于混沌映射的单向H ash函数构造方法将待处理文本作为初值和调制信号加载于混沌映射的迭代中,混沌系统固有的特点使该算法使用简单,对初值有高度的敏感性,具有很好的单向Hash函数性能。
此外,该方法迭代步数与初始文本长度成正比,并且易于并行实现,有成为一种快速实用的单向H ash算法的潜力。
[参考文献] References
[1]W eido ng K ou.Ne two rk security a nd standa rds
[M].Bosto n:K luw er Academic Publisher s,1997.
[2]Piepr zyh J,Sa deg hiya n B.Desig n o f Hashing
Alg orithm[M].Ber lin:Spring er-v er lag,1993. [3]Peter Wa yner.Dig ita l Ca sh,commer ce on the ne t
[M].Bosto n:Academic Press,1997.
[4]卢开澄.计算机密码学[M].北京:清华大学出版
社,1998.
Lu Kaicheng.Co mputer Cr yptog ra phy[M].
Beij ing:T singhua U niv e rsity Press,1998.(in
Chinese)
[5]Fr ey D R.Chao tic digital enco ding:an appr oach to
secur e communicatio n[J].IEEE T rans Cir cuits
Syst-II,1993,40(10):660666.
[6]H itzl D L,Zele F.A n ex plo ration of the Hèno n
quadratic ma p[J].Physica D,1985,14D(3):305
326.
One way Hash function construction based on chaotic mappings
LIU Junning,XIE Jiecheng,WANG Pu
(Bro adband Ne two rk Info rma tion R&D Center,
Depar tment of Automa tio n,
Tsing hua U niv er sity,Beijing100084,China)
Abstract:Th e pe rfo rmance of o ne wa y Hash function is improv ed and new Hash functio n co nstr uc tio n methods a re pr oposed tho urg h a nov el Hash metho d ba sed on chao tic ma pping.Tw o differ ent chao tic models ar e used to co nstruct o ne wa y Hash functio ns.The alg o rithm which is sensitiv e to the initia l messag e,is desig ned to either pro duce a pair of co llisio n messag es o r the recov ery of a messag e to has the g iv en H a sh result(a fo rg ery)co mputa tio nally infea sible by hashing messag es o f a rbit rar y bit leng th into 128bit Hash v alues.The adva ntag es and po tential o f using chao tic mapping fo r o ne-wa y H a sh functions is also discussed.The simulatio n demo nstr ates the co nv enience, high sensitivity to initial va lues and g oo d Hash perfo rma nce o f the new method.Furthe r,the metho d can be easily to par alleled and the number o f itera tio ns is in direct pr opo rtio n to the initia l tex t leng th.Th e a lg orithm is a quick and easily implemented one-w ay Hash function.
Key words:electro nic co mmer ce;digital sig nature;one w ay H a sh func tio n;chao tic mapping
58清华大学学报(自然科学版)2000,40(7)。