安企神电脑监控软件 在线试用
扫码咨询客服
安企神电脑监控软件、局域网监控软件
首页
功能对比
下载中心
购买咨询
客户列表
关于安企神

基于m序列变换和混沌映射的图像加密算法

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


本文简介:基于m序列变换和混沌映射的图像加密算法是利用m序列发生器中移位寄存器状态的遍历性进行位置置换;同时,也利用了m序列的伪随机特性能很好地实现图像位置置乱。图像替代是改变图像每个像素点的值,使替代后的图像直方图近似于由随机序列组成的图像的直方图。这种方法可以有效地紊乱图像,使经替代处理后图像的相关性进一步降低,从而更好地保护图像数据。一、Logistic混沌映射Logistic混沌映射是一个源于人口统

基于m序列变换和混沌映射的图像加密算法

基于m序列变换和混沌映射的图像加密算法是利用m序列发生器中移位寄存器状态的遍历性进行位置置换;同时,也利用了m序列的伪随机特性能很好地实现图像位置置乱。图像替代是改变图像每个像素点的值,使替代后的图像直方图近似于由随机序列组成的图像的直方图。这种方法可以有效地紊乱图像,使经替代处理后图像的相关性进一步降低,从而更好地保护图像数据。

一、Logistic混沌映射

Logistic混沌映射是一个源于人口统计的动力学系统,其系统方程为:

基于m序列变换和混沌映射的图像加密算法

其中Xk为映射变量,μ为系统参量,它们的取值范围分别为:-1<Xk<1,0<μ≤2。Logistic映射是一个非常简单,却又具有重要意义的非线性迭代方程,当1.401155≤μ≤2时,系统处于混沌状态,此时系统对初始值xo和参数μ具有敏感依赖性,可用来提供数量众多,非相关,类随机而又确定的可再生信号,便于图像文件加密和解密使用。

二、m序列变换

1、m序列原理

伪随机序列可以通过一个佗级线性反馈移位寄存器得到,如图1所示。

基于m序列变换和混沌映射的图像加密算法

其中an-1,an-2,a1,ao为寄存器的状态,反馈线的连接状态用ci表示,ci=1表示反馈线接通(参与反馈),ci=o表示反馈线断开,但是cn=c0=1。寄存器的每一级输出经反馈相加后作为最高位的输入an。n级线性反馈移位寄存器可能产生的最长周期为2n-1,称这种最长的序列为m序列。线性反馈移位寄存器能产生m序列的充要条件是反馈移位寄存器的特征多项式为本原多项式。

2、m序列变换

根据m序列的理论,本文设计了一种基于m序列的图像位置置乱方法,即称之为m序列变换,其变换原理如下:

设数字图像为f(x,y),x=0,1,…,m-1,y=0,1,…,n-1,若m和n满足2kx-1<m< 2kx和2ky-1<n< 2ky,取一个k=kx+ky级线性反馈移存器的本原多项式,f(x)作为其特征方程,且移位寄存器的初始状态为非零状态。则数字图像,f(x,y)的水平坐标xr和垂直坐标yr可分别用前kx个和后ky个移位寄存器的状态来表示,其对应关系如式(2):

基于m序列变换和混沌映射的图像加密算法

其中r表示m序列由第0时刻开始的移位次数,T∈{o,1,2,…,2k -2}。而akx +ky—i,r和aky一j,r表示前kx个和后ky个移位寄存器在r时刻的状态。根据m序列原理可知Xr∈{o,
1,…,2kx-1)和yr={o,1,…,2ky-1),但xr和yr不能同时为零。在图像位置置乱中,xr和yr可作为原图像经过m序列变换后的水平和垂直坐标。显然,m序列在移位时得到的xr,
和yr有些超出了图像的尺寸界限,在m序列变换中对这些点要作舍弃处理。

设f'(x',y')表示f(x,y)经m序列变换后图像,其中x'=0,1,2,...M -1; y'=0,1,2,…N-1,则m序列变换算法描述如下:

