欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2018109236412
申请人: 长春理工大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2024-02-23
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.基于四维量子Dicke映射的图像加密解密方法,该方法包括加密过程和解密过程,其特征是,设定用户加密密钥:由四维量子Dicke混沌系统的初值,迭代次数,扩散密钥组号、置乱密钥组号以及Logistic映射迭代次数组成;

加密过程为:

步骤一、输入大小为M*N的彩色明文图像Pimage;

步骤二、对明文图像Pimage按照红色、绿色、蓝色分量进行分解,得到三个大小为M*N的色彩分量矩阵,即分别为:红色分量矩阵RP、绿色分量矩阵GP和蓝色分量矩阵BP;

步骤三、以用户密钥作为四维量子Dicke混沌系统的初值,迭代四维量子Dicke混沌系统TM次,获得图像加密过程的安全密钥集矩阵D;

步骤四、在步骤三所述的安全密钥集矩阵D中选取第j1组,第j2组,第j3组置乱密钥shuffleKey1,shuffleKey2,shuffleKey3,j1,j2,j3的值为用户加密密钥中扩散密钥组号;

选取方法为:

以j1,j2,j3作为Logistic混沌映射的初值迭代Logistic混沌映射n1,n2,n3次,其中n1,n2,n3为用户加密密钥中的Logistic映射的迭代次数;迭代结果分别记为Lj1,Lj2和Lj3;

将迭代结果Lj1、Lj2和Lj3以公式(4)下式的方法映射为1到TM之间的整数NLj1、NLj2和NLj3,即:式中,floor()表示向下取整操作;

将NLj1、NLj2和NLj3带入步骤三所述安全密钥集矩阵D,获取置乱密钥shuffleKey1,shuffleKey2和shuffleKey3,即:shuffleKey1={q1(NLj1),p1(NLj1),q2(NLj1),p2(NLj1),q1(NLj1+1),p1(NLj1+1),q2(NLj1+1),p2(NLj1+1)}shuffleKey2={q1(NLj2),p1(NLj2),q2(NLj2),p2(NLj2),q1(NLj2+1),p1(NLj2+1),q2(NLj2+1),p2(NLj2+1)}shuffleKey3={q1(NLj3),p1(NLj3),q2(NLj3),p2(NLj3),q1(NLj3+1),p1(NLj3+1),q2(NLj3+1),p2(NLj3+1)}式中,q1,p1,q2,p2均为四维量子Dicke混沌系统的初值;

步骤五、采用步骤四中的置乱密钥shuffleKey1作为Beta混沌映射的初值和控制参数置乱步骤二的红色分量矩阵RP,获得置乱后的红色分量矩阵ERP;将置乱后的红色分量矩阵ERP转换为序列,获得红色置乱流S‑erp;

采用步骤四中的置乱密钥shuffleKey2作为Beta混沌映射的初值和控制参数置乱步骤二中的绿色分量矩阵GP,获得置乱后的绿色分量矩阵EGP;将置乱后的绿色分量矩阵EGP转换为序列,获得绿色置乱流S‑egp;

采用步骤四中的置乱密钥shuffleKey3作为Beta混沌映射的初值和控制参数置乱步骤二中的蓝色分量矩阵BP,获得置乱后的蓝色分量矩阵EBP;将置乱后的蓝色分量矩阵EBP转换为序列,获得蓝色置乱流S‑ebp;

步骤六、在步骤三所述的安全密钥集矩阵D中选取第i组扩散置乱密钥diffuseKey,并将所述扩散置乱密钥diffuseKey作为初值和控制参数迭代三细胞分数阶量子细胞神经网络超混沌系统M*N/2次,获得长度为M*N/2的六维矩阵Fqcnn,i的值为用户加密密钥中置乱密钥组号;

所述i的选取方法为:

以i为Logistic混沌映射的初值迭代Logistic混沌映射n4次,其中n4为用户加密密钥中的Logistic映射迭代次数;迭代结果记为Li,将Li以下式方法映射为1到TM之间的整数NLi:NLi=floor(Li×TM)

将NLi带入步骤三所述安全密钥集矩阵D,获取置乱密钥diffuseKey,用下式表示为:diffuseKey={q1(NLi),p1(NLi),q2(NLi),p2(NLi),q1(NLi+1),p1(NLi+1),q2(NLi+

1),p2(NLi+1),q1(NLi+3),p1(NLi+3),q2(NLi+3),p2(NLi+3),q1(NLi+4),p1(NLi+4),q2(NLi+4),p2(NLi+4),q1(NLi+5),p1(NLi+5)}其中,量子细胞神经网络参数P1,P2,P3, 的初值P1(0),P2(0),P3(0),控制参数β1,β2,β3,θ1,θ2,θ3和分数阶数α1,α2,α3,α4,α5,α6由所述diffuseKey确定:步骤七、将步骤六所述的六维矩阵Fqcnn进行矩阵变换,拆分为三个大小为M*N的子矩阵Fqcnn1,Fqcnn2,Fqcnn3;将所述子矩阵Fqcnn1,Fqcnn2,Fqcnn3进行矩阵变换,获得变换后的矩阵序列X‑fqcnn1、矩阵序列X‑fqcnn2和矩阵序列X‑fqcnn3;

