1.基于DNA编码和混沌的多图像加密方法,其特征在于,包括如下步骤:步骤1:令k幅m×n大小的交互图像为I1, I2, …, Ik,计算二维Logistic映射的初始值x0、y0和分段线性混沌映射(Piecewise Linear Chaotic Map,PWLCM)的初始值z0和控制参数p;
步骤2:利用x0、y0、z0、p、二维Logistic和PWLCM映射,产生三个混沌序列X4mn={Xt}、Y4mn={ Yt}和Zmn={Zt};
步骤3:对I1, I2, ..., Ik进行DNA编码,得DNA序列矩阵为I11, I21, …, Ik1,编码规则如下:;
步骤4:进行整数化混沌序列操作;具体为,基于X4mn、Y4mn和Zmn计算得整数矩阵为X'=[X'(i, j)]m×4n、Y'=[Y'(i, j)]m×4n和Z'=[Z'(i, j)]m×n,
16
X'(i, j)=mod(floor(Xt×10 ), k-1), (1)其中,Xt∈X4mn,t=1, 2, …, 4mn,i=1, 2, …, m和j=1, 2, …, 4n,mod(·)表示取模运算,floor(·)表示向下取整函数;
Y'(i, j)=mod(floor(Yt×1016), 5), (2)其中,Yt∈Y4mn,t=1, 2, …, 4mn,i=1, 2, …, m和j=1, 2, …, 4n;
Z'(i, j) =mod(floor(Zt×1016), 256), (3)其中,Zt∈Z4mn,t=1, 2, …, mn,i=1, 2, …, m和j=1, 2, …, n;采用步骤3的编码规则,对所有Z'(i, j)进行DNA编码,并转化为矩阵Z''=[Z''(i, j)]m×4n;
步骤5:进行DNA编码位置置乱操作;具体为,对I11, I21, …, Ik1进行如下循环移位运算,令X'(i, j)=r,X'(i, j)∈X',, (4)
其中,i=1, 2, …, m和j=1, 2, …, 4n,置乱结果记作:I12, I22, …, Ik2;
步骤6:进行DNA加法运算操作;具体为,针对每个像素,将其低4位加到高4位上;令k幅图像对应的计算结果为:I13, I23, …, Ik3;
步骤7:为实现图像像素值扩散,进行DNA编码碱基改变操作;具体为,设计了一种基于DNA编码的混合运算为:, (5)
其中,i=1, 2, …, m,j=1, 2, …, 4n,t=1, 2, …, k,Complement(·),+,-和⊕分别表示DNA取补、加法、减法和XOR异或运算,Y'(i, j)为Y'的任一元素,Z''(i, j)为Z''的任一元素;令k幅图像对应的计算结果为:I14, I24, …, Ik4;
步骤8:采用步骤3的编码规则,对I14, I24, …, Ik4进行DNA解码,得k幅加密图像E1, E2, …, Ek。
2.根据权利要求1 所述的方法,其特征在于:所述步骤1 中,按照给定的顺序,将k幅m×n大小的交互图像I1, I2, …, Ik组合成一幅大图像;利用SHA-256,计算大图像的哈希散列值K;将K按照每8 位(Bit)划分成位块,即K=k1,k2,…, k32; (6)计算二维Logistic映射的初始值为:, (7), (8)其中,x'0和y'0为二维Logistic映射预先设定的初始值,⊕表示XOR异或运算;
计算PWLCM的初始值z0和控制参数p为:
, (9)
, (10)
其中,z'0为PWLCM预先设定的初始值。
3.根据权利要求1 所述的方法,其特征在于:所述步骤2 中,利用初始值x0和y0,对二维Logistic映射迭代4mn次,产生两个混沌序列X4mn和Y4mn;同时,利用初始值z0和控制参数p,对PWLCM迭代mn次,产生一个混沌序列Zmn。