(1)设f(x,y)的第1个像素点(o,o)映射到,f'(x',y')的除(o,o)外的任意一点(x0',y0'),x0'和y0'分别对应前kx个和后ky个移位寄存器的状态,其对应关系参照式(2)。

(2)m序列移位一次,并由移位寄存器状态用式(2)计算x1和y1,检查x1和y1是否满足式(3):

基于m序列变换和混沌映射的图像加密算法

若不满足,m序列继续移位,并由移位寄存器状态用式(2)计算x2和y2,检查x2和y2是否满足式(3),直到寻找到满足式(3)的xr和yr为止,并把此时的xr和yr记为x1'和y1',将f(x,y)的第2个像素点(0,1)映射到f''(x',y')的点(X1',y1')。

(3)m序列继续移位,按照步骤(2)方法对f(x,y)其它像素点映射到f'(x',y')中,m序列经过一个周期后,正好将f(x,y)除(M-1,N-1)点外的其它所有像素点都映射到f'(x',y')的对应点,最后将,f(x,y)的(M-1,N-1)点映射到f'(x',y')的(0,0)点。

上述过程实现了图像的m序列变换。当f(x)为本原多项式时,k=kx+ky级线性反馈移位寄存器的周期为2kx+ky一1,舍弃不同时满足0≤xr≤M -1和0≤yr≤N-1的映射点,再把移位寄存器的全零状态补上,上述m序列变换显然是一一映射,用它可实现图像的位置置乱。其图像置乱的结果取决于任意选定的x0'和y0',因此x0'和y0'可作为图像加解密的密钥。其中x0'和y0'的密钥空间分别是x0'∈{o,1,…,M-1)和y0'={o,1,…,N-1),但是x0'和y0'不能同时为零。所以,x0'和y0'总的密钥空间大小为M×N-1。

m序列变换对图像位置置乱非常有效,它具有映射的随机性,且取决于x0'和y0'。采用m序列变换对尺寸大小为207×250灰度图像进行位置置乱加密处理的实验结果如图2所示,在本文实验中取x0'=1o和y0'=21。

基于m序列变换和混沌映射的图像加密算法

很遗憾,在仅用m序列变换进行图像位置置乱的图像加密中,如果公布图像位置置乱的加密算法,此时x0'和y0'失去密钥作用。图3是x0'和y0'取不同值得到的解密图,尽管与原图像不尽相同,但经过简单的裁剪和拼接,就可恢复出原图像。因此,这类算法是不能公开的,其秘密不是完全寓于密钥,这不符合现代密码体制的规范。这是m序列变换的一个缺点。

基于m序列变换和混沌映射的图像加密算法
为了使得m序列变换适用于现代密码体制,本文设计了一种基于m序列变换与Logistic混沌映射相结合的图像加密算法,该算法能很好地避免上述问题,其加解密算法步骤如下。

三、基于m序列变换与混沌映射相结合的图像加解密算法

加密算法描述如下:

步骤1输入待加密图像,用矩阵表示为fo(i,j),i=0,1,…,M -1;j=0,1,…,N-I。设定图像加密的迭代次数r。

步骤2输入Logistic混沌映射的初始值x0,1,yo,2和参数μ1、μ2,采用式(1)迭代M×N+k次生成不同矩阵g1(i,j)和g2(i,j),其中o<i< M-1,o≤j≤N-1(说明:其原因是保证Logistic映射的初值敏感性和参数敏感性,矩阵g1(i,j)和g2(i,j)应该舍弃Logistic映射开始迭代七次的数据)。由于处理的信号是数字图像,一般要求矩阵g1(i,j)和g2(i,j)的元素值为正整数(如g1,g2∈[o,255]),可采用式(4)进行取整操作:

基于m序列变换和混沌映射的图像加密算法

其中u表示系统迭代次数,这两个矩阵用于图像灰度值替代操作的随机参数。输入的初始值x01,xo2和参数μ1,μ2即为图像加密的密钥之一。

步骤3 图像灰度值替代:对图像fo(i,j)逐点按照式(5)进行图像灰度值的替代得到f1(i,j):

基于m序列变换和混沌映射的图像加密算法

