CN106301764A - 基于路径散列的消息摘要方法和系统 - Google Patents

基于路径散列的消息摘要方法和系统 Download PDF

Info

Publication number
CN106301764A
CN106301764A CN201610880319.7A CN201610880319A CN106301764A CN 106301764 A CN106301764 A CN 106301764A CN 201610880319 A CN201610880319 A CN 201610880319A CN 106301764 A CN106301764 A CN 106301764A
Authority
CN
China
Prior art keywords
path
packet
eap
hash
sequence
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.)
Granted
Application number
CN201610880319.7A
Other languages
English (en)
Other versions
CN106301764B (zh
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.)
Shanghai Niwa Communication Technology Co Ltd
Original Assignee
Shanghai Niwa Communication Technology Co Ltd
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 Shanghai Niwa Communication Technology Co Ltd filed Critical Shanghai Niwa Communication Technology Co Ltd
Priority to CN201610880319.7A priority Critical patent/CN106301764B/zh
Publication of CN106301764A publication Critical patent/CN106301764A/zh
Application granted granted Critical
Publication of CN106301764B publication Critical patent/CN106301764B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明主要涉及到信息安全和信息标识领域,信息通过分组、分组路径散列、结果序列调和路径散列计算,最后生成消息摘要。按位分组和路径散列是系统的主要特征。按k分组表示每k bit作为一个基本单元,多个单元组成一组参与分组路径散列计算。路径散列计算指的是计算需要按指定的路径、指定的路径深度进行,并且每个分组信息会影响路径设定的多个元素,从而达到散列的目的。基于路径散列的消息摘要方法和系统,可以扩展和衍生不同的摘要算法,通过不同的分组,不同的变换序列,不同的路径散列算法,均可以产生不同的消息摘要,从而满足不同的安全需求。消息分组使得系统能够处理大容量的信息,路径散列计算结合k分组可以实现k乘以2的k次方bit的消息摘要。

Description

