基于rna和像素深度的图像加密方法

文档序号:1802373 发布日期:2021-11-05 浏览:20次 >En<

阅读说明:本技术 基于rna和像素深度的图像加密方法 (Image encryption method based on RNA and pixel depth ) 是由 张晓强 闫轩岗 于 2021-07-26 设计创作,主要内容包括:一种基于RNA和像素深度的图像加密方法,属于信息加密领域。当前网络传输安全问题日益严峻,为保护网络交互图像内容,本发明提出一种基于RNA和像素深度的图像加密方法。本发明首先将明文图像分层后进行RNA编码;其次,利用混沌序列对分层RNA图像进行置乱,并对置乱结果进行三维自适应Arnold变换和RNA解码可得置乱图像;再次,对置乱图像进行RNA编码;从次,用被选择的RNA混沌矩阵与置乱RNA图像利用RNA运算符进行扩散;最后,对扩散结果进行RNA解码,可得最终密文图像。实验结果表明:该方法适用范围广,加密效果良好,安全性高,可保证图像在网络平台下安全可靠传输。(An image encryption method based on RNA and pixel depth belongs to the field of information encryption. The current network transmission safety problem is increasingly severe, and in order to protect network interactive image content, the invention provides an image encryption method based on RNA and pixel depth. Firstly, layering a plaintext image and then carrying out RNA (ribonucleic acid) coding; secondly, scrambling the layered RNA image by using the chaotic sequence, and performing three-dimensional adaptive Arnold transformation and RNA decoding on the scrambling result to obtain a scrambled image; thirdly, RNA encoding is carried out on the scrambled image; secondly, diffusing the selected RNA chaotic matrix and the scrambled RNA image by using an RNA operator; and finally, carrying out RNA decoding on the diffusion result to obtain a final ciphertext image. The experimental results show that: the method has the advantages of wide application range, good encryption effect and high safety, and can ensure safe and reliable transmission of the image under a network platform.)

基于RNA和像素深度的图像加密方法

技术领域

本方法涉及一种信息加密技术,特别是涉及一种图像加密方法。

背景技术

随着网络技术的发展,通信方式发生了很大的变化,大量的数字图像通过网络传输,但是网络系统的开放性和网络协议存在缺陷,使得图像信息泄露事件时有发生;基于此,研究者们已提出多种图像加密方法,目前这些方法中存在加密安全性弱或效率低等问题;结合RNA理论、二维改进型逻辑斯蒂调整正弦映射(Improved Logistic-Adjusted-SineMap,ILASM)混沌、像素深度和四维Chen 超混沌等技术,为提高图像加密方法的安全性和效率,保证图像内容安全高效传输,设计了一种基于RNA和像素深度的图像加密方法;该方法利用了混沌系统良好的随机性和复杂性,可有效保护交互图像网络传输和存储安全。

发明内容

本发明的目的:针对当前大多图像加密算法不具有普适性,不能应用于不同像素深度的图像,无法做到一图一密、一次一密,安全性能较低等问题,提出一种基于RNA和像素深度的图像加密方法。

本发明的技术方案:为实现上述发明目的,采用的技术方案为基于RNA和像素深度的图像加密方法。

加密步骤如下:

步骤1:密钥生成:令明文图像为I m×n ,像素深度为d,随机选取x ' 0, y ' 0, z ' 0, u ' 0,v ' 0, w ' 0,μ ', e', t '作为用户密钥输入,利用密钥生成器计算二维ILASM、四维Chen超混沌的初值x 0, y 0, z 0, u 0, v 0, w 0和控制参数μ, e,以及三维自适应Arnold变换的迭代次数t与控制参数q 1, q 2

步骤2:混沌序列和矩阵生成:根据初值x 0, y 0与控制参数μ产生2个二维ILASM混沌序列X m×n×d/2Y m×n×d/2;根据初值z 0, u 0, v 0, w 0与控制参数e产生4个四维Chen超混沌矩阵Z m×n , U m×n , V m×n W m×n

步骤3:编码规则的产生:RNA的8种编解码如图1所示,根据混沌的初值x 0, y 0, z 0,u 0, v 0, w 0和像素深度d进行一定的运算产生r 1, r 2, r 3, r 4, r 5, r 6六种编解码规则;

步骤4:三维RNA立方块生成:利用RNA编码规则r 1I m×n 进行RNA编码得到I 3D,按一个RNA码为厚度对I 3D进行分层,得RNA分层图像I j Rj=1, 2, …, d/2);利用混沌序列XI j Rj=1, 2, …, d/2)进行层间置乱可得d/2个大小为m×n的平面I j 1 j=1, 2, …, d/2);将每一个平面I j 1转化为对应的一维向量V j 1并首尾相连得到一个大的一维向量V 1,利用混沌序列YV 1进行整体置乱得到V 2;将V 2转化为l×l×l的三维RNA立方块I 3DC