其中L为图像的灰度级。

步骤4图像置换,随机选择参数x0'和y0',采用上述的m序列变换对图像f1(i,j)进行位置置换处理,得到f2(i,j)。

步骤5重复步骤3和步骤4,直至迭代达到r次为止。

图像解密是图像加密的逆过程。

四、实验结果及其分析

在Matlab 6.0编程环境下采用本文算法对大小为128x 256的灰度图像进行加解密处理,其中xo1=0.4509, x02=0.87807,μ1=1.989,μ2=2,x0'=1o,y0'=21和r=1,其实结果如图4所示。

基于m序列变换和混沌映射的图像加密算法

1、统计分析

(1)直方图

由图5所示实验结果,很清楚表明,与原始图像直方图比较,加密图像直方图有很大的不同,它非常均匀。因此,经本文算法加密后图像在传输中具有更好的隐蔽性。

基于m序列变换和混沌映射的图像加密算法

(2)相关性

原始图像中相邻像素的相关性是很大的,为了破坏统计攻击,必须降低相邻像素的相关性。本文采用式(6)-式(7)计算原始图像和加密图像的M×N/2对像素点测试其在水平和垂直方向的相关系数,其测试值如表1所示。

基于m序列变换和混沌映射的图像加密算法

其中x和y表示两个相邻的像素灰度值,且在实际数值计算时则采用如式(8)—式(10)的E(x),D(x)和cov(x,y)的离散形式:

基于m序列变换和混沌映射的图像加密算法

为了描述方便,用rf0,rfm和rfen分别表示原始图像,m序列变换置乱后图像和本文算法加密后图像的相关系数。其相关系数如表1所示。

基于m序列变换和混沌映射的图像加密算法

2、Logistic映射的敏感性测试

在图6实验中,在只改变混沌系统的一个初始值或一个参数而其它参数都相同情况下,均不能正确解密,说明Logistic映射对初始值和系统参数具有敏感依赖性。因此,在未知准确密钥时,即使初始值x01,xo2和参数μ1,μ2己知,是难以将加密图像正确解密的。

基于m序列变换和混沌映射的图像加密算法

3、x0'和y0'对图像解密的敏感性测试

在图7实验中,若只改变端和玑中一个值情况下,则图像不能正确解密。它说明xL和y可以作为一个图像加密的密钥。与仅用m序列变换时使图像位置置乱加密算法x0'和y0'密钥失效相比,其不同在于解密图像尽管几个分块的图像相对位置不变,但我们可以从中理解信息的含义,只是图像的绝对位置改变了。由于我们在像素值替代时,引入了由混沌系统产生的位置参数,使x0'和y0'参数也具有参数敏感性。

基于m序列变换和混沌映射的图像加密算法

4、算法安全性能分析

从上述实验结果及其分析可知,必须正确输入密钥,即初始值x01,xo2,参数μ1、μ2,x0',y0'和迭代次数'全部正确才能对加密图像正确解密。因此本算法对图像加密的密钥空间在Matlab 6.0试验平台上可达到1070,其中参数x01,xo2,μ1、μ2的空间数量级均为1015,迭代次数r空间数量级为105。x0'和y0'的密钥空间与图像尺寸大小有关,其总的密钥空间大小为M×N-1,详见m序列变换算法说明。对尺寸大小为128×256的图像而言,其空间数量级为105。非授权者若用穷举法进行破密是很难在有限的时间内破密成功。

根据Kerckhoffs准则,加密算法要与密钥完全分开是现代密码体制的要求。上述实验结果表明本文提出的算法可以公开,完全符合现代密码体制的要求。

小知识之加密算法

数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。 该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。

立即下载试用

基于动态信任的内生安全架构

动态信任是一种新型的信息安全架构,近年来随着物联网、云计算和移动化等技术的发展而逐渐受到关注。传统的信息安全架构往往是建立在固定的信任模型之上,而动态信任则更加灵活和自适应,可以根据实际情况动态调整信任度,从而提高整个系统的安全性。本文将从以下几个方面来探讨基于动态信任的内生安全架构,包括动态信任的概念、功能特点、应用场景、实现方法等。