步骤八、将步骤七所述的矩阵序列X‑fqcnn1与步骤五所述的红色置乱流S‑erp进行计算复合为扩散密钥流StreamKey1;

将矩阵序列X‑fqcnn2与绿色置乱流S‑egp进行计算复合为扩散密钥流StreamKey2;

将矩阵序列X‑fqcnn3与蓝色置乱流S‑ebp进行计算复合为扩散密钥流StreamKey3;

步骤九、采用步骤八所述的扩散密钥流StreamKey1加密步骤五所述的绿色置乱流S‑egp,将加密后的结果转换为M*N的矩阵Cg;

采用步骤八所述扩散密钥流StreamKey2加密步骤五所述蓝色置乱流S‑ebp,将加密结果转换为M*N的矩阵Cb;

采用步骤八所述扩散密钥流StreamKey3加密步骤五所述红色置乱流S‑erp,将加密结果转换为M*N的矩阵Cr;

步骤十、将步骤九获得矩阵Cr、Cg和Cb分别作为红、绿、蓝三个色彩分量,并将所述三个色彩分量复合为一副彩色图像,获得密文图像Cimage;

解密过程:

设定用户解密密钥:由四维量子Dicke混沌系统的初值,迭代次数,扩散密钥组号,置乱密钥组号以及Logistic映射迭代次数组成;

步骤十一、将步骤十获得的密文图像Cimage,分解为密文图像红色分量矩阵Cr、密文图像绿色分量矩阵Cg、密文图像蓝色分量矩阵Cb;并将密文图像红色分量矩阵Cr、密文图像绿色分量矩阵Cg和密文图像蓝色分量矩阵Cb分别按照从上到下从左到右的顺序进行矩阵变换,获得转换后的密文图像红色分量序列SCr、密文图像绿色分量序列SCg以及密文图像蓝色分量序列SCb;

步骤十二、以用户解密密钥中的四维量子Dicke混沌系统的初值和迭代次数,迭代四维量子Dicke混沌系统,获得安全解密密钥集矩阵DD;

步骤十三、从步骤十二所述安全解密密钥集矩阵DD中选取第Dj1组,第Dj2组,第Dj3组解密置乱密钥DshuffleKey1,DshuffleKey2,DshuffleKey3;Dj1,Dj2,Dj3为用户解密密钥中扩散密钥组号;

步骤十四、从步骤十二所述安全解密密钥集矩阵DD中选取第Di组解密扩散密钥DdiffuseKey;Di为用户解密密钥中的解密扩散密钥组号;

步骤十五、使用步骤十四得到的解密扩散密钥DdiffuseKey作为初值P1(0),P2(0),P3(0), 控制参数β1,β2,β3,θ1,θ2,θ3和分数阶数α1,α2,α3,α4,α5,α6迭代三细胞分数阶量子细胞神经网络超混沌系统M*N/2次,得到长度为M*N/2的六维解密矩阵DFqcnn;

其中,

步骤十六、将步骤十五得到的解密矩阵DFqcnn进行矩阵变换,按照从前至后的顺序拆分为三个大小为M*N的解密子矩阵DFqcnn1,解密子矩阵DFqcnn2,解密子矩阵DFqcnn3;将解密子矩阵DFqcnn1,解密子矩阵DFqcnn2和解密子矩阵DFqcnn3按照从上到下从左到右的顺序进行矩阵变换,转换为解密序列DXfqcnn1,解密序列DXfqcnn2,解密序列DXfqcnn3;

步骤十七、将步骤十六所述解密序列DXfqcnn1,解密序列DXfqcnn2,解密序列DXfqcnn3同步骤十一所得密文图像红色分量序列SCr、密文图像绿色分量序列SCg、密文图像蓝色分量序列SCb计算复合为解密逆扩散流DStream1,解密逆扩散流DStream2,解密逆扩散流DStream3;

步骤十八、将步骤十七中得到的解密逆扩散流DStream1,解密逆扩散流DStream2,解密逆扩散流DStream3按照从上到下从左到右的顺序进行矩阵变换,得解密逆扩散矩阵DX1,解密逆扩散矩阵DX2,解密逆扩散矩阵DX3;

步骤十九、将步骤十八获得的解密逆扩散矩阵DX1进行Beta混沌逆映射,采用步骤十三的解密置乱密钥DshuffleKey1作为Beta混沌逆映射的初值和控制参数得到Beta逆映射结果Dr;

将步骤十八获得的解密逆扩散矩阵DX2进行Beta混沌逆映射,采用步骤十三选取的解密置乱密钥DshuffleKey2作为Beta混沌映射的初值和控制参数,获得次Beta逆映射结果Dg;

