安企神电脑监控软件 在线试用
扫码咨询客服
安企神电脑监控软件、局域网监控软件
首页
功能介绍
产品简介
下载中心
帮助中心
客户列表
关于安企神

基于复合混沌系统变参数图像加密新算法

更新时间:2022-10-28 15:44:01


本文简介:基于变参数的复合混沌系统,我们结合一维Logistic映射和三维混沌系统( Chen System),提出了一种基于变参数混沌的图像加密算法,通过构造一种非线性耦合函数来对明文像素点同时进行置乱和像素灰度变换,并根据由明文信息产生的密钥来对每轮置乱后的像素点采用不同方式进行图像文件加密。一、_基于复合混沌系统变参数图像加密算法原理1、 Logistic混沌映射Logistic混沌映射是一种非线性混

基于复合混沌系统变参数图像加密新算法

基于变参数的复合混沌系统,我们结合一维Logistic映射和三维混沌系统( Chen System),提出了一种基于变参数混沌的图像加密算法,通过构造一种非线性耦合函数来对明文像素点同时进行置乱和像素灰度变换,并根据由明文信息产生的密钥来对每轮置乱后的像素点采用不同方式进行图像文件加密。

一、_基于复合混沌系统变参数图像加密算法原理

1、 Logistic混沌映射

Logistic混沌映射是一种非线性混沌系统,其定义如下:

基于复合混沌系统变参数图像加密新算法

式中:μ为系统参数;w0∈(0,1).当3.569 94....≤μ≤4时,系统处于混沌状态。

2、三维混沌系统

基于复合混沌系统变参数图像加密新算法

当a=35,b=3,C∈ [20,28.4]时,式(2)存在混沌吸引子,系统可以处于混沌状态,本文取系统初值x0,yo,zo为密钥,积分步长t=0.001,生成序列{ Xk,yk,zk}。其时域图如图1所示。

基于复合混沌系统变参数图像加密新算法

二、基于复合混沌系统变参数图像加密算法思想

首先利用Logistic映射迭代选出其加密所需的系统参数值,然后结合三维混沌系统构造一种非线性耦合函数并对明文同时进行像素置乱和灰度变换,设明文图像的大小为M×N。

1、_基于复合混沌系统变参数图像加密算法设计

首先,给定两个参数μ1,μ2,迭代式(1)([(wo ×(M+N))+100])次,定义参数选择函数,即:

基于复合混沌系统变参数图像加密新算法

可得到其中之一为所选参数,令其为置乱步骤中所用式(1)的参数,则另一个为灰度变换步骤中所用式(1)的参数。设图像的像素点坐标为(i,j),对应的像素值为I(i,j),设计图像特征密钥基于复合混沌系统变参数图像加密新算法,并构造耦合函数如下:

基于复合混沌系统变参数图像加密新算法

由函数S(k)可设计置乱变换为:

基于复合混沌系统变参数图像加密新算法

