一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于复合Tent混沌映射的比特级图像加密方法

2022-04-30 10:22:00 来源:中国专利 TAG:

基于复合tent混沌映射的比特级图像加密方法
技术领域
1.本发明属于数字图像加密算法技术领域,具体涉及一种复合tent混沌映射的比特级图像加密方法。


背景技术:

2.随着互联网技术和现代通信技术的不断发展,越来越多的多媒体数据利用网络的共享性和可访问性在互联网中广泛传播。在众多多媒体信息中,数字图像因其生动形象、包含大量可视化信息等特点而被作为传递数据信息的工具。然而许多数字图像未经加密在网络中传输时很容易泄露大量个人隐私和军事机密,因此针对数字图像冗余度高、数据量大、相邻像素相关性强以及图像信息安全问题如何设计有效的图像加密算法日益成为人们研究重点。图像在空间域中通常用像素位置和像素值两种信息来进行描述,图像加密算法主要包括置乱和扩散两个阶段,由于混沌系统具有非周期性、不可预测性、伪随机性以及初值敏感性等显著特点,被广泛应用于图像加密领域。
3.传统的一维混沌映射存在映射分布不均匀、混沌参数范围较小和产生的密钥序列随机性低等缺点,导致基于一维混沌映射的图像加密算法的加密效果不好。并且由于传统一维混沌映射的混沌参数较少,使得密钥空间小,导致算法不能有效抵抗暴力攻击。同时,性能较优的图像加密方法还需要能够有效抵抗统计攻击、明文攻击和差分攻击的能力。


技术实现要素:

4.基于上述问题,本发明提出一种基于复合tent混沌映射的比特级图像加密方法,包括:
5.步骤1:获取待加密图像,利用待加密图像的像素值,计算获得加密密钥,然后将所述密钥作为混沌序列的初始值;
6.步骤2:将上述初始值和给定参数代入一个复合tent混沌映射tls,得到混沌序列x1,所述复合tent混沌映射tls是将logistic映射和sine映射的输出与tent映射耦合,然后执行来产生输出;
7.步骤3:将所述待加密图像按照比特置乱规则进行重组,得到加密矩阵e;
8.步骤4:对所述混沌序列x1进行mod取余,分别获得混沌序列x2、x3和x4;
9.步骤5:利用所述混沌序列x2对所述矩阵e向右进行循环移位,得到加密矩阵f,然后将混沌序列x4转换为二维矩阵g,再与f进行拼接得到加密矩阵q;
10.步骤6:利用所述混沌序列x3对所述加密矩阵q向右进行循环移位,得到矩阵t,然后将加密矩阵t转化成十进制加密矩阵p,对加密矩阵p的每一行按升序排序,得到加密矩阵r;
11.步骤7:将矩阵r再次转换为二进制矩阵,对每个二进制序列进行一轮反向循环移动,提取每个二进制序列的前8位后,将其转换为十进制形式,得到加密矩阵r1;
12.步骤8:对所述混沌映射tls进行反正弦变换和mod取余,得到混沌序列k1和k2,利用
所述加密矩阵r1与混沌序列k1和k2进行异或操作,得到加密矩阵r2;
13.步骤9:将所述加密矩阵r2转换成一维矩阵u,然后对其进行二次扩散操作,得到二次加密矩阵v,将加密矩阵v重构为二维矩阵,得到加密图像。
14.进一步地,所述步骤1具体为:
15.获取大小为m
×
n的待加密图像,其中m,n均为正整数,根据下式计算tls的迭代初始值x0:
16.x0=floor(sum(i)/(255
×m×
n)
×
104)/104。
17.进一步地,所述步骤2具体为:
18.所述复合tent混沌映射tls的数学模型具体为:
19.l(i 1)=4μ(0.5l(i)-l(i)2) (1-μ)sin(π(1-l(i)) 2μl(i));
20.其中μ为控制参数,且μ∈[0,4],xi为tls的迭代变量,当μ∈[0,4]时,tls具有混沌行为;
[0021]
所述步骤2中,将所述初始值代入一个复合tent混沌映射tls,得到混沌序列x1,具体为:基于所述混沌映射的给定参数μ和迭代初始值x0,迭代所述复合tent混沌映射m
×
n 1000次,得到混沌序列x,然后舍弃序列x前1000项,修正为长度m
×
n的混沌序列x1。
[0022]
进一步地,所述步骤3具体为:
[0023]
将大小为m
×
n的待加密图像i的二进制像素矩阵按比特置乱规则进行重组:偶数行的每个二进制序列,取其3到6位移动到前四位上,奇数行的每个二进制序列,将其前四位和后四位调换顺序,得到二进制加密矩阵e。
[0024]
进一步地,所述步骤4具体为:
[0025]
根据下式将所述混沌序列x1分别映射到0-8、0-16和0-255范围内的整数,得到混沌序列x2、x3和x4:
[0026][0027]
进一步地,所述步骤5具体为:
[0028]
将加密矩阵e的每个像素值按混沌序列x2向右进行循环移位,得到矩阵f,然后将混沌序列x4转化为m
×
8n的二维二进制矩阵g,并与f进行拼接得到矩阵q,f中每个二进制序列作为矩阵q中每个16位二进制序列的前8位,而g中每个二进制序列作为其后8位。
[0029]
进一步地,所述步骤8具体为:
[0030]
基于所述混沌映射tls,给定初始参数μ1和初值x1进行反正弦变换得到混沌序列y1:
[0031][0032]
给定初始参数μ2和初值x2进行反正弦变换得到混沌序列y2:
[0033][0034]
分别对y1和y2进行mod取余,得到混沌序列k1和k2:
[0035][0036]
对所述加密矩阵r1的奇数列和偶数列分别与混沌序列k1和k2进行异或操作,得到加密矩阵r2。
[0037]
进一步地,所述步骤9具体为:
[0038]
将加密矩阵r2转换成一维矩阵u,对其相邻像素间进行异或操作,结果保存在一维矩阵v中:
[0039][0040]
将一维矩阵v重构为二维矩阵,得到加密图像。
[0041]
本发明的有益效果是:
[0042]
本发明提出了一种基于复合tent混沌映射的比特级图像加密方法,首先利用tent映射与logistic映射和sine映射进行耦合,得到复合混沌映射tls,提高了混沌系统的复杂性,增强了密钥序列的随机性,使混沌系统的参数范围得到扩展,从而有效提升加密系统的安全性。且相对于高维的混沌系统,一维混沌系统的执行成本更低。通过在加密过程中引入多个复合混沌系统增加密钥个数,扩大了算法的密钥空间,使得该算法能够较好的抵抗暴力攻击。对待加密图像使用两轮异或扩散操作,有效提高了加密系统抵抗差分攻击的能力。
[0043]
上述说明是本发明技术方案的概述,为了能够更清楚本发明的技术手段、实施过程、目的和优点,以下举例说明本发明的具体实施方式。
附图说明
[0044]
图1为本发明中基于复合tent混沌映射的比特级图像加密方法的流程示意图。
[0045]
图2为本发明中对密文图像进行解密的流程示意图。
[0046]
图3为本发明中实验图像的明文图、密文图以及密文解密图;(a)为实验图像的明文图,(b)为实验图像的密文图,(c)为实验图像的密文解密图。
[0047]
图4为本发明中实验图像的密文图的像素直方图。
[0048]
图5为本发明中实验图像的密文图在不同方向相关性示意图;(a)为实验图像的密文图像的水平方向相关性示意图,(b)为实验图像的密文图像的垂直方向相关性示意图,(c)为实验图像的密文图像的对角方向相关性示意图。
具体实施方式
[0049]
下面结合附图和具体实施实例对发明做进一步说明。本发明的目的在于解决传统混沌映射产生的密钥序列随机性低、密钥空间小和比特置乱限制的问题。首先利用tent映射与logistic映射和sine映射进行耦合,得到复合混沌映射tls,提高了混沌系统的复杂
性,增强了密钥序列的随机性,使混沌系统的参数范围得到扩展,从而有效提升加密系统的安全性。且相对于高维的混沌系统,一维混沌系统的执行成本更低。通过在加密过程中引入多个复合混沌系统增加密钥个数,扩大了算法的密钥空间,使得该算法能够较好的抵抗暴力攻击。置乱过程利用矩阵拼接方法,解决了比特置乱时位数限制的问题。扩散过程使用两轮异或操作,有效提高了加密系统抵抗差分攻击的能力。
[0050]
如图1所示,一种基于复合tent混沌映射的比特级图像加密方法,在进行加密时,密钥信息通过保密信道传输,密文图像通过公共信道传输,设明文图像像素大小为m
×
n,包括:
[0051]
步骤1:利用待加密图像的像素值,计算获得加密密钥,然后将所述密钥作为混沌序列的初始值;
[0052]
步骤2:将上述初始值和给定参数代入一个复合tent混沌映射tls,得到混沌序列x1,所述复合tent混沌映射tls是将logistic映射和sine映射的输出与tent映射耦合,然后执行来产生输出;
[0053]
步骤3:将所述待加密图像按照比特置乱规则进行重组,得到加密矩阵e;
[0054]
步骤4:对所述混沌序列x1进行mod取余,分别获得混沌序列x2、x3和x4;
[0055]
步骤5:利用所述混沌序列x2对所述矩阵e向右进行循环移位,得到加密矩阵f,然后将混沌序列x4转换为二维矩阵g,再与f进行拼接得到加密矩阵q;
[0056]
步骤6:利用所述混沌序列x3对所述加密矩阵q向右进行循环移位,得到矩阵t,然后将加密矩阵t转化成十进制加密矩阵p,对加密矩阵p的每一行按升序排序,得到加密矩阵r;
[0057]
步骤7:将矩阵r再次转换为二进制矩阵,对每个二进制序列进行一轮反向循环移位,提取每个二进制序列的前8位后,将其转换为十进制形式,得到加密矩阵r1;
[0058]
步骤8:对所述混沌映射tls进行反正弦变换和mod取余,得到混沌序列k1和k2,利用所述加密矩阵r1与混沌序列k1和k2进行异或操作,得到加密矩阵r2;
[0059]
步骤9:将所述加密矩阵r2转换成一维矩阵u,然后对其进行二次扩散操作,得到二次加密矩阵v,将加密矩阵v重构为二维矩阵,得到加密图像。
[0060]
在一具体实施例中,所述步骤1具体包括:
[0061]
获取大小为m
×
n的待加密图像,其中m,n均为正整数,根据下式计算tls的迭代初始值x0:
[0062]
x0=floor(sum(i)/(255
×m×
n)
×
104)/104。
[0063]
在一具体实施例中,所述步骤2中,所述一个复合tent混沌映射tls的数学模型具体为:
[0064]
l(i 1)=4μ(0.5l(i)-l(i)2) (1-μ)sin(π(1-l(i)) 2μl(i));
[0065]
其中μ为控制参数,且μ∈[0,4],xi为tls的迭代变量,当μ∈[0,4]时,tls具有混沌行为;
[0066]
所述步骤2中,将所述初始值代入一个复合tent混沌映射tls,得到混沌序列x1,具体为:基于所述混沌映射的参数μ和迭代初始值x0,迭代所述复合tent混沌映射m
×
n 1000次,得到混沌序列x,然后分别舍弃序列x前1000项,修正为长度m
×
n的混沌序列x1。
[0067]
在一具体实施例中,所述步骤3具体包括:
[0068]
将大小为m
×
n的待加密图像i的二进制像素矩阵按比特置乱规则进行重组:偶数行的每个二进制序列,取其3到6位移动到前四位上,奇数行的每个二进制序列,将其前四位和后四位调换顺序,得到二进制加密矩阵e。
[0069]
在一具体实施例中,所述步骤4具体包括:
[0070]
根据下式将所述混沌序列x1分别映射到0-8、0-16和0-255范围内的整数,得到混沌序列x2、x3和x4:
[0071][0072]
在一具体实施例中,所述步骤5具体包括:
[0073]
将加密矩阵e的每个像素值按混沌序列x2向右进行循环移位,得到矩阵f,然后将混沌序列x4转化为m
×
8n的二维二进制矩阵g,并与f进行拼接得到矩阵q,f中每个二进制序列作为矩阵q中每个16位二进制序列的前8位,而g中每个二进制序列作为其后8位。
[0074]
在一具体实施例中,所述步骤8具体包括:
[0075]
基于所述混沌映射tls,给定初始参数μ1和初值x1进行反正弦变换得到混沌序列y1:
[0076][0077]
给定初始参数μ2和初值x2进行反正弦变换得到混沌序列y2:
[0078][0079]
分别对y1和y2进行mod取余,得到混沌序列k1和k2:
[0080][0081]
对所述加密矩阵r1的奇数列和偶数列分别与混沌序列k1和k2进行异或操作,得到加密矩阵r2。
[0082]
在一具体实施例中,所述步骤9具体包括:
[0083]
将加密矩阵r2转换成一维矩阵u,对其相邻像素间进行异或操作,结果保存在一维矩阵v中:
[0084][0085]
将一维矩阵v重构为二维矩阵,得到加密图像。
[0086]
利用本发明方法加密形成的密文图像,其解密过程(即加密的逆过程)如图2所示,具体过程如下:
[0087]
1)输入密钥:按加密过程步骤8进行混沌映射,得到用于异或扩散的混沌序列;
[0088]
2)密文图像异或的逆运算:将密文图像矩阵转化为一维矩阵,对相邻像素执行异
或的逆运算,将得到的一维矩阵再次转换为二维矩阵,利用上述混沌序列对其执行逆向异或运算,以还原扩散;
[0089]
3)混沌映射:按加密过程的步骤2和步骤4产生混沌序列,得到用于逆向循环移位的序列;
[0090]
4)逆循环运算:按混沌序列对矩阵进行逆循环运算;
[0091]
5)比特位重组的逆运算:按给定的比特置乱规则将变换后的矩阵进行逆运算以还原置乱,得到明文图像,实现图像解密。
[0092]
利用本发明方法对任意大小的数字图像进行处理,实施例为512
×
512实验图像的灰度图,灰度级为256,进行了加密/解密及相关安全测试实验,实验结果图如图3~5。
[0093]
下面进一步通过衡量抵御常见攻击手段能力的指标来验证本发明方法的有效性。
[0094]
直方图分析:采用本方法将加密图像进行直方图分析;直方图均匀分布表明能较好的隐藏明文信息,攻击者难以通过直方图分析攻击恢复明文图像。
[0095]
相邻像素相关性:采用本发明方法分别在明文和密文图像的水平、垂直和对角线方向随机选择1000对相邻像素点进行分析;明文图像相邻像素间的值十分接近,图像相邻位置间的像素值的相关性很强,密文图像相邻像素间的相关性趋近于0,图像相邻位置间的像素值的相关性很弱。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献