步骤5:自适应立体置乱:对I 3DC进行三维自适应Arnold变换得置乱后的RNA立方块I 3DA,将三维I 3DA转换为一维RNA序列V 3,删除多余零码后,利用r 2V 3进行RNA解码再转换为大小m×n的二维置乱图像I 2

步骤6:定义RNA运算规则:定义RNA加法(+)、减法(-)、异或(⊕)和同或(☉)运算规则:

步骤7:运算符选取:分别选取I 2中4个顶点,根据编码规则r 3,对其像素值的高六位进行RNA编码,根据编码结果在氨基酸序列生成表中的分布情况,选取运算符+,-,⊕或☉;

步骤8:混沌矩阵选取:根据d/8的计算结果确定选取规则,选择混沌矩阵Z, U, V,W中的若干矩阵参与运算;

步骤9:选择性扩散:将置乱图像I 2每8 bit变成图像I i 2i=1, 2, …, d/8),利用r 4I i 2i=1, 2, …, d/8)进行RNA编码得I i 3i=1, 2, …, d/8);利用r 5Z, U, VW进行RNA编码得Z 1, U 1, V 1W 1,接着根据步骤7选取的运算符对两者进行扩散运算得到分层加密图像I 1 e, I 2 e, I 3 eI 4 e,将I 1 e, I 2 e, I 3 eI 4 e合并,可得加密RNA图像I e;最后,使用r 6I e进行RNA解码得密文图像I c

进一步地,所述步骤1中,二维ILASM指

, (1)

其中,控制参数μ∈[0, 1],状态值x i , y i ∈[0, 0.2]。

进一步地,所述步骤1中,四维Chen超混沌指

, (2)

其中,当控制参数a=35,b=3,c=12,d=7且e∈[0.085, 0.798]时,系统处于超混沌状态。

进一步地,所述步骤1中,为产生密钥,利用SHA-256,分别计算明文图像I m×n 和当前系统时间对应的256 bit哈希值H 1=j 1, j 2, …, j 256H 2=k 1, k 2, …, k 256,将H 1H 2分别取前128 bit依次连接为一个长度为256 bit的哈希码H=j 1, j 2, …, j 128, k 1, k 2, …, k 128,并将H按照每8 bit划分成块得H=h 1, h 2, …, h 32

进一步地,所述步骤1中,计算二维ILASM、四维Chen超混沌的初值x 0, y 0, z 0,u 0, v 0, w 0与控制参数μ, e,以及三维自适应Arnold变换的迭代次数t与控制参数q 1, q 2

, (3)

, (4)

, (5)

其中,mod(•) 表示取模运算,floor(•) 表示向下取整函数,bin2dec(•) 表示二进制转换十进制函数,⊙表示同或运算。

进一步地,所述步骤2中,根据初值x 0, y 0与控制参数μ,迭代二维ILASM混沌1000+m×n×d/2次,舍弃前1000次迭代值,产生2个混沌序列X m×n×d/2Y m×n×d/2;根据初值z 0, u 0,v 0, w 0与控制参数e,迭代四维Chen超混沌1000+m×n次,舍弃前1000次迭代值,产生4个混沌矩阵Z m×n , U m×n , V m×n W m×n

进一步地,所述步骤3中六种编解码规则指:

r 1=mod(d+floor(x 0×1014), 8)+1, (6)

r 2=mod(d+floor(y 0×1014), 8)+1, (7)

r 3=mod(d+floor(z 0×1014), 8)+1, (8)

r 4=mod(d+floor(u 0×1014), 8)+1, (9)

r 5=mod(d+floor(v 0×1014), 8)+1, (10)

r 6=mod(d+floor(w 0×1014), 8)+1 (11)。

进一步地,所述步骤4中,层间置乱指:使用sort(•) 函数对X进行排序得到新序列X '以及索引值序列P 1

