1.一种用于动力电池溯源管理的改进Lorenz与Zigzag变换的加密方法,其特征在于,其包括如下步骤:S1、将明文信息动力电池各生命周期的电池数据编码生成大小为n×n的彩色QR码图像Q0;
S2、将所述图像Q0分解为RGB三个通道的灰度图像,其矩阵分别为R(n,n)、G(n,n)和B(n,n);
S3、利用Matlab2018b软件及表达式(2),使Lorenz混沌系统产生三条混沌序列:{x(k),y(k),z(k)|k=1,2...};
所述表达式(2)为:
其中,k为正整数,t为时间,x、y、z分别为系统的状态变量,a、b、c为系统参数,令a=10,c=28,此时系统处于混沌状态;选取初值x0、y0、z0分别为0、1、0,并作为密钥Key1存储备用;
S4、对所述混沌序列进行优化处理,得到处理后的优化混沌序列X'(k)、Y'(k)、Z'(k);
S5、将所述优化混沌序列X'(k)、Y'(k)、Z'(k)按照构建的表达式(4)与矩阵R(n,n)、G(n,n)、B(n,n)进行异或运算,得到包含明文特征的加密矩阵R'(n,n)、G'(n,n)、B'(n,n);
其中,i=1,2...,n×n,R(i)、G(i)、B(i)分别表示三个通道的QR码图像所对应的矩阵中第i个元素的值,R'(i)、G'(i)、B'(i)分别表示加密后三个通道的QR码图像所对应矩阵中第i个元素的值,P(i)表示未进行通道分离的原始QR码的灰度图像所对应矩阵中第i个元素的值;
S6、构建改进的Zigzag变换,利用改进的Zigzag变换分别对所述矩阵R'(n,n)、G'(n,n)、B'(n,n)分别置乱,得到密钥Key2及置乱后的矩阵R”(n,n)、G”(n,n)、B”(n,n),步骤如下:S61、构建改进的Zigzag变换;
S611、以大小为m×m的矩阵S为输入矩阵,按水平轴线和垂直轴线将全部矩阵元素平均分为四小块,若m为奇数,对其进行边界扩充处理,使其为偶数,然后将每个小块作为一个整体,按照表达式(5)按对角线交换矩阵元素的位置,得到对称交换矩阵所述表达式(5)为
其中, step_r=m/2,step_c=m/2,u为行坐标,v为纵坐标;S为输入矩阵,为对称交换矩阵;
S612、将对称交换矩阵 进行置乱,其元素位置状态发生变化由表达式(6)表示,将 中元素进行依次排序得到二维矩阵所述表达式(6)为:
其中,1≤i,j≤m,u为行坐标,v为纵坐标, 为 经置乱后的矩阵;
S62、重复步骤S61的置乱过程r次,对所述矩阵R'(n,n)进行置乱,得到最终置乱后的矩阵R”(n,n);
S63、将置乱次数r作为密钥Key2存储备用;
S64、重复步骤S61共r次,对所述矩阵G'(n,n)进行置乱,得到置乱后的矩阵G”(n,n);
S65、重复步骤S61共r次,对所述矩阵B'(n,n)进行置乱,得到置乱后的矩阵B”(n,n);
S7、将所述置乱后的二维矩阵R”(n,n)、G”(n,n)、B”(n,n)分别生成相应的灰度QR码图像后,三通道合并,得到加密后的彩色QR码图像Q1的密文信息;
S8、解密过程;
解密过程与加密过程相反,解密后得到QR码图像Q0,通过扫描QR码图像Q0得到有关电池的明文信息。
2.根据权利要求1所述一种用于动力电池溯源管理的改进Lorenz与Zigzag变换的加密方法,其特征在于,步骤S1中动力电池各生命周期的电池数据至少包括生产、销售、报废、回收、拆解再利用周期的信息。
3.根据权利要求1所述一种用于动力电池溯源管理的改进Lorenz与Zigzag变换的加密方法,其特征在于,步骤S4中优化处理后的序列元素都为正数且在0-255之间。
4.根据权利要求3所述一种用于动力电池溯源管理的改进Lorenz与Zigzag变换的加密方法,其特征在于,步骤S4中的优化处理根据表达式(3)进行;
所述表达式(3)为:
5.根据权利要求1所述一种用于动力电池溯源管理的改进Lorenz与Zigzag变换的加密方法,其特征在于,步骤S8中解密过程包括如下步骤:S81、对加密QR图像Q1分解为RGB三个通道,得到三张灰度QR码加密图像,其矩阵分别为R”(n,n)、G”(n,n)、B”(n,n);
S82、输入密钥2,对R”(n,n)、G”(n,n)、B”(n,n)矩阵分别进行改进的Zigzag反变换,得到矩阵R'(n,n)、G'(n,n)、B'(n,n);
S83、输入密钥1,矩阵R'(n,n)、G'(n,n)、B'(n,n)与Lorenz系统生成并优化后的混沌序列X'(k)、Y'(k)、Z'(k)按表达式(7)的规则逐位异或,还原出矩阵R(n,n)、G(n,n)、B(n,n),三个通道合并后恢复出原始QR码Q0;
S84、通过扫描QR码图像Q0得到有关电池的明文信息。