其中,加密时以先行后列的顺序遍历图像的每个像素点,在上述置乱系统中,(i,j)为原像素点位置坐标,(i',j’)为置乱后的该点的位置坐标。

对每一次置乱后的明文像素点,采取下述的方式进行灰度值变换处理,即:

基于复合混沌系统变参数图像加密新算法

这里C(i,j)和C(i ',j')为像素点置乱后的灰度替代值。

2、基于复合混沌系统变参数图像加密算法步骤

步骤1 根据Logistic混沌映射选取置乱和灰度变换过程中的系统参数。

步骤2 遍历明文,设计加密算法所需密钥T。

步骤3 根据Logistic混沌映射和三维混沌产生的多维混沌序列构造一个非线性耦合函数。

步骤4根据设计的耦合函数以及式(5)对明文像素点进行置乱。

步骤5 对每一次置乱后的像素点根据(6)式进行灰度值替代。

步骤6 重复步骤4和5直至遍历整个明文图像。

步骤7 完成一轮加密操作,并根据实际需要进行多轮加密。

解密算法即为加密的逆过程,计算密钥并构造出耦合函数S(k),并根据式(5)和(6)对密文反解即可进行正确解密,得到明文图像。

三、仿真实验及安全性分析

一个安全的算法可以有效抵御各种攻击,如穷举攻击、统计攻击等,本文以MATLAB 7.1为平台,对该加密算法进行仿真实验,其中,以大小为256像素×256像素的Lena标准灰度图像作为明文图像,设初始密钥wo =0. 498 76,xo=13. 188,yo=11. 223,zo =0.1。

基于复合混沌系统变参数图像加密新算法

图2(a)为Lena原图像,图2(b)为加密后的Lena图像,图2(c)和图2(d)分别为明文和密文所对应的直方图,仿真实验表明,加密前后的图像与直方图有着很大差别,密文已经隐藏了原图像的人物轮廓,没有透露出明文图像的任何信息,这表明本文所采用的混沌序列具有良好的伪随机性和复杂性,从而保证了密文直方图分布均匀,可抵抗相应的统计攻击。

1、 密钥空间分析

一个好的加密方案应该具有足够大的密钥空间,从而使得穷举攻击变得不可行,本文算法密钥由wo,xo,yo,zo构成,设每个混沌系统的初值均有16位有效数字,则密钥空间为1016 ×4= 1064。此外,明文信息密钥丁亦作为密钥保管,因此,算法具有足够大的密钥空间,使得穷举攻击变得不可能。

2、 密钥敏感性分析

为了测试该算法的密钥敏感性,现将其中的一个密钥进行微小的改动( 10 -16),如令wo=0. 498 700 000 000 001,其余密钥保持不变,并对密文进行解密,加密解密图如图3所示。

基于复合混沌系统变参数图像加密新算法

由实验可知,当对密钥初值进行微小扰动后,便无法正确解密出明文图像,而解密出的图像也与原始明文有着很大差别,这说明该算法具有较高的密钥敏感性。因此,该算法可以有效地抵御敏感性攻击,并具有很好的安全性和实用性。

3、 像素相关性分析

一幅图像由于需要显示出一定的信息,因此,其像素之间有很大的关联,而一个好的算法便会降低这些相关性,从而达到可以抵御统计攻击,为了测试明文图像经本文算法加密后的像素点的水平、垂直以及对角方向的相关性,从明文图像和密文图像中随机选取1 000对像素对,并根据式(7)进行计算像素相关性系数,即:

基于复合混沌系统变参数图像加密新算法

式中:基于复合混沌系统变参数图像加密新算法;x,y分别表示相邻2个像素的灰度值,计算结果如表1所示。

基于复合混沌系统变参数图像加密新算法

图4显示了明文与密文水平方向相关性,通过对比图4(a)和图4(b),明显可见,密文中相邻像素间的相关性呈随机对应关系,对比表1可知,加密后的图像的相关系数都趋近于0,相关性远小于原始明文图像,明文信息已很好地扩散到密文之中,这说明本文复合混沌系统所产生的伪随机序列具有较好的伪随机性。因此,该算法具有较强的抗统计分析能力。

基于复合混沌系统变参数图像加密新算法

4、差分攻击分析

密码攻击者经常利用差分攻击寻找明文和密文之间的关系,通过改变明文的一个像素点来观察密文的变化,进而进行破解密文,设位置为(i,j)的像素点的灰度值为C1(i,j)和C2(i,j)。定义一个二值矩阵D,见式(8)。

基于复合混沌系统变参数图像加密新算法

它和C1与C2,有相同的大小,若C1(i,j)=C2(i,j),则D(i,j)=0;否则D(i,j)=1.为了测试本文算法是否可以有效地抵御差分攻击,分别根据式(9)和式(10)测试NPCR(像素变化率)和UACI(归一化平均变化强度)2个值,差分攻击分析结果如表2所示。

基于复合混沌系统变参数图像加密新算法

基于复合混沌系统变参数图像加密新算法

通过对本文算法差分攻击结果可知,本文加密算法仅需一轮加密即可达到理想值(NPCR >0. 996,UACI>0.334)。这说明,本文算法对明文信息更敏感,算法安全性与明文相关程度
更高,因而可以有效地抵御差分攻击,具有更高的安全性和实际应用价值。

5、 算法时间复杂度分析

为了测试所提算法的算法时间复杂度,本文以Matlab 7.1为实验平台,对加密算法进行仿真实验测试,实验结果如表3所示。

基于复合混沌系统变参数图像加密新算法

由表3可知,本文加密算法的加密时间更短,加密速度更快,效率更高;因此,本文加密算法具有更广的应用前景以及更高的实际应用价值。

小知识之线性耦合

线性耦合是数据耦合的一种。数据耦合是一个模块访问另一个模块时,彼此之间是通过简单数据参数 (不是控制参数、公共数据结构或外部变量) 来交换输入、输出信息的。而线性耦合输入、输出信息的变量是成正比的非线性耦合输入、输出信息的变量不成正比。

立即下载试用

基于3DES加密算法的研究

关于加密方法,我们之前有介绍过很多,最近大出风头的秀尔算法和DES、MD5等等一直占据鳌头,今天我们来介绍一个小众的加密算法——就是3DES。

加密算法主要通过软件和硬件两种方式来实现,软件的实现方式具有灵活方便的优点,同时也具有加密速度受限制的缺点。采用硬件实现加密算法是实际应用中必须要考虑到的问题。目前经常采用硬件FPGA等来实现,该种实验方式具有处理速度快的特点,但是对系统的复杂度要求较高。

嵌入式微处理器具有实现简单,系统集成度高,体积小,易于移植等众多优点,因此有必要研发基于嵌入式微处理器的加密算法硬件设备,在此提出一种基于ARM处理器的3DES的硬件实现方法。

3DES算法原理

DES是美国国家标准局颁布的数据加密算法,作为世界范围内的公开加密标准已经使用了20多年。随着计算机处理速度的提高,DES算法面临着一些安全威胁,DES采用56位密钥,曾经有人用穷举搜索法对DES进行过密钥搜索攻击。

近年来也有人提出了差分和线性攻击方案,该方案的实施必须有超高速计算机的支持。为了增强DES算法应对差分或线性攻击的可能性,人们提出了一系列改进方案,采用增加密钥长度是一种可行的途径。

为了增加密钥的长度,可将分组密码进行级联,在不同的密钥作用下,连续多次对一组明文进行加密。其中,最有效的方法是使用三重DES加密,它可使加密密钥长度扩展到128位,在提高加密强度的同时,足以应付目前的各种攻击。

DES是一个分组加密算法,它以64位为分组对数据加密。64位的分组明文序列作为加密算法的输入,经过16轮加密得到64位的密文序列。加密的密钥为64位,实际长度为56位,DES算法的保密性取决于密钥。DES对64位的明文分组进行操作。

首先通过一个初始置换IP,将64位的明文分成各32位长的左半部分和右半部分,该初始置换只在16轮加密过程进行之前进行一次。在经过初始置换操作后,对得到的64位序列进行16轮加密运算,这些运算被称为函数f,在运算过程中,输入数据与密钥结合。经过16轮运算后,左、右两部分合在一起得到一个64位的输出序列,该序列再经过一个末尾置换IP-1,获得最终的加密结果。过程如图1所示。

在每一轮加密过程中,函数厂的运算包括以下四个部分:

首先进行密钥序列移位,从移位后的56位密钥序列中选出48位;

然后通过一个扩展置换将输入序列32位的右半部分扩展成48位,再与48位的轮密钥进行异或运算;

再者通过8个s盒将异或运算后获得的48位序列替代成一个32位序列;

最后对32位序列应用置换P进行置换变换,得到-厂的32位输出序列。将函数厂的输出与输入序列的左半部分进行异或运算后的结果作为新一轮加密过程输入序列的右半部分,当前输入序列的右半部分作为新一轮加密过程输入序列的左半部分。

上述过程重复操作16次,便实现了DES的16轮加密运算。

假设Bi是第i轮计算的结果,则Bi为一个64位的序列,Li和Ri分别是Bi的左半部分和右半部分,Ki是第i轮的48位密钥,且f是实现代换、置换及密钥异或等运算的函数,那么每一轮加密的具体过程为:

以上操作的详细过程如图2所示。

在3DES加密算法中,加密过程用两个不同的密钥K1和K2对一个分组消息进行三次DES加密。首先使用第一个密钥进行DES加密,然后使用第二个密钥对第一次的结果进行DES解密,最后使用第一个密钥对第二次的结果进行DES加密。

解密过程首先使用第一个密钥进行DES解密,然后使用第二个密钥对第一次的结果进行DES加密,最后再使用第一个密钥对第二次的结果进行DES解密。

DES算法的密钥长度是56位,三重DES算法的密钥长度是112位,加密强度显著增强,可以很好地应付各种攻击,目前尚没有可行的攻击方法,应用3DES的加密系统具有很大的实用价值。

本文为收集整理,文章部分观点不代表本站观点,如有侵权或其它问题请反馈客服。https://www.wgj7.com/cjwt/16307.html