CN101414904A - 具有单轮次抗碰撞性的散列函数方法 - Google Patents

具有单轮次抗碰撞性的散列函数方法 Download PDF

Info

Publication number
CN101414904A
CN101414904A CNA2008102258686A CN200810225868A CN101414904A CN 101414904 A CN101414904 A CN 101414904A CN A2008102258686 A CNA2008102258686 A CN A2008102258686A CN 200810225868 A CN200810225868 A CN 200810225868A CN 101414904 A CN101414904 A CN 101414904A
Authority
CN
China
Prior art keywords
coupling
information
value
mapping
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2008102258686A
Other languages
English (en)
Inventor
王世红
胡岗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Normal University
Original Assignee
Beijing Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Normal University filed Critical Beijing Normal University
Priority to CNA2008102258686A priority Critical patent/CN101414904A/zh
Publication of CN101414904A publication Critical patent/CN101414904A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明公开了一种具有单轮次抗碰撞性的散列函数方法,属于信息安全技术领域。所述方法包括:以耦合映射格子为模型,采用浮点运算和传统的比特操作相结合的方法。耦合映射采用局域和整体耦合相结合的方式,映射中的状态变量由链变量确定,映射中的参数由输入信息和其扩展信息确定。输入信息通过非线性ff(包括循环移位、模加法和S盒操作)操作进行扩展。引入两个整体耦合变量,整体耦合变量是全部输入信息和状态变量的函数。对输出变量取模,与输入的链变量、信息作异或运算;再将得到的结果实数化,作为映射的输入值继续迭代。本发明以单轮次的高复杂性,较少轮次的计算代价保障其安全性。该方法结构严谨,输出散列值长度可改变,易于软件实现,也可通过嵌入式CPU技术硬件实现。

Description