基于路径散列的消息摘要方法和系统
技术领域
本发明主要涉及到信息安全和信息标识领域,实现一种基于路径散列的消息摘要的方法和系统。
背景技术
消息摘要算法的主要特征是加密过程不需要密钥,并且经过加密的数据无法被解密。著名的摘要算法有RSA公司的MD5算法和SHA-1算法及其大量的变体,中国国家密码管理局编制的SM3。
消息摘要算法具有不可逆性,其主要功能有数据签名、数据完整性校验等。常见的消息摘要算法有:
Cyclical Redundancy Check,循环冗余校验。现在应用最多的就是CRC32算法,它产生一个4字节(32位)的校验值,一般是以8位十六进制数,如FA 12CD 45等。CRC算法的优点在于简便、速度快,严格的来说,CRC更应该被称为数据校验算法,但其功能与消息摘要算法类似,因此也作为测试的可选算法。
Adler-32是Mark Adler发明的校验和算法,和32位CRC校验算法一样,都是保护数据防止意外更改的算法,但是这个算法较容易被伪造,所以是不安全的保护措施。但是比CRC好点的是,它计算得很快。这个算法那是从Fletcher校验和算法中修改过来的,原始的算法形式略快,但是可依赖性并不高。
Message-Digest Algorithm 5,消息摘要算法版本5。由Ron Rivest(RSA公司)在1992年提出,目前被广泛应用于数据完整性校验、数据(消息)摘要、数据加密等。MD2、MD4、MD5都产生16字节(128位)的校验值,一般用32位十六进制数表示。MD2的算法较慢但相对安全,MD4速度很快,但安全性下降,MD5比MD4更安全、速度更快。
SHA(Secure Hash Algorithm)是由美国专门制定密码算法的标准机构——美国国家标准技术研究院(NIST)制定的,SHA系列算法的摘要长度分别为:SHA为20字节(160位)、SHA256为32字节(256位)、SHA384为48字节(384位)、SHA512为64字节(512位),由于它产生的数据摘要的长度更长,因此更难以发生碰撞,因此也更为安全,它是未来消息摘要算法的发展方向。目前SHA1的应用较为广泛,主要应用于CA和数字证书中,另外在目前互联网中流行的BT软件中,也是使用SHA1来进行文件校验的。
中国国家密码管理局编制的SM3适用于商用密码应用中的数字签名和验证,消息认证码的生成与验证以及随机数的生成,此算法对输入长度小于2的64次方的比特消息,经过填充和迭代压缩,生成长度为256比特的杂凑值,其中使用了异或,模,模加,移位,与,或,非运算,由填充,迭代过程,消息扩展和压缩函数所构成。
消息摘要的主要特点有:
无论输入的消息有多长,计算出来的消息摘要的长度总是固定的。一般认为,摘要的最终输出越长,该摘要算法就越安全。
消息摘要是伪随机的。不同的输入会有不同的输出,而且输出的摘要消息可以通过随机性检验。用相同的算法对相同的消息求两次摘要,其结果必然相同。
一般只要输入的消息不同,对其进行摘要以后产生的摘要消息也必不相同;但相同的输入必会产生相同的输出。这正是好的消息摘要算法所具有的性质:输入改变了,输出也就改变了;两条相似的消息的摘要确不相近,甚至会大相径庭。
消息摘要函数是无陷门的单向函数,即只能进行正向的信息摘要,而无法从摘要中恢复出任何的消息,甚至根本就找不到任何与原信息相关的信息。
好的摘要算法,没有人能从中找到“碰撞”,虽然“碰撞”是肯定存在的。即对于给定的一个摘要,不可能找到一条信息使其摘要正好是给定的。即无法找到两条消息,使它们的摘要相同。
事实上,2004年8月17日的美国加州圣巴巴拉,正在召开的国际密码学会议(Crypto’2004)安排了三场关于杂凑函数的特别报告。在国际著名密码学家Eli Biham和Antoine Joux相继做了对SHA-1的分析与给出SHA-O的一个碰撞之后,来自山东大学的王小云教授做了破译MD5、HAVAL-128、MD4和RIPEMD算法的报告。2009年谢涛和冯登国仅用了220.96的碰撞算法复杂度,破解了MD5的碰撞抵抗,该攻击在普通计算机上运行只需要数秒钟。
本发明公开基于路径散列的消息摘要方法和系统实现通过信息分组、路径散列计算、结果序列调和散列,结合输出字符串的设定,从而输出的消息摘要。该方法可以扩展和衍生不同的摘要算法,不同的分组,不同的变换序列,不同的路径选择算法,不同的散列算法均可以产生不同的消息摘要。基于路径散列的消息摘要算法和分组的位数关联,例如6bit分组,表示摘要信息的最小存储单元为0到2的6次方减一,即0到63,对应的消息摘要大小为64个6bit的单元组成,构成的消息摘要为384位,设定64个字符代表0到63个单元,输出的消息摘要为64个字符。
发明内容
本发明公开一种基于路径散列的消息摘要方法和系统,消息经过分组,对分组序列进行路径散列计算,循环计算完毕,对消息摘要结果再进行调和路径散列计算,消息摘要计算的结果通过字符串形式输出。分组有利于大容量的信息的处理,消息分组结合路径散列算法,使得运算的结果不可逆。
基于路径散列的消息摘要方法和系统主要包括:消息摘要和路径规划方法;分组,分组散列,调和散列算法和摘要的字符串输出等系统。
消息摘要包括:摘要的长度,摘要的存储单元的大小。消息摘要的描述为S[i],i从0到2的k次方减一。假定信息分组的bit数定义k,S[i]的值小于2的k次方减一。
变换序列,变换序列的大小等于消息摘要的大小,单元值为0到2的k次方减一,每个单元选取的值不同。
路径规划包括:分组散列路径规划,调合散列的路径规划。
分组散列路径规划:散列路径选择,主要约束条件包括分组序号、该序号对应变换序列的路径和路径深度;再散列路径选择,在前一次的基础之上,考虑分组信息对应值,构成扰动散列路径。
调合散列是对分组散列结果再散列的过程。该散列计算的路径规划,同样也需要规划路径深度,路径算法等。
散列计算单元主要包括:分组信息,对应路径节点变换序列的值,对应路径节点消息摘要结果的值。
消息的分组是算法的初始环节,满足消息摘要规划的要求,对消息按bit位进行分组。计算机输入的字符的最小单元为字符型,字符型占位为8个bit,假定摘要存储单元的大小为k个bit,则分组规则如下:
分组数为h,选取的字符个数为g,则有g*8=h*k。分组每次选取g个字符,分组后产生h个k bit的单元;分组序列定义为Di[h],i表示输入序列的第i个分组。
分组计算通过位运算进行,输入信息按消息摘要存储单元bit的要求,依次选取放入分组序列。对消息进行分组的方式有多种,主要取决于选取消息的步长的设定:
等分分组。每h个字符为一组,步长为h;
渐进分组。每h个字符为一组,步长为1;
等差分组。每h个字符为一组,步长小于h,大于0;
其它分组。每h个字符为一组,步长由给定规则设定,步长小于h,大于0。
消息摘要的算法从分组开始,分组后对分组的信息进行分组散列计算。假定分组的数组为Di[j],其中j为0到h-1,对分组数组进行散列计算。计算步骤如下:
循环从0到h-1;
一次散列计算,散列计算按路径选择策略结合散列算法实施。
路径规划。假定变换序列为R,k为分组信息的位数,R含有2的k次方个单元,元素取值范围为0到2的k次方减一;
循环设定。设定循环的次数,假定为p次,p为路径深度;
分组散列计算。分组信息Di[h],对h进行循环运算。
分组一次散列的路径规划方法有:
直接方法。第一步选取R[i]单元,即对应消息摘要S[R[i]]。定义Pt=R[i];下一步选取R[Pt]单元,即S[R[Pt]],设定Pt=R[Pt];依次选取,直到p次循环结束。
规则路径选择。定义规则F(i),表示第i步的选取,消息摘要选择S[F(i)],设定Pt=F(i);下一步选取F(Pt),消息摘要选择S[F(Pt)],设定Pt=F(Pt);依次选取,直到p次循环结束。
散列计算,计算的结果存入消息摘要存储序列S。散列计算的方法如下:
二元散列计算。输入的信息的单元Di[h],位于选择节点的消息摘要单元S[i];
多元散列计算。从输入信息单元Di和消息摘要S序列中按规则选取n个参与计算。
计算公式的选取。选取计算的方法,对参与计算的单元进行计算。
二次散列计算。路径规划中增加可变单元Di[h]。
分组二次散列的路径规划方法有:
直接方法。第一步选取消息摘要的R[Di[h]]单元,定义Pt=R[Di[h]];下一步选取R[Pt]单元,设定p=R[Pt];依次选取,直到p次循环结束。
规则路径选择。定义规则Rf(i,Di[h]),表示第i步的选取,设定Pt=Rf(i,Di[h]);下一步选取Pt=R[Pt];依次选取,直到p次循环结束。
散列计算,计算的结果存入消息摘要存储序列。散列计算的方法如下:
二元散列计算。变换序列R[i],S[i];
多元散列计算。从R和S中按规则选取n个参与计算。
计算公式的选取。选取计算的方法,对参与计算的单元进行计算。
分组计算结束,进行调和散列计算。
调和散列计算主要的方法:
简单的线性调和。设定规则选取多个元素,线性调和计算即可;
路径线性调和。按变换序列选取多个元素,线性调和计算即可。
消息摘要序列的字符串输出,定义字符串表示,定义2的k次方个字符表示Ch[n],其中n表示为0到2的k次方减一;S[i]的消息摘要输出为Ch[S[i]],其中i表示为0到2的k次方减一。
基于路径散列的消息摘要方法和系统,经过分组、分组散列、调和散列到摘要的字符串表示,实现了不可逆的消息摘要的生成方法。
附图说明
图1基于路径散列的消息摘要的系统流程
图2路径散列计算的示意图
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。附图1给出基于路径散列计算的系统流程,包括:消息分组,分组散列,调和散列和消息摘要字符串输出等环节。
本发明实施步骤如下:
首先为基本的设定,主要包括:消息摘要设定,变换序列设定,输出字符串设定,路径计算函数设定;
消息摘要的特征设定。消息摘要S[i],i=0到n-1,其中n为数组的大小,元素的值S[i]大于0,小于n-1,要求n为2的整数次幂,可选n等于2的k次方。
设定变换序列,R[i],i=0到n-1,其中n为数组的大小,元素的值R[i]大于0,小于n-1,要求每个元素需要取不同的值,n等于2的k次方。
输出字符串的设定。定义字符串Ch,字符串长度为2的k次方,Ch[i],i为0到2的k次方减一,用不同的字符表示;
路径散列计算方法是系统的核心,附图2给出路径散列的示意图。主要包括路径规划,选取计算单元,选择散列算法。路径规划包括变换序列,路径选择算法,路径深度的设定。
路径函数定义。F(i),i为0到2的k次方减一,简单的路径函数F(i)=R[F(i-1)]。
再散列路径选择。Rf[i,Di[h]],i为0到2的k次方减一;简单的路径函数Rf[i]=R[Rf(i-1,Di-1[h])],i为分组信息的序号,即第i个分组;h为分组信息Di[h]中的第h元素;Rf为i和Di[h]的函数。
消息分组主要包括:分组的位数,和消息选取的步长。选取的步长大于等于1,不大于分组要求选取字符个数的要求。
消息进行分组的方式有多种,分组大小为h,k为分组位数,选取的字符个数为g,主要取决于选取消息的步长的设定:
等分分组。每g个字符为一组,步长为g;
渐进分组。每g个字符为一组,步长为1;
等差分组。每g个字符为一组,步长小于g,大于0;
其它分组。每g个字符为一组,步长由给定规则设定,步长小于g,大于0。
分组大小计算,分组大小为h,选取的字符个数为g,则有g*8=k*h,分组序列定义为Di[h],i表示输入序列的第i个分组。
信息分组规则。从原始信息中按位选取g位,变换为h个k位组成一组。
散列结果存储序列S[i],i=0到n-1;其中n为数组的大小,n等于2的k次方。定义参照变换序列,初始化值等于变换序列。S[i]为消息摘要序列。
分组散列;整个循环为分组信息的大小,循环h次。循环内一般进行两次散列计算。
散列,按路径算法选择参与计算的值S[F(i)],Di[h],假定路径函数为F(i),路径深度为p,算法为H(S[i],Di[h]),则下列计算循环p次;
Pt=F(i),S[Pt]=H(S[Pt],DPt[h]);
选择下一步路径,F(i+1)=R[F(i)],即Pt=R[Pt],重复上一步计算,直到满足循环条件即可。
再散列。按路径算法选择参与计算的值Rf(i,Di[h]),路径深度为p,算法为H(S[i],R[i]),则下列计算循环p次:
Pt=Rf(i,Di[h]),S[Pt]=H(S[Pt],R[Pt]);
选择下一步路径,Pt=R[Pt],重复上一步计算,直到满足循环条件即可。
摘要调和散列;定义输出序列为O[i],大小等于摘要序列的大小,摘要序列为S[i],则有:
调和计算单元为S[i]和O[i];
赋初值,O[i]=S[i],计算路径选择,定义计算路径深度为p,算法为H(O[i],S[Pt]),则循环p次:
Pt=F(i),O[i]=H(O[i],S[Pt]);
选择下一步路径,Pt=R[Pt],重复上一步计算,直到满足循环条件即可。
把O[i]复制到S[i]。
结果输出。定义字符串表示,k位分组对应0到2的k次方减一,定义2的k次方个字符表示,Ch[n],其中n表示为0到2的k次方减一;S[i]的消息摘要输出为Ch[S[i]],其中i表示为0到2的次方减一。
以上是基于路径散列的消息摘要方法和系统实施。
结合该方法下面给出6位分组,摘要序列为384位的基于路径散列的消息摘要方法的实例,实例命名zy6。
6位分组384消息摘要算法,提供384位的消息摘要。
本实例选取的变换序列。R[64]={63,0,34,17,58,23,16,2,59,55,56,7,47,61,8,4,8,25,48,3,37,41,1,32,39,57,33,30,18,45,14,28,5,60,5,40,43,53,10,20,49,35,62,31,6,24,22,26,6,29,36,9,11,52,44,13,27,54,19,50,51,12,42,21},并用变换序列初始化摘要序列S[64];
分组算法。确定分组方案,以三个字符为一组,即c[3],每个字符占8位;变换为D[4],每个D[i]占6位,共四个。即c[0]取前6位赋值给D[0];剩下的两位结合c[1]的前四位给D[1];c[1]剩下的四位结合c[2]的前两位复制给D[2];c[2]剩下的6位赋值给D[3]。
简单的描述,即三个8位的结合在一起为24位,按6位分割形成D[4]。
分组选择循环。对原始的信息按每字符循环,首先选取0,1,2;定义选取的步长为1,则下一步选取1,2,3;以此类推。不足位用分组序号i加上组序号h,对64取余填充。即(i+h)%64;i为原始信息的选取顺序,h为D的序号。
分组散列计算。第一层循环为4,循环变量为h,h从0到3,对D[4]进行逐个计算;
如果D[h]大于0,则进行散列计算;
第一次散列,路径深度为4,i为分组序号,h为分组信息序号。则路径Pt有:
初始化Pt=(64-((i+h)%64))%64;
计算赋值。S[Pt]=(S[Pt]+D[h])%64;
路径计算。Pt=R[Pt];
循环四次,完成第一次散列。
再散列。路径深度为4;初始路径为Pt=(Pt+D[h])%64,Pt为一次散列后的路径;
计算赋值。S[Pt]=(S[Pt]+R[Pt])%64;
路径计算。Pt=R[Pt]。
循环四次,完成再散列。
第i分组计算完毕,重复分组选择循环直到所有的信息参与分组散列计算完毕。
调合散列。循环次数64,步长为1,从0到63;
初始化,路径Pt=i;中间结果定义为O[i],O[i]=S[i];
散列计算,循环变量为j,j从0到3,步长为1;
计算O[i]=(O[i]+S[(Pt+j*9)%64])%64;
路径计算。Pt=R[Pt];
计算。O[i]=O[i]%64;
直到调和散列循环结束。
O[i]赋值给S[i],即S[i]=O[i]。
6位分组384消息摘要结果为S[i]。
以下为摘要字符串输出:
定义输出字符串为:
Ch[64]=”0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ=-”;
摘要字符串输出为Ch[S[i]],i从0到63,字符串长度为64。
以下为摘要字符串十六进制输出:
定义输出字符串为:
Ch[16]=”0123456789abcdef”;
摘要字符串输出为Ch[S[i]],i从0到63。
S[i]转换的W[i],即64个6位数组,转换为48个8位数组;
W[i]高4位Wh[i],低位为Wl[i],输出字符串为Ch[Wh[i]]加上Ch[Wl[i]];
遍历W[i],最后生成96个字符串。

