数据摘要系统技术方案

技术编号:33797080 阅读:35 留言:0更新日期:2022-06-16 10:00
本发明专利技术提供了一种数据摘要系统,包括:数据摘要系统将明文数据作为参数输入至能够生产无限数据序列的表达式中,生成与所述明文数据相关的数据序列,进行数字签名的摘要计算。可以使用比较简单的算法实现较长的摘要长度,安全可靠性更高。本发明专利技术只需要对明文数据进行单次逻辑运算即可生成任意长度的摘要,相对于现有摘要算法,可以以较低的复杂度生成更长的摘要。摘要。摘要。

【技术实现步骤摘要】
数据摘要系统


[0001]本专利技术涉及数字签名
,特别涉及一种数据摘要系统。

技术介绍

[0002]随着因特网的高速发展,各种信息的传递量与日俱增,各种传输安全问题日益突出。为了保证网络信息交互安全,各种安全保障机制被相继提出,公共密钥基础设施(PKI)体系结构是其中最重要的之一。在PKI体系结构中,公私钥对以及非对称加解密方法是最为核心的基础之一,私钥的安全程度实际上决定了整个PKI体系结构的安全度,也正因为如此,私钥如何安全的从生成器传递到最终使用方,一直是安全方面的焦点问题之一。
[0003]消息摘要算法主要应用在“数字签名”领域,作为对明文的摘要算法。消息摘要是把任意长度的输入揉和而产生长度固定的伪随机输入的算法。消息摘要的主要特点有:无论输入的消息有多长,计算出来的消息摘要的长度总是固定的。消息摘要看起来是“随机的”。只要输入的消息不同,对其进行摘要以后产生的摘要消息也必不相同;但相同的输入必会产生相同的输出。只能进行正向的信息摘要,而无法从摘要中恢复出任何的消息。
[0004]对于特定的摘要算法,摘要长度是固定的,一般认为,摘要的最终输出越长,该摘要算法就越安全。摘要长度和算法复杂度相关。如图1所示,MD5摘要算法初始化一个加密表,然后把明文数据分成固定长度的区块,依次对每一个区块的数据和加密表进行多轮运算来更新加密表,最后的加密表就是运算结果。但是MD5的摘要算法复杂度较大,生成的摘要长度却较短。

技术实现思路