将步骤十八获得的解密逆扩散矩阵DX3进行Beta混沌逆映射,采用步骤十四中的解密置乱密钥的DshuffleKey3作为Beta混沌映射的初值和控制参数获得Beta逆映射结果Db;

步骤二十、将步骤十九获得的Beta逆映射结果Dr,逆映射结果Dg,逆映射结果Db分别作为红、绿、蓝三个色彩分量,复合为一副彩色图像,得到解密图像Dimage。

2.根据权利要求1所述的基于四维量子Dicke映射的图像加密解密方法,其特征在于,步骤五的具体过程为:采用步骤四中的置乱密钥shuffleKey1作为Beta混沌映射的初值和控制参数时,赋值过程为:y0=shuffleKey1(1),y1=shuffleKey1(2),b1=shuffleKey1(3),c1=shuffleKey1(4),b2=shuffleKey1(5),c2=shuffleKey1(6),a=shuffleKey1(7),k=shuffleKey1(8)

采用步骤四中的置乱密钥shuffleKey2作为Beta混沌映射的初值和控制参数时,赋值过程为:y0=shuffleKey2(1),y1=shuffleKey2(2),b1=shuffleKey2(3),c1=shuffleKey2(4),b2=shuffleKey2(5),c2=shuffleKey2(6),a=shuffleKey2(7),k=shuffleKey2(8)

采用步骤四中的置乱密钥shuffleKey3作为Beta混沌映射的初值和控制参数时,赋值过程为:y0=shuffleKey3(1),y1=shuffleKey3(2),b1=shuffleKey3(3),c1=shuffleKey3(4),b2=shuffleKey3(5),c2=shuffleKey3(6),a=shuffleKey3(7),k=shuffleKey3(8)。

3.根据权利要求1所述的基于四维量子Dicke映射的图像加密解密方法,其特征在于,步骤十三中,所述Dj1,Dj2和Dj3作为用户解密密钥中扩散密钥组号;选取方法为:以Dj1,Dj2,Dj3为Logistic混沌映射的初值迭代Logistic混沌映射Dn1,Dn2,Dn3次,迭代结果分别记为DLj1,DLj2,DLj3,其中Dn1,Dn2,Dn3为用户解密密钥中的Logistic映射的迭代次数;

将DLj1,DLj2,DLj3以下式方法映射为1到DTM之间的整数DNLj1,DNLj2,DNLj3:将DNLj1,DNLj2和DNLj3带入步骤十二所述安全解密密钥集矩阵DD,获取解密置乱密钥DshuffleKey1,DshuffleKey2和DshuffleKey3,分别用下式表示为:

4.根据权利要求1所述的基于四维量子Dicke映射的图像加密解密方法,其特征在于,步骤十四中,所述Di作为用户解密密钥中的解密扩散密钥组号;选取方法为:以Di为Logistic混沌映射的初值迭代Logistic混沌映射Dn4次,其中Dn4为用户解密密钥中的Logistic映射迭代次数;迭代结果为DLi,将DLi以下式方法映射为1到DTM之间的整数DNLi:DNLi=floor(DLi×DTM)

将DNLi带入步骤十三所述安全解密密钥集矩阵DD,获取解密扩散密钥DdiffuseKey,用下式表示为:DdiffuseKey={q1(DNLi),p1(DNLi),q2(DNLi),p2(DNLi),q1(DNLi+1),p1(DNLi+1),q2(DNLi+1),p2(DNLi+1),q1(DNLi+3),p1(DNLi+3),q2(DNLi+3),p2(DNLi+3),q1(DNLi+4),p1(DNLi+4),q2(DNLi+4),p2(DNLi+4),q1(DNLi+5),p1(DNLi+5)}。

5.根据权利要求1所述的基于四维量子Dicke映射的图像加密解密方法,其特征在于,步骤十九中,采用步骤十三的解密置乱密钥DshuffleKey1作为Beta混沌逆映射的初值和控制参数时,赋值过程为:y0=DshuffleKey1(1),y1=DshuffleKey1(2),b1=DshuffleKey1(3),c1=DshuffleKey1(4),b2=DshuffleKey1(5),c2=DshuffleKey1(6),a=DshuffleKey1(7),k=DshuffleKey1(8),

采用步骤十三选取的解密置乱密钥DshuffleKey2作为Beta混沌映射的初值和控制参数时,赋值过程为:y0=DshuffleKey2(1),y1=DshuffleKey2(2),b1=DshuffleKey2(3),c1=DshuffleKey2(4),b2=DshuffleKey2(5),c2=DshuffleKey2(6),a=DshuffleKey2(7),k=DshuffleKey2(8),

采用步骤十四中的解密置乱密钥的DshuffleKey3作为Beta混沌映射的初值和控制参数时,赋值过程为:y0=DshuffleKey3(1),y1=DshuffleKey3(2),b1=DshuffleKey3(3),c1=DshuffleKey3(4),b2=DshuffleKey3(5),c2=DshuffleKey3(6),a=DshuffleKey3(7),k=DshuffleKey3(8)。