[X ', P 1]=sort(X(j)), j=1, 2, …, d/2, (12)

利用索引值P 1I 3D进行置乱得I j 1

I j 1=I P1(j) R, j=1, 2, …, d/2 (13)。

进一步地,所述步骤4中,整体置乱指:使用sort(•) 函数对Y进行排序得到新序列Y '以及索引值序列P 2

[Y ', P 2]=sort(Y(k)),k=1, 2, …, m×n×d/2, (14)

将每一个层间置乱后的平面I j 1转化为对应的一维向量V j 1,并首尾相连得到一个大的一维向量V 1

V 1=V 1 1 V 2 1V j 1, (15)

再利用索引值P 2V 1进行置乱得到V 2

V 2(k)=V 1(P 2(k)),k=1, 2, …, m×n×d/2, (16)

V 2转化为l×l×l的三维RNA立方块I 3DC,若无法整开三次方,则在末尾补零码至符合整开三次方的长度:

, (17)

其中,ceil (•) 表示向上取整函数。

进一步地,所述步骤5中,三维自适应Arnold变换指:

(18)。

进一步地,所述步骤8中,选取规则为:若d/8=1,则选择第一个混沌矩阵Z参与运算;若d/8=2,则选择前两个混沌矩阵ZU参与运算;若d/8=3,则选择前三个混沌矩阵Z, UV参与运算;若d/8=4,则选择所有四个混沌矩阵Z, U, VW参与运算;。

进一步地,所述步骤9中,扩散操作指:

, (19)

其中operator1,operator2,operator3和operator4代表四种运算符+,-,⊕和☉其中之一。

在解密过程中,利用相同的混沌序列和对应的RNA编码方式对密文图像进行处理,可恢复出原始图像,解密过程是加密的逆过程。

有益效果:针对当前部分图像加密算法不具有普适性,不能应用于不同像素深度的图像,无法做到一图一密、一次一密,安全性能较低等问题,提出基于RNA和像素深度的图像加密方法;主要贡献有:(1)为改变像素位置,结合RNA加密和混沌理论,构建适用于不同像素深度图像的置乱方法;(2)为改变像素值,结合RNA加密,混沌理论和像素深度相关理论,设计适用于不同像素深度图像的扩散方法;(3)该方法利用二维ILASM混沌系统和四维Chen 超混沌良好的随机性和复杂性,提高了加密效果;因此,该方法具有高效、安全和加密效果良好的特征,可有效保护交互图像网络传输和存储的安全性。

附图说明

图1:RNA序列的8种编/解码规则;

图2:RNA运算规则;

图3:氨基酸种类与运算符对应表;

图4:氨基酸密码子表;

图5:基于RNA和像素深度的图像加密方法流程图;

图6:明文图像;

图7:密文图像。

具体实施方式

下面结合具体附图和实例对本发明的实施过程进一步详细说明。

图5是本方法的加密流程图。

采用的编程软件为Matlab R2016a,选取图6所示的大小为512×512的8BPP (BitPer Pixel)Lena 灰度图像作为实验对象。

步骤1:利用SHA-256,分别计算明文图像和当前系统时间的哈希值H 1H 2;将H 1H 2分别取前128 bit整合为1个长度为256 bit的哈希码H=9390454675d1f5e55b046d30f05

a8ea1532c6b269a303ac19d3d0a906bb5e250;并结合选取的x ' 0=0.9865, y ' 0=1.4335, z ' 0=1.4977, u ' 0=0.5501, v ' 0=2.5159, w ' 0=1.3714, μ =1.6686, e '=0.2759, t '=2.5568,按照公式(3)-(5),计算二维ILASM、四维Chen超混沌的初值x 0, y 0, z 0, u 0, v 0, w 0与控制参数μ, e,以及三维自适应Arnold变换的迭代次数t与控制参数q 1, q 2

步骤2:根据初值x 0, y 0与控制参数μ,迭代二维ILASM混沌1000+512×512×4次,舍弃前1000次迭代值,产生2个混沌序列X, Y;根据初值z 0, u 0, v 0, w 0与控制参数e,迭代四维Chen超混沌1000+512×512次,舍弃前1000次迭代值,产生4个混沌矩阵Z, U, V, W

步骤3:编码规则的产生:根据混沌的初值x 0, y 0, z 0, u 0, v 0, w 0和像素深度d=8进行一定的运算产生r 1, r 2, r 3, r 4, r 5, r 6六种编解码规则。

步骤4:三维RNA立方块生成:利用编码规则r 1I进行RNA编码,得到一个大小为512×512×4的三维RNA编码矩阵I 3D;令每一层为一个层厚,利用混沌序列XI 3D层间进行置乱可得4个大小为512×512的平面I j 1j=1, 2, …, 4);将每一个平面I j 1转化为对应的一维向量V j 1并首尾相连得到一个大的一维向量V 1,利用混沌序列YV 1进行置乱得到V 2;补零码之后将V 2转化为大小为102×102×102的三维RNA立方块I 3DC

步骤5:自适应立体置乱:对I 3DC进行三维自适应Arnold变换得置乱后的RNA立方块I 3DA,将三维I 3DA转换为一维RNA序列V 3,删除多余零码后,利用r 2V 3进行RNA解码再转换为大小512×512的二维置乱图像I 2

步骤6:定义RNA运算规则:定义RNA加法、减法、异或和同或运算规则。

步骤7:运算符选取:分别选取I 2中4个顶点,并将其像素值的高六位进行规则r 3的RNA编码,根据编码结果在氨基酸序列生成表中的分布情况,选取对应的运算符。

步骤8:混沌矩阵选取:根据d/8=1,选择第一个混沌矩阵Z参与运算。

步骤9:选择性扩散:将I 2中每8 bit变成图像I i 2 i=1),利用r 4对其进行RNA编码得I i 3;利用r 5对参与运算的混沌矩阵进行RNA编码得Z 1,接着根据步骤7选取的运算符对两者进行相应的扩散运算得到分层加密图像I 1 e,即加密RNA图像I e;最后,使用r 6I e进行RNA解码,可得如图7所示的密文图像I c

按照解密流程,利用相同密钥,相同索引及相同混沌对密文图像进行解密可得解密结果,同图6所示。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于DSP图像编码处理的高精度图像处理系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类