一、动态信任的概念

动态信任是指基于多方交互和数据分析,根据实时风险评估结果自适应调整信任度的一种信任模型。它与传统的访问控制模型不同,传统模型是基于身份验证和访问授权来限制访问权限的,而动态信任则更加注重实时风险评估和动态调整信任度。动态信任由于其灵活性和自适应性被广泛应用于物联网、云计算和移动化等领域,成为一种新型的内生安全框架。

二、动态信任的功能特点

1、实时风险评估
动态信任的核心是实时风险评估,通过对多方交互数据的分析、模型预测和机器学习等方法,从而实现对用户、设备、应用以及网络等方面的风险评估。同时,动态信任支持多种评估方法,可以根据实际情况选择不同的评估方法来评估系统的安全性。

2、动态调整信任度
动态信任可以根据实时风险评估结果自适应调整信任度,从而提高整个系统的安全性。例如,对于一个新的设备或应用,由于缺少足够的信任度,系统可以限制其访问权限,等到其表现良好后再逐步增加信任度。另外,在不同的应用场景中,可以根据不同的容错需求设置不同的信任阈值,从而更加灵活地调整系统的安全性。

3、安全事件的自适应响应
基于动态信任的内生安全框架可以根据实时风险评估结果自适应响应安全事件,例如实时阻断异常访问或异常信任行为等,从而保护整个系统的安全。另外,动态信任还可以实现安全威胁预警和安全日志审计等功能,为后续的安全事件响应提供支持。

三、动态信任的应用场景

基于动态信任的内生安全框架适用于物联网、云计算和移动化等领域,可以提高系统的安全性和稳定性。具体应用场景如下:

1、物联网领域
对于物联网场景,动态信任可以实现对设备、应用、用户等的实时风险评估和动态信任管理,从而保护整个物联网系统的安全。例如,可以基于设备的行为、属性等数据进行风险评估,判断设备是否存在安全风险,并进行相应的防御措施。

2、云计算领域
对于云计算场景,动态信任可以实现对用户、应用、网络等的实时风险评估和自适应调整信任度,从而提高整个云计算系统的安全性和稳定性。例如,可以根据用户的访问情况和应用的行为数据等进行风险评估,判断用户和应用是否存在安全风险,并相应的限制其访问权限。

3、移动化场景
对于移动应用场景,动态信任可以实现对应用、用户等的实时风险评估和自适应调整信任度,从而保护整个移动应用系统的安全。例如,可以根据应用的行为数据、用户的位置信息等进行风险评估,判断应用和用户是否存在安全风险,并相应的限制其访问权限。

四、动态信任的实现方法

基于动态信任的内生安全框架的实现方法主要包括以下几个方面:

1、机器学习技术
机器学习技术可以实现对多方交互数据的分析和预测,进而实现实时风险评估和动态信任管理。例如,可以使用支持向量机、神经网络、朴素贝叶斯等算法对数据进行分类和预测,从而实现安全风险评估。

2、分布式计算技术
分布式计算技术可以实现对大规模数据的分析和处理,多种评估方法的实现和系统的扩展性等。例如,可以使用MapReduce等分布式计算技术来实现大规模数据的分析和处理,从而提高系统的效率和准确性。

3、安全日志管理技术
安全日志管理技术可以实现对安全事件的记录、分析和响应等功能,从而提高系统的安全性和稳定性。例如,可以使用SIEM技术来实现安全事件的实时监测、分析和响应,从而提供相应的安全保障。

总之,基于动态信任的内生安全框架是一种新型的信息安全架构,其具有灵活性和自适应性等特点,可以根据实际情况动态调整信任度,提高整个系统的安全性。在物联网、云计算和移动化等领域具有广泛的应用前景,同时也面临着各种技术挑战和安全威胁。因此,我们需要进一步探索动态信任技术的研究和应用,并积极探索基于动态信任的内生安全框架的实现方法和应用策略,从而实现网络信息安全的可靠保障。

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