具有单轮次抗碰撞性的散列函数方法
技术领域
本发明涉及信息安全技术领域,更确切地说,设计一种散列函数方法。
背景技术
散列函数,也称单向散列函数,是一种将任意长度的消息压缩为具有固定长度的消息摘要(也称散列值)的函数。满足这一条件的函数很多,但散列函数还要求满足以下特性:(1)对给定的消息,很容易计算其散列值;(2)给定散列值,根据散列函数计算原消息是计算上不可能的;(3)给定消息和散列值,要找到另一个不同的消息,使它们具有相同的散列值是不可能的;(4)对任意给定的不同消息,使它们的散列值相同是不可能的。这里的不可能是指在现有的资源条件下,计算上是不可能的。
散列函数在信息安全方面的应用主要体现在数字签名中。随着信息技术和网络的广泛使用,特别是电子商务和电子政务的快速发展和普及,数字签名的应用需求越来越大。在数字签名中,由于非对称算法的运算速度较慢,所以在数字签名协议中,首先要利用散列函数生成信息散列值,再对信息散列值进行数字签名,这样可以大大地提高签名效率。散列函数除了用在数字签名外,还可以生成文件的“数字指纹”,防止对数据的恶意破坏。对文件进行散列值计算,并和存放在安全地方的原有的“指纹”进行比对,就可以发现现有文件是否被修改。散列函数还可以用在鉴权协议中。“鉴权”可以解释为鉴定权限。鉴权方通过散列函数值的比对,判定是否对被鉴权方通过鉴权。
目前已有很多散列函数算法,其中比较著名的是MD4,MD5,RIPEMD,HAVAL和SHA系列。2001年和2002年美国国家标准技术研究所颁布SHA-1,SHA-256,SHA-384,和SHA-512为散列函数标准。欧洲在2003年确定Whirlpool,SHA-256,SHA-384和SHA-512为散列函数标准。由于MD4和HAVAL算法相继破译,特别近几年来,中国山东大学王小云教授小组已成功破译了MD5和SHA-1散列函数标准,这在国际上引起了震动,使得人们的目光再次聚焦散列函数,美国更在2006年组织国际会议专门讨论散列函数的分析方法和设计方法,使得设计安全的散列函数成为一个研究热点。
现有的散列函数以比特代数操作为主,很少引入解析浮点运算操作。原因一是前者有利于硬件实现,二是对解析运算很容易用解析反运算来实现碰撞。在网络如此发达和计算机普及的环境下,软件资源在实际运用中已极为普遍和便易,如果把比特操作和解析运算结合起来,设计高效率和高安全性的散列函数方法是非常有意义的。即使是对硬件实施也可以使用嵌入式CPU手段实现解析运算和比特代数操作相结合的***。对解析反运算的安全弱点,可以通过解析运算和比特操作结合的方法予以克服。
发明内容
现有的散列函数大多以多轮次的计算来加强其安全性,但在各轮次之间表面复杂的迭代中常常掩盖着一些可计算碰撞的关联弱点。本发明要提供一种新的安全性高、抗碰撞的散列函数方法,***的安全性不是依赖多轮次的复杂性来实现,而是依靠单轮次的高强度复杂性来实现。
本发明所采用的方案是:以耦合映射格子为模型,采用浮点运算和传统的比特操作相结合的方法。利用比特代数操作增加通过解析运算寻找碰撞的难度,又利用解析非线性运算增加比特的混淆和扩散速率,以达到提高***抗碰撞安全性的目的。耦合映射采用局域和整体耦合相结合的方式,映射中的状态变量由链变量确定,映射中的参数由输入信息和其扩展信息确定。***的单轮次运算就具备散列函数所要求的抗碰撞强度,而两轮次运算更确保了该散列函数应用的安全性。
实现本发明目的的方案,其过程特征在于包括四个步骤:预处理,参数计算,耦合映射格子方程计算和散列值输出:
A1)预处理。预处理包括确定初始链值,信息整形和信息转化。
A2)参数计算。参数计算包括耦合映射格子方程的初始化状态变量计算和信息的实数化转化。
A3)耦合映射格子方程计算。采用N个格点耦合模型,局域和整体耦合相结
合。
A4)散列值输出。级联最后一组信息的输出值作为函数的散列值。
在A1)中,预处理由确定初始链值,信息整形和信息转化三个步骤组成:
A1.1)定义常数。确定N个32比特初始链值H1,H2,...,HN(方法见具体实施方式B2),N为整数,N可以取为4,6,8,12或16。
A1.2)信息整形是把原信息通过填充补充位,添加原文长度信息,使整形信息长度为分组长度的整数倍过程。每组信息固定比特数为32N,整形原文信息长度为32Nn比特,n为整数。
所述的由原文信息生成整形信息的过程,进一步包括:
在原文信息长度不是(32Nn-128)比特位时,在原文后,级加一个1和若干个0。其中128位固定用来标识原文长度。
A1.3)每组32N比特串化为N个32比特整数m1,m2,...,mN(约定32比特串i31i30...i1i0中,i31为最高位比特,i0为最低位比特)。
在A2)中,参数计算包括耦合映射格子方程的初始化状态变量计算、信息的扩展和信息的实数化转化,具体方法如下:
A2.1)初始化状态变量。***有N个耦合映射格子格子,其N个变量定义为x1,x2,...,xN-1,xN,每个变量用双精度实数表示。把整数H1,H2,...,HN赋值给z1,z2,...,zN,并转化为双精度实数,作为耦合映射格子方程的初始态状态变量:
zi=Hi,i=1,2,...,N
x i = z i 2 32 ,  i=1,2,...,N
A2.2)信息的扩展。把输入的32N比特扩展为64N比特,即把N个32比特整数m1,m2,...,mN扩展为2N个32比特整数。扩展方式为:
mi+N=ff(mi),i=1,2,...,N
ff(mi)=g[R(mi)]
=g[(mi>>>4)∧(mi>>>8)∧(mi>>>16)∧(mi<<<8)],i=1,2,...,N
ff为非线性变换。其中(x>>>t)表示x向右循环移位t比特,(x<<<t)表示x向左循环移位t比特,∧为按比特异或。
A2.3)输入和扩展的信息转变为双精度实数:
a i = 3.0 + m i 2 32 ,   b i = 0.25 + m i + N 2 34 ,  i=1,2,...,N
A2.2)所涉及的信息扩展中的ff变换包括循环移位R和g变换:
A2.2.1)循环移位R。对32比特信息作4次不同的循环移位,结果按比特异或。
R(mi)=(mi>>>4)∧(mi>>>8)∧(mi>>>16)∧(mi<<<8),i=1,2,...,N
A2.2.2)g变换是32位比特输入,32比特输出的非线性变换(见图1和表1)。首先把输入的32位比特分成四个字节A4‖A3‖A2‖A1,每个字节是8比特,其中A4是高比特位。对每个字节进行S盒变换。把变换的4个字节排列最为最后的输出S(A4)‖S(A3)‖S(A2)‖S(A1)。
A2.2.3)S盒变换。S盒变换是8比特输入,8比特输出的随机映射变换。表1中x,y分别为十六进制数,x|y表示输入的8比特整数,x为高位,y为低位。表1中的值为对应输出的S(x|y),输出值为十六进制表示。
在A3)耦合映射格子方程计算中采用局域和整体耦合相结合。采用N个格点耦合模型,
具体实现有以下几个步骤:
A3.1)映射方程结构为:
y1=f1(a1,x1)+f2(bN,kN,xN)+f1(a2,u)+f2(b3,k3,w),
y2=f1(a2,x2)+f2(b1,k1,x1)+f1(a3,u)+f2(b4,k4,w),
yi=f1(ai,xi)+f2(bi-1,ki-1,xi-1)+f1(ai+1,u)+f2(bi+2,ki+2,w),i=3,4,...,N-2
yN-1=f1(aN-1,xN-1)+f2(bN-2,kN-2,xN-2)+f1(aN,u)+f2(b1,k1,w),
yN=f1(aN,xN)+f2(bN-1,kN-1,xN-1)+f1(a1,u)+f2(b2,k2,w)
f1和f2分别是二次和一次映射,变量u,w由N个格点耦合而成的实数变量,方程通过变量u,w实现整体耦合。k1,k2,...,kN是输入的双精度常数(具体的数值和产生方法见B3)。
A3.2)对状态变量进行取模和输入的Hi,信息mi作异或运算,变量作为新的zi输出,并转化为实数:
zi=yi×248mod232
Figure A200810225868D00111
 i=1,2,...,N.
