1.基于耦合映像格子模型的图像加密方法,其特征在于,包括:
步骤1:利用明文图像P的哈希值和外部密钥计算得到耦合映像格子混沌系统的控制参数和初始值;其中,所述明文图像P的大小为M×N,M为行数,N为列数;按照公式(3)利用明文图像的哈希值和外部密钥计算出耦合映像格子混沌系统的控制参数ε、τ和初始值x0(1)、x0(2)、x0(3):其中,hex2dec(*)表示将十六进制数转成对应的十进制数,H为利用哈希函数SHA‑256生成明文图像P的256位哈希值,按照8位一组,共得到32组,将H表示为H=[h1,h2,...h32];
ε0,τ0和x01,x02,x03是f(*)混沌映射函数下的耦合映像格子混沌系统的外部密钥的控制参数和初始值;
步骤2:根据所述控制参数和初始值迭代耦合映像格子系统,得到f(x)混沌序列记为F={F1,F2,F3}和耦合映像格子混沌序列记为X={X1,X2,X3};
步骤3:利用排序函数分别对序列F1和序列X1进行排序,分别得到对应的索引矩阵findex和xindex,利用索引矩阵findex和xindex对明文图像P进行置乱操作,得到置换图像P″;按照公式(5)所示的排序函数分别对序列F1和序列X1进行排序,分别得到对应的索引矩阵findex和xindex:其中,sort(*)表示对序列进行按升序排序函数,SF1表示序列F1升序排序结果;SX1表示序列X1升序排序结果;
按照公式(6)利用索引矩阵findex和xindex对明文图像P进行置乱操作,得到置换图像:其中,P′表示采用索引矩阵findex对明文图像P进行置换后得到的置换图像;P″表示采用索引矩阵xindex对置换图像P′进行列置后得到的置换图像;
步骤4:将序列F2和序列X2分别转换成0~255的整数序列F′2和X′2,然后将两个整数序列F′2和X′2分别转换成M×N矩阵F″2和X″2,利用得到的两个M×N矩阵F″2和X″2与置换图像P″进行扩散操作,得到扩散图像C′;按照公式(7)将序列F2和序列X2转换成0~255的整数序列F′2和X′2:其中,floor(*)表示向下取整函数,mod表示取模运算,i=1,2,3…,MN;
按照公式(9)利用得到的两个M×N矩阵F″2和X″2与置换图像P″进行扩散操作,得到扩散图像C′:其中, 表示异或操作;
步骤5:将序列F3和序列X3分别转换成0~255的整数序列F′3和X′3,然后将两个整数序列F′3和X′3分别转换成M×N矩阵F″3和X″3,利用得到的两个M×N矩阵F″3和X″3与扩散图像C′进行逆向扩散操作,得到最终的密文图像C;按照公式(10)将序列F3和序列X3分别转换成0~
255的整数序列F′3和X′3:
其中,floor(*)表示向下取整函数,mod表示取模运算,i=1,2,3…,MN;
按照公式(12)利用得到的两个M×N矩阵F″3和X″3与扩散图像进行逆向扩散操作,得到最终的密文图像C:其中, 表示异或操作。
2.根据权利要求1所述的方法,其特征在于,步骤1中,所述耦合映像格子系统如公式(1)所示:其中,ε是复合耦合参数,n是时间序列,j是空间下标,L是格子的数量,L=3,f(*)是混沌映射函数。
3.根据权利要求1或2所述的方法,其特征在于,所述混沌映射函数f(*)采用PWLCM映射。