[0005]本专利技术的目的在于提供一种数据摘要系统,以解决现有的摘要算法复杂度较大,生成的摘要长度却较短的问题。
[0006]为解决上述技术问题,本专利技术提供一种数据摘要系统,包括:所述数据摘要系统将明文数据输入至能够生成无限数据序列的表达式中,生成与所述明文数据相关的数据序列进行摘要计算。
[0007]可选的,在所述的数据摘要系统中,所述数据摘要系统包括:
[0008]输入数据模块,被配置为将明文数据输入至无限数据序列计算模块中;
[0009]无限数据序列计算模块,被配置为将明文数据代入无限数据序列中计算,得到摘要逻辑输入值,并将摘要逻辑输入值提供至摘要逻辑运算模块;
[0010]摘要逻辑运算模块,被配置为将摘要逻辑输入值代入摘要逻辑运算式,以得到摘要逻辑输出值,并将摘要逻辑输出值提供至摘要表迭代模块;
[0011]摘要表迭代模块,被配置为摘要逻辑输出值进行摘要表的迭代。
[0012]可选的,在所述的数据摘要系统中,所述数据摘要系统还包括:
[0013]初始化模块,被配置为将摘要表进行初始化,得到初始化的摘要表;
[0014]摘要表迭代模块从所述初始化的摘要表开始迭代;
[0015]初始化的摘要表为特定值。
[0016]可选的,在所述的数据摘要系统中,所述无限数据序列计算模块根据线性同余法得到线性同余计算式,将明文数据以某种运算方式加入到线性同余计算式中,生成和明文数据相关的无限数据序列。
[0017]可选的,在所述的数据摘要系统中,所述线性同余法包括:
[0018]由递推关系定义线性同余计算式为Xn+1=(aXn+c)mod m;
[0019]其中,Xn为序列中第n个数据;
[0020]m为模数,作为生成序列的最大周期,m>0;
[0021]a为乘数,0<a<m;
[0022]c为增量,0≤c<m;
[0023]确定线性同余计算式的参数m、a及c。
[0024]可选的,在所述的数据摘要系统中,明文数据以某种运算方式加入到线性同余计算式中包括:
[0025]将明文数据与线性同余计算式中的序列数据进行异或运算、加运算、减运算或同或运算后,作为序列数据重新代入;或
[0026]将明文数据与线性同余计算式中的乘数进行异或运算、加运算、减运算或同或运算后,作为无限数据序列的乘数重新代入;或
[0027]将明文数据与线性同余计算式中的增量进行异或运算、加运算、减运算或同或运算后,作为无限数据序列的增量重新代入。
[0028]可选的,在所述的数据摘要系统中,无限数据序列为:
[0029]Sn+1=Fs(Sn,dat)=(1103515245*(Sn

dat)+12345)mod 2^31,
[0030]S0=Seed=12345,其中:
[0031]dat为明文数据,Fs(Sn,dat)为无限数据序列,S0为伪随机序列初始值;
[0032]当dat固定为0时,Fs(Sn,dat)为glibc的伪随机数生成机制使用的线性同余计算式。
[0033]可选的,在所述的数据摘要系统中,将摘要逻辑输入值代入摘要逻辑运算式得到摘要逻辑输出值包括:
[0034]由一个明文数据生成一个或多个无限数据序列的伪随机序列,作为一个或多个摘要逻辑输入值代入摘要逻辑运算式,得到一个或多个摘要逻辑输出值;
[0035]摘要逻辑运算式为:Rn=Fr(Sn)=Sn>>15;
[0036]其中:Sn为伪随机序列,Fr(Sn)为摘要逻辑运算式,表示使用伪随机序列中数据的bit30~bit15作为结果,Rn为摘要逻辑输出值。
[0037]可选的,在所述的数据摘要系统中,摘要逻辑输出值进行摘要表的迭代包括:
[0038]每个明文数据得到的摘要逻辑输出值更新部分或整个摘要表;更新部分摘要表包括:
[0039]把摘要表分为y个部分,每个明文数据更新其中一个部分;
[0040]摘要长度为256bit、384bit、512bit或1024bit等。
[0041]可选的,在所述的数据摘要系统中,摘要表迭代模块还被配置为使用特定值最后一次更新整个摘要表。
[0042]在本专利技术提供的数据摘要系统中,通过数据摘要系统将明文数据输入至能够生成无限数据序列的表达式中,使生成与所述明文数据相关的数据序列,进行摘要计算,可以使用比较简单的算法实现较长的摘要长度,安全可靠性更高。本专利技术只需要对明文数据进行单次逻辑运算即可生成任意长度的摘要,相对于现有摘要算法,可以以较低的复杂度生成更长的摘要。
附图说明
[0043]图1是现有的MD5数据摘要算法原理示意图;
[0044]图2是本专利技术一实施例数据摘要系统示意图;
[0045]图3是部分常用线性同余法参数;
[0046]图4是本专利技术一实施例数据摘要系统摘要计算结果统计示意图;
[0047]图5是本专利技术一实施例数据摘要系统中摘要计算结果局部放大示意图;
[0048]图中所示:10

输入数据模块;20

无限数据序列计算模块;30

摘要逻辑运算模块;40

摘要表迭代模块;50

初始化模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据摘要系统,其特征在于,所述数据摘要系统将明文数据作为参数输入至能够生成无限数据序列的表达式中,生成与所述明文数据相关的数据序列,进行摘要计算。2.如权利要求1所述的数据摘要系统,其特征在于,所述数据摘要系统包括:输入数据模块,被配置为将明文数据输入至无限数据序列计算模块中;无限数据序列计算模块,被配置为将明文数据代入无限数据序列中计算,得到摘要逻辑输入值,并将摘要逻辑输入值提供至摘要逻辑运算模块;摘要逻辑运算模块,被配置为将摘要逻辑输入值代入摘要逻辑运算式,以得到摘要逻辑输出值,并将摘要逻辑输出值提供至摘要表迭代模块;摘要表迭代模块,被配置为摘要逻辑输出值进行摘要表的迭代。3.如权利要求2所述的数据摘要系统,其特征在于,所述数据摘要系统还包括:初始化模块,被配置为将摘要表进行初始化,得到初始化的摘要表;摘要表迭代模块从所述初始化的摘要表开始迭代;初始化的摘要表为特定值。4.如权利要求2所述的数据摘要系统,其特征在于,所述无限数据序列计算模块根据线性同余法得到线性同余计算式,将明文数据以某种运算方式加入到线性同余计算式中,生成和明文数据相关的无限数据序列。5.如权利要求4所述的数据摘要系统,其特征在于,所述线性同余法包括:由递推关系定义线性同余计算式为Xn+1=(aXn+c)mod m;其中,Xn为序列第n个数值;m为模数,作为生成序列的最大周期,m>0;a为乘数,0<a<m;c为增量,0≤c<m;确定线性同余计算式的参数m、a及c。6.如权利要求5所述的数据摘要系统,其特征在于,明文数据以某种运算方式加入到线性同余计算式中包括:将明文数据与线性同余计算式中的序列数值进行异或运算、加运算、减运算或同或运算后,作为序...

【专利技术属性】
技术研发人员:倪永良
申请(专利权)人:华大半导体有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1