x i = z i 2 32
边界条件满足mN+i=mi,HN+i=Hi,i=1,2,...,N。
A3.3)连续执行A3.1)和A3.2)操作p次后,输出变量z1,z2,...,zN-1,zN
A3.4)更新链值。输出变量z1,z2,...,zN-1,zN作为新的Hi输出,即:
Hi=zi,i=1,2,...,N
Hi作为下一组散列函数计算的初值,对下一组明文进行A1)、A2)和A3)的计算。
在A3.1)中,函数f1、f2和整体耦合变量u,w具体实现方法如下:
A3.1.1)f1映射:f1(c,x)=cx(1-x)。c是映射的参数,在A2.3)中由信息确定。
A3.1.2)f2映射:f2(c,k,x)=c(x+k)。c是映射的参数,在A2.3)中由信息确定。k是常数,具体的数值和产生方法见具体实施方式B3。
A3.1.3)变量u由下式构造:
u 1 = &Sigma; i = 1 N f 2 ( b i , k i , x i ) ,
u2=u1×248mod 232
u3=ff(u2),
u = u 3 2 32 ,
A3.1.4)变量w由下式构造:
w 1 = &Sigma; i = 1 N f 1 ( a i , x i ) ,
w2=w1×248mod 232
w3=ff(w2),
w = w 3 2 32
在A4)中,散列值输出时,输入所有的信息重复步骤A1),A2)和A3),直至最后一组信息。级联最后一组信息的Hi,i=1,2,...,N,作为最后的散列值H1‖H2‖...‖HN-1.‖HN输出。
本发明基于耦合映射格子模型的散列函数方法,在算法结构上与著名的MD4,MD5,RIPEMD,SHA系列,Whirlpool等不同,采用少轮次的(p=2)运算保证***的安全性,而***的安全性可以用单***作来分析,分析简单,可靠性强。本发明设计的散列函数灵活,有效。在不改变设计结构的条件下,只需根据输出散列值的要求,通过选择耦合格点的数目即可达到要求。N=4,6,8,12,16分别对应输出128,192,256,384和512比特散列值。当输出散列值增大时,计算效率没有下降,这一点优于已知的大多数散列函数方法。以上所述方法方便应用于软件使用,在嵌入CPU条件下可用于硬件环境。
附图说明
图1是本发明的g变换示意图。
表1是本发明的S盒随机映射表。
具体实施方式
B1)本发明共设计五种散列值128,192,256,384和512比特,根据散列值要求,选择耦合格点的数目。具体实施参数如下:
B1.1)耦合格点数N=4,迭代轮次p=2,输出128比特散列值。
B1.2)耦合格点数N=6,迭代轮次p=2,输出192比特散列值。
B1.3)耦合格点数N=8,迭代轮次p=2,输出256比特散列值。
B1.4)耦合格点数N=12,迭代轮次p=2,输出384比特散列值。
B1.5)耦合格点数N=16,迭代轮次p=2,输出512比特散列值。
B2)本发明在实现时,需要有确定的初始状态值H1,H2,...,HN。对不同比特的散列值输出,H1,H2,...,HN取值实现方法如下:
当N=4,6,12,16时, H i = int [ ln ( 1 + i N + 1 &times; 1.718 ) &times; 2 32 ] , i=1,2,...,N。
当N=8时, H i = int [ ln ( 1 + i N + 3 &times; 1.718 ) &times; 2 32 ] , i=1,2,...,N。int表示舍去小数部分,只保留整数部分。
按照上述方法,H1,H2,...,HN取值如下(以十六进制表示):
B2.1)耦合格点数N=4,四个初始值取值H1=91ED38AA,H2=BC4AC89D,H3=D8A01D1A,H4=EE4B30CB。
B2.2)耦合格点数N=6,六个初始值取值H1=8018B519,H2=A6C50F56,H3=C0EDC832,H4=D514141C,H5=E59AD573,H6=F3ADFDEE。
B2.3)耦合格点数N=8,八个初始值取值H1=6ADA291D,H2=8CB280AB,H3=A3EFC179,H4=B6030647,H5=C4F176FB,H6=D1BB3843,H7=DCF3E6BF,H8=E6F91BB7。
B2.4)耦合格点数N=12,十二个初始值取值H1=63C1258E,H2=83DF84C4,H3=9A0BEFB1,H4=AB5AC599,H5=B9B0AE14,H6=C5FE6CFD,H7=D0CF18EC,H8=DA7B1242。H9=E33E5756,H10=EB43ABBF,H11=F2AAB63B,H12=F98B9A28。
B2.5)耦合格点数N=16,十六个初始值取值H1=592B1196,H2=76992425,H3=8B16AC27,H4=9B2C65DA,H5=A88D7C2D,H6=B4131777,H7=BE3B2292,H8=C755E0A4。H9=CF99F4BD,H10=D72E69A4,H11=DE303559,H12=E4B57966,H13=EACF8964,H14=F08C3CA7,H15=F5F6D254,H16=FB18903E。
B3)本发明在实现时,需要有确定的常数值k1,k2,...,kN输入。对不同比特的散列值输出,k1,k2,...,kN取值实现方法如下:
当N=4,6,12,16时, k i = cos ( i N + 1 ) ,  i=1,2,...,N。
当N=8时, k i = cos ( i N + 3 ) , i=1,2,...,N。
按照上述方法,k1,k2,...,kN取值如下:
B3.1)耦合格点数N=4,四个常数取值k1=0.9801,k2=0.9211,k3=0.8253,k4=0.6967。
B3.2)耦合格点数N=6,六个常数取值k1=0.9898,k2=0.9595,k3=0.9096,k4=0.8411,k5=0.7556,k6=0.6546。
B3.3)耦合格点数N=8,八个常数取值k1=0.9959,k2=0.9835,k3=0.9630,k4=0.9346,k5=0.8985,k6=0.8549,k7=0.8043,k8=0.7470。
B3.4)耦合格点数N=12,十二个常数取值k1=0.9970,k2=0.9882,k3=0.9735,k4=0.9530,k5=0.9269,k6=0.8954,k7=0.8585,k8=0.8166,k9=0.7698,k10=0.7184,k11=0.6629,k12=0.6034。
B3.5)耦合格点数N=16,十六个常数取值k1=0.9983,k2=0.9931,k3=0.9845,k4=0.9724,k5=0.9571,k6=0.9384,k7=0.9164,k8=0.8913,k9=0.8631,k10=0.8319,k11=0.7979,k12=0.7610,k13=0.7216,k14=0.6796,k15=0.6353,k16=0.5888。
B4)本发明利用软件编程实施。编程实施中所有的实数采用双精度浮点运算实现,数值取整和所有的整数定义为32比特长度整数,S盒(8比特的输入和8比特输出)通过查表1实现。
B5)g变换举例。x分别为0和075BCD15(十六进制表示),计算g(x)值。
0分为四个字节,A4=0,A3=0,A2=0,A1=0。查表S(A4)=B5,S(A3)=B5,S(A2)=B5,S(A1)=B5。g(0)=B5B5B5B5。
075BCD15分为四个字节,A4=07,A3=5B,A2=CD,A1=15。查表S(A4)=08,S(A3)=B8,S(A2)=C6,S(A1)=A3。
g(075BCD15)=08B8C6A3。
表.1
Figure A200810225868D00161