Claims (9)

1.基于路径散列的消息摘要方法和系统,主要特征包括:
首先设定变换序列,消息摘要,路径规划方法,然后消息分组,分组散列,调和散列,最后输出消息摘要字符串。
消息分组和路径散列算法是系统的主要特征。
2.基于权利1的分组方法主要特征如下:
分组指的是按计算机的bit个数分组,有k位的定义为k分组。假定分组数为h,选取的字符个数为g,则有g*8=h*k,分组序列定义为Di[h],i表示输入序列的第i个分组。
设定选取的步长,把输入的信息分成若干组,每组需要满足分组的要求,不足的需要补充,一般补充该分组的序号加上补偿元素的序号和分组大小取余即可。假定分组序号为i,需要补充的序号为h,分组序列为Di,变换序列的大小为n,n为2的k次方,则有补充的元素Di[h]=(i+h)%n,%表示取余运算。
3.基于权利1的变换序列,其特征在于:
变换序列主要用于路径选择。定义为R[i],有2的k次方个元素,k为分组的位数;变换序列需要表示所有的k bit分组的值,即变换序列的值为0到2的k次方减一。
R[i]为i节点的下一个节点,依此定义路径。
4.基于权利1的消息摘要,其特征在于:
有2的k次方个元素,k为分组的位数,值为0到2的k次方减一。初始化值可以为变换序列的值,也可以另外设定。
消息摘要存储路径散列计算的结果,定义为S[i],i为0到2的k次方减一。
5.根据权利1描述,路径散列算法的特征在于:
路径规划,选定计算单元,算法选定。输入的信息会影响路径规划的p个单元,p为路径的深度,具体的影响由算法H决定。
6.基于权利5描述的路径规划特征在于:
变换序列R,深度为p,选择函数F。一元路径选择定义F(i+1)=R[F(i)]。
变换序列R,深度为p,选择函数Rf。二元路径选择定义Rf(i+1,j+1)=R[Rf(i,j)],j为扰动散列因子。考虑分组序列的扰动,选择算法定义为Rf(i+1,Di+1[h])=R[Rf(i,Di[h])]。
多元路径选择与二元路径选择类似。
7.基于权利1的分组散列,其特征在于:
分组信息散列。分组信息Di[h],对h进行循环运算。
计算单元来自于消息摘要序列S[i],分组信息Di[h],路径规划见权利6的要求。假定路径选择为一元路径选择算法,即F(i+1)=R[F(i)]。
分组信息再散列。计算单元来自于消息摘要序列,变换序列,路径规划见权利6的要求,假定路径选择为二元路径选择算法,即Rf(i+1,Di+1[h])=R[F(i,Di[h]]。
假定算法为H(S[i],Di[h]),则有S[i]=H(S[i],Di[h]),h为分组信息的大小。
分组散列算法表示如下:
按路径算法选择参与计算的值S[F(i)],Di[h],路径规划见权利6的要求,假定路径函数为F(i),路径深度为p,算法为H(S[i],Di[h]),则下列计算循环p次;
Pt=F(i),S[Pt]=H(S[Pt],Di[h]);
选择下一步路径,F(i+1)=R[F(i)],即Pt=F(i+1)=R[F(i)],重复上一步计算,直到满足循环条件即可。
再散列。按路径算法选择参与计算的值S[Pt],路径规划见权利6的要求,假定Rf为i和Di[h]的二元路径选择函数,路径深度为p,算法为H(S[i],R[i]),则下列计算循环p次:
Pt=Rf(i,Di[h]),S[Pt]=H(S[Pt],R[i]);
选择下一步路径,即Pt=R[Pt],重复上一步计算,直到满足循环条件即可。
8.基于权利1的调合散列,其特征在于:
对消息摘要序列的值按路径散列的算法进行计算,调合散列运算单元为消息摘要序列中的值。路径规划见权利6的要求,假定路径选择为一元路径选择算法F(i),计算方法定义H(O[i],S[Pt])。具体描述如下:
定义输出序列为O[i],大小等于摘要序列的大小,摘要序列为S[i],则有:
调和计算单元为S[i],O[i];
赋初值,O[i]=S[i];
计算路径选择,路径规划见权利6的要求,定义计算路径深度为p,则循环p次:
路径选取Pt=F(i);
O[i]=H(O[i],S[Pt]);
选择下一步路径,即Pt=R[Pt],重复上一步计算,直到满足循环条件即可。
把O[i]复制到S[i]。消息摘要序列为S[i]。
9.基于权利1的消息摘要输出,其主要特征在于:
定义字符串表示,定义2的k次方个字符表示Ch[n],其中n表示为0到2的k次方减一;S[i]的消息摘要输出为Ch[S[i]],其中i表示为0到2的k次方减一。
例如:6bit分组的摘要算法,消息摘要长度为6乘以2的6次方,共计384bit,字符串表示可以选取:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ=-消息摘要转换为标准的8位后,用十六进制表示输出,字符串表示为0123456789abcdef。
CN201610880319.7A 2016-10-09 2016-10-09 基于路径散列的消息摘要方法和系统 Active CN106301764B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610880319.7A CN106301764B (zh) 2016-10-09 2016-10-09 基于路径散列的消息摘要方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610880319.7A CN106301764B (zh) 2016-10-09 2016-10-09 基于路径散列的消息摘要方法和系统

Publications (2)

Publication Number Publication Date
CN106301764A true CN106301764A (zh) 2017-01-04
CN106301764B CN106301764B (zh) 2020-09-25

Family

ID=57717621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610880319.7A Active CN106301764B (zh) 2016-10-09 2016-10-09 基于路径散列的消息摘要方法和系统

Country Status (1)

Country Link
CN (1) CN106301764B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108718314A (zh) * 2018-06-01 2018-10-30 北京兰云科技有限公司 一种网络报文的完整性检测方法和装置
CN114125915A (zh) * 2022-01-26 2022-03-01 舟谱数据技术南京有限公司 针对设定终端app应用的定位热修复系统和方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237320A (zh) * 2008-02-04 2008-08-06 西安理工大学 利用无穷维超混沌构造单向散列函数进行密码保护的方法
CN101741560A (zh) * 2008-11-14 2010-06-16 北京石油化工学院 基于整数非线性映射的散列函数构造方法
CN102412961A (zh) * 2010-09-19 2012-04-11 联芯科技有限公司 生成消息摘要的方法及系统
CN102761414A (zh) * 2011-04-26 2012-10-31 航天信息股份有限公司 一种sm3密码杂凑算法及确定其中的变量字的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237320A (zh) * 2008-02-04 2008-08-06 西安理工大学 利用无穷维超混沌构造单向散列函数进行密码保护的方法
CN101741560A (zh) * 2008-11-14 2010-06-16 北京石油化工学院 基于整数非线性映射的散列函数构造方法
CN102412961A (zh) * 2010-09-19 2012-04-11 联芯科技有限公司 生成消息摘要的方法及系统
CN102761414A (zh) * 2011-04-26 2012-10-31 航天信息股份有限公司 一种sm3密码杂凑算法及确定其中的变量字的方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108718314A (zh) * 2018-06-01 2018-10-30 北京兰云科技有限公司 一种网络报文的完整性检测方法和装置
CN108718314B (zh) * 2018-06-01 2021-09-07 北京兰云科技有限公司 一种网络报文的完整性检测方法和装置
CN114125915A (zh) * 2022-01-26 2022-03-01 舟谱数据技术南京有限公司 针对设定终端app应用的定位热修复系统和方法
CN114125915B (zh) * 2022-01-26 2022-04-12 舟谱数据技术南京有限公司 针对设定终端app应用的定位热修复系统和方法

Also Published As

Publication number Publication date
CN106301764B (zh) 2020-09-25

Similar Documents

Publication Publication Date Title
CN106663387B (zh) 加密函数和解密函数生成方法、加密和解密方法以及相关装置
US8787563B2 (en) Data converter, data conversion method and program
CN101674180B (zh) 一种伪随机序列产生方法及加密方法
CN108768656B (zh) 一种基于哈希算法的数据校验方法
CN110138549B (zh) 一种基于格的数字签名方法
CN110999201A (zh) 密码设备和方法
CN101911009B (zh) 用于以签名方案进行非对称加密的对策方法和设备
CN106301764A (zh) 基于路径散列的消息摘要方法和系统
CN105245343A (zh) 一种基于多变量密码技术的在线离线签名系统及方法
CN105824602A (zh) 输入-相依随机数产生装置及其方法
JP5689826B2 (ja) 秘密計算システム、暗号化装置、秘密計算装置及びその方法、プログラム
Zhou et al. Hash function based on controlled alternate quantum walks with memory (September 2021)
CN104618092A (zh) 一种信息加密方法及系统
CN108039944B (zh) 具有前向安全性的揭序加密框架算法
CN115766190B (zh) 一种任意集合元素加密方法、解密方法及电子设备
WO2017103226A1 (en) Improved system for key sharing
Mendel et al. Cryptanalysis of round-reduced HAS-160
US20090022310A1 (en) Cryptographic device and method for generating pseudo-random numbers
Kahri et al. An FPGA implementation of the SHA-3: The BLAKE hash function
Miroschnyk et al. Practical methods for de Bruijn sequences generation using non-linear feedback shift registers
Rastaghi An efficient CCA2-secure variant of the McEliece cryptosystem in the standard model
CN109450618B (zh) 一种基于md5的加密方法及系统
Lu et al. The research and efficient FPGA implementation of Ghash core for GMAC
Sagar Cryptographic Hashing Functions-MD5
Mohanty et al. A secured cryptographic hashing algorithm

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: Room 2597, building 1, 5500 Yuanjiang Road, Minhang District, Shanghai, 201204

Patentee after: SHANGHAI NIWA COMMUNICATION TECHNOLOGY Co.,Ltd.

Patentee after: Zhang Liuxue

Patentee after: Zhang Ningyi

Patentee after: Zhu Xiaojiao

Address before: 201204 Shanghai city Pudong New Area Pengfei 101 Lane Road, Room 601 No. 7

Patentee before: SHANGHAI NIWA COMMUNICATION TECHNOLOGY Co.,Ltd.

Patentee before: Zhang Liuxue

Patentee before: Zhang Ningyi

Patentee before: Zhu Xiaojiao

CP02 Change in the address of a patent holder