利索能及
我要发布
收藏
专利号: 2013104911502
申请人: 重庆科技学院
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于超混沌Lorenz系统构建Hash函数的数据加密方法,其特征在于包括以下步骤:步骤1:设置计数器i=1,设置两个长度为128比特的密钥K1和K1',K1≠K1',并将任意长度的消息明文M以128比特为一个单位分解为L组,即M=M1||M2||···||ML,消息明文M分解时,位数不足填充0;

步骤2:将 作为第一输入值,将 作为第二输入值,通过一个G函数得出Ki+1,另外将 作为第一输入值,将 作为第二输入值,通过一个G函数得出Ki+1';

步骤3:判断i+1是否大于L,如果不大于,则设置i=i+1,返回步骤2;如果大于,则进入步骤4;

步骤4:将Ki+1作为第一输入值,将Ki+1'作为第二输入值,通过一个G函数得出Hout,Hout即是任意长度消息明文M的单向Hash值;

其中:所述步骤2中的Mi表示消息明文M分解时的第i个分组;

所述步骤2和步骤4中的G函数为带有两个输入和一个输出的函数运算模块,该函数运算模块中嵌入有四维超混沌Lorenz系统。

2.根据权利要求1所述的基于超混沌Lorenz系统构建Hash函数的数据加密方法,其特征在于:所述步骤2和步骤4中的G函数的第一输入H1和第二输入H2均为128比特,具体运算过程如下:S1:按照8比特长度将第一输入H1和第二输入H2分别分解为16个分组,即:H1=H1,1||H1,2||···||H1,16;

H2=H2,1||H2,2||···||H2,16;

S2:按照:

k=(t1+t2+t3+t4)×16.6/(4×256);

分别计算系统参数x0,y0,z0,u0,k,N;

S3:按照:

建立四维超混沌Lorenz系统,并设置参数a=10,b=8/3,c=28;

S4:从S2中计算所得的x0,y0,z0,u0出发,利用参数a,b,c,k迭代N次得到第N个状态点xN,yN,zN,uN;

S5:计算

S6:计算

S7:计算:

并分别将其表示为二进制形式:

d

x =0.bx,1bx,2···bx,32;

d

y =0.by,1by,2···by,32;

d

z =0.bz,1bz,2···bz,32;

d

u =0.bu,1bu,2···bu,32;

S8:将bx,1bx,2···bx,32,by,1by,2···by,32,bz,1bz,2···bz,32,bu,1bu,2···bu,32连接成128比特的整数并左移21位得到G函数的输出;

上述步骤中的运算符A<<α表示循环左移α位,A>>α表示循环右移α位, 表示异或操作,A||B表示连接操作,floor(x)表示向下求整运算,mod(x)表示整除x后求余数运算。