Claims (10)

1.一种以耦合映射格子为模型,采用浮点运算和传统的比特操作相结合的散列函数方法,其特征在于耦合映射采用局域和整体耦合相结合的方式,映射中的状态变量由链变量确定,映射中的参数由输入信息和其扩展信息确定。输入信息通过非线性操作进行扩展。引入两个整体耦合变量,整体耦合变量是全部输入信息和状态变量的函数。对输出变量取模,然后和输入的链变量、信息作异或运算;再将得到的结果实数化,作为映射的输入值继续迭代。所述方法包括以下处理步骤:
A1)预处理。预处理包括确定初始链值,信息整形和信息转化。
A2)参数计算。参数计算包括耦合映射格子方程的初始化状态变量计算和信息的实数化转化。
A3)耦合映射格子方程计算。采用N个格点耦合模型,局域和整体耦合相结合。
A4)散列值输出。级联最后一组信息的输出值作为函数的散列值。
2.根据权利要求1所述的散列函数方法,其特征在于散列值可以选择。耦合格子数取N=4,6,8,12,16分别对应输出128,192,256,384和512比特的散列值函数。
3.根据权利要求1所述的预处理,其特征在于由确定初始链值,信息整形和信息转化三个步骤组成,具体如下:
A1.1)定义常数。确定N个32比特初始链值H1,H2,...,HN
A1.2)信息整形是把原信息通过填充补充位,并添加原文长度信息,使整形信息长度为分组长度的整数倍。每组信息固定比特数为32N,整形原文信息长度为32Nn比特,n为整数。
所述的由原文信息生成整形信息的过程,进一步包括:
在原文信息长度不是(32Nn-128)比特位时,在原文后,级加一个1和若干个0。其中128位固定用来标识原文长度。
A1.3)每组32N比特串化为N个32比特整数m1,m2,...,mN(约定32比特串i31i30...i1i0中,i31为最高位比特,i0为最低位比特)。
4.根据权利要求1所述的参数计算,其特征在于由耦合映射格子方程的初始化状态变量计算、信息的扩展和信息的实数化转化步骤构成,具体如下:
A2.1)把H1,H2,...,HN赋值给z1,z2,...,zN,并转化为双精度实数,作为耦合映射格子方程的初始态状态变量:
zi=Hi,i=1,2,...,N
x i = z i 2 32 , i = 1,2 , . . . , N
A2.2)把输入的32N比特(m1,m2,...,mN)扩展为64N(m1,m2,...,m2N)比特,扩展方式为mi+N=ff(mi),i=1,2,...,N。
A2.3)输入和扩展的信息化为双精度实数:
a i = 3.0 + m i 2 32 , b i = 0.25 + m i + N 2 34 , i = 1,2 , . . . , N .
5.根据权利要求4所述的扩展方式,其特征在于包括循环移位R和g变换,具体如下:
A2.2.1)循环移位R。对32比特信息作4次不同的循环移位,结果按比特异或。
R(mi)=(mi>>>4)∧(mi>>>8)∧(mi>>>16)∧(mi<<<8),i=1,2,...,N
A2.2.2)g变换是32位比特输入,32比特输出的非线性变换。首先把输入的32位比特分成四个字节A4||A3||A2||A1,每个字节是8比特,其中A4是高比特位。对每个字节进行S盒变换。把变换的4个字节排列最为最后的输出S(A4)||S(A3)||S(A2)||S(A1)。
A2.2.3)S盒变换是8比特输入,8比特输出的随机映射变换。
6.根据权利要求1所述的耦合映射格子方程计算,其特征在于采用局域和整体耦合相结合,具体实现有以下几个步骤:
A3.1)映射方程结构为:
y1=f1(a1,x1)+f2(bN,kN,xN)+f1(a2,u)+f2(b3,k3,w),
y2=f1(a2,x2)+f2(b1,k1,x1)+f1(a3,u)+f2(b4,k4,w),
yi=f1(ai,xi)+f2(bi-1,ki-1,xi-1)+f1(ai+1,u)+f2(bi+2,ki+2,w),i=3,4,...,N-2
yN-1=f1(aN-1,xN-1)+f2(bN-2,kN-2,xN-2)+f1(aN,u)+f2(b1,k1,w),
yN=f1(aN,xN)+f2(bN-1,kN-1,xN-1)+f1(a1,u)+f2(b2,k2,w)
A3.2)对状态变量进行取模和输入的Hi、信息mi作异或运算,变量作为新的zi输出,并转化为实数:
zi=yi×248mod232
Figure A200810225868C00041
x i = z i 2 32
边界条件满足mN+i=mi,HN+i=Hi,i=1,2,...,N。
A3.3)连续执行A3.1)和A3.2)操作p次后,输出变量z1,z2,...,zN-1,zN
A3.4)更新链值。输出变量z1,z2,...,zN-1,zN作为新的Hi输出,即:
Hi=zi,i=1,2,...,N。
7.根据权利要求6所述的f1、f2函数和整体耦合变量u,w,其特征在于如下:
A3.1.1)f1映射:f1(c,x)=cx(1-x)。c是映射的参数,在A2.3)中由信息确定。
A3.1.2)f2映射:f2(c,k,x)=c(x+k)。c是映射的参数,在A2.3)中由信息确定。k是常数。
A3.1.3)变量u由下式构造:
u 1 = &Sigma; i = 1 N f 2 ( b i , k i , x i ) ,
u2=u1×248 mod 232
u3=ff(u2),
u = u 3 2 32 ,
A3.1.4)变量w由下式构造:
w 1 = &Sigma; i = 1 N f 1 ( a i , x i ) ,
w2=w1×248 mod 232
w3=ff(w2),
w = w 3 2 32 .
8.根据权利要求3所述的初始链值,其特征在于,所述的初始链值分别是:
B2.1)耦合格点数N=4,四个初始值取值H1=91ED38AA,H2=BC4AC89D,H3=D8A01D1A,H4=EE4B30CB。
B2.2)耦合格点数N=6,六个初始值取值H1=8018B519,H2=A6C50F56,H3=C0EDC832,H4=D514141C,H5=E59AD573,H6=F3ADFDEE。
B2.3)耦合格点数N=8,八个初始值取值H1=6ADA291D,H2=8CB280AB,H3=A3EFC179,H4=B6030647,H5=C4F176FB,H6=D1BB3843,H7=DCF3E6BF,H8=E6F91BB7。
B2.4)耦合格点数N=12,十二个初始值取值H1=63C1258E,H2=83DF84C4,H3=9A0BEFB1,H4=AB5AC599,H5=B9B0AE14,H6=C5FE6CFD,H7=D0CF18EC,H8=DA7B1242。H9=E33E5756,H10=EB43ABBF,H11=F2AAB63B,H12=F98B9A28。
B2.5)耦合格点数N=16,十六个初始值取值H1=592B1196,H2=76992425,H3=8B16AC27,H4=9B2C65DA,H5=A88D7C2D,H6=B4131777,H7=BE3B2292,H8=C755E0A4。H9=CF99F4BD,H10=D72E69A4,H11=DE303559,H12=E4B57966,H13=EACF8964,H14=F08C3CA7,H15=F5F6D254,H16=FB18903E。
9.根据权利要求7所述的f2函数,其特征在于,所述的常数值分别是:
B3.1)耦合格点数N=4,四个常数取值k1=0.9801,k2=0.9211,k3=0.8253,k4=0.6967。
B3.2)耦合格点数N=6,六个常数取值k1=0.9898,k2=0.9595,k3=0.9096,k4=0.8411,k5=0.7556,k6=0.6546。
B3.3)耦合格点数N=8,八个常数取值k1=0.9959,k2=0.9835,k3=0.9630,k4=0.9346,k5=0.8985,k6=0.8549,k7=0.8043,k8=0.7470。
B3.4)耦合格点数N=12,十二个常数取值k1=0.9970,k2=0.9882,k3=0.9735,k4=0.9530,k5=0.9269,k6=0.8954,k7=0.8585,k8=0.8166,k9=0.7698,k10=0.7184,k11=0.6629,k12=0.6034。
B3.5)耦合格点数N=16,十六个常数取值k1=0.9983,k2=0.9931,k3=0.9845,k4=0.9724,k5=0.9571,k6=0.9384,k7=0.9164,k8=0.8913,k9=0.8631,k10=0.8319,k11=0.7979,k12=0.7610,k13=0.7216,k14=0.6796,k15=0.6353,k16=0.5888。
CNA2008102258686A 2008-11-04 2008-11-04 具有单轮次抗碰撞性的散列函数方法 Pending CN101414904A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008102258686A CN101414904A (zh) 2008-11-04 2008-11-04 具有单轮次抗碰撞性的散列函数方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2008102258686A CN101414904A (zh) 2008-11-04 2008-11-04 具有单轮次抗碰撞性的散列函数方法

Publications (1)

Publication Number Publication Date
CN101414904A true CN101414904A (zh) 2009-04-22

Family

ID=40595237

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008102258686A Pending CN101414904A (zh) 2008-11-04 2008-11-04 具有单轮次抗碰撞性的散列函数方法

Country Status (1)

Country Link
CN (1) CN101414904A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103580849A (zh) * 2013-10-25 2014-02-12 西安理工大学 一种时空混沌保密通信方法
CN110348246A (zh) * 2018-04-08 2019-10-18 腾讯科技(深圳)有限公司 一种验证信息的生成方法、装置、终端设备和介质
CN114244817A (zh) * 2021-11-30 2022-03-25 慧之安信息技术股份有限公司 一种基于osip协议栈头域的哈希冲突处理方法和装置
CN115765975A (zh) * 2023-01-09 2023-03-07 苏州浪潮智能科技有限公司 Sha-256算法的低功耗实现方法、芯片、服务器及存储介质
WO2023155644A1 (zh) * 2022-02-21 2023-08-24 中兴通讯股份有限公司 数据处理方法、转发芯片、存储介质及程序产品

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103580849A (zh) * 2013-10-25 2014-02-12 西安理工大学 一种时空混沌保密通信方法
CN110348246A (zh) * 2018-04-08 2019-10-18 腾讯科技(深圳)有限公司 一种验证信息的生成方法、装置、终端设备和介质
CN110348246B (zh) * 2018-04-08 2022-08-30 腾讯科技(深圳)有限公司 一种验证信息的生成方法、装置、终端设备和介质
CN114244817A (zh) * 2021-11-30 2022-03-25 慧之安信息技术股份有限公司 一种基于osip协议栈头域的哈希冲突处理方法和装置
WO2023155644A1 (zh) * 2022-02-21 2023-08-24 中兴通讯股份有限公司 数据处理方法、转发芯片、存储介质及程序产品
CN115765975A (zh) * 2023-01-09 2023-03-07 苏州浪潮智能科技有限公司 Sha-256算法的低功耗实现方法、芯片、服务器及存储介质
CN115765975B (zh) * 2023-01-09 2023-04-07 苏州浪潮智能科技有限公司 Sha-256算法的低功耗实现方法、芯片、服务器及存储介质

Similar Documents

Publication Publication Date Title
CN101976322B (zh) 基于一种完整性校验的安全元数据管理方法
CN101237320A (zh) 利用无穷维超混沌构造单向散列函数进行密码保护的方法
CN101414904A (zh) 具有单轮次抗碰撞性的散列函数方法
JP6120961B2 (ja) 特定フォーマットを有する代替データの生成および検証
Tiwari et al. A secure and efficient cryptographic hash function based on NewFORK-256
CN106301766B (zh) 一种基于混沌***的单向加密方法
CN102082668A (zh) 一种基于耦合混沌映射的消息完整性认证方法
Wang et al. Hash function with variable output length
Sakan et al. DEVELOPMENT AND ANALYSIS OF THE NEW HASHING ALGORITHM BASED ON BLOCK CIPHER.
Tiwari Cryptography in blockchain
WO2011050624A1 (zh) 数据变换方法及装置
CN110995415A (zh) 一种基于md5算法的加密算法
CN109547194B (zh) 一种基于格的变色龙哈希函数的构造方法
CN1885769B (zh) 数字摘要生成装置和方法,以及ca签名***和方法
Liu et al. A Fast New Cryptographic Hash Function Based on Integer Tent Mapping System.
CN103490876A (zh) 基于超混沌Lorenz***构建Hash函数的数据加密方法
CN106301764B (zh) 基于路径散列的消息摘要方法和***
Endignoux Design and implementation of a post-quantum hash-based cryptographic signature scheme
CN102546159B (zh) 抗查表攻击的随机单向哈希函数构造方法
Wang et al. The design and realization of the single-block hash function for the short message
Sagar Cryptographic Hashing Functions-MD5
CN105281911B (zh) 将任意长度字符串映射到固定大小矩阵的哈希函数方法
Mohanty et al. A secured cryptographic hashing algorithm
Libed et al. Enhancing MD5 Collision Susceptibility
Lamberger et al. Optimal covering codes for finding near-collisions

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20090422