超混沌系统在图像置乱加密中的算法探究

2017-11-16 21:51李凤荣刘嘉洋
科技视界 2017年18期

李凤荣 刘嘉洋

【摘 要】受到离散数学中超混沌系统及信息转移的启发,将尝试结合两者形成新算法框架并应用于图像加密相关的信息安全领域。通过分析超混沌系统,计算生成混沌吸引子相图、像素值相关度等非线性动力学特性,并实现超混沌系统展开对图像加密的研究,并着眼超混沌序列对于初始条件的敏感性、相邻像素差置乱度、图像加密/解密速度进行实践测试。 实验成果及安全性分析表明,在该算法及所提议的框架下具有较强的抵御穷举攻击、统计攻击等,具有一定的扩展意义。

【关键词】超混沌系统;图像置乱;混沌吸引子相图

0 引言

与传统加密方案不同,本研究将基于超混沌系统的新框架来实现加密的安全通信,设计思路如图1所示。

混沌具有良好的伪随机性、轨道不可预测性等一系列优良特性。但应用于加密算法时,低维混沌存在密钥空间小等不安全弊端;而高维超混沌系统则能更有效的抵御相空间重构等破译攻击。正的Lyapunov指数越高,系统轨道不稳定方向越多,系统随机性越强,抗攻击能力越高。计算表明该研究所采用的超混沌系统具有满意的Lyapunov指数。

图1 研究实现架构

本文后继展示具体的实验步骤,集合对应步骤结果的分析逐步深入探讨并优化实施方法,并最终通过实验效果验证了算法及架构的合理性。

1 超混沌系统

本研究采用的超混沌系统动力学方程如下[1]:

■■=a(-y■+y■)■■=dy■+cy■-y■y■■■=y■y■-by■■■=y■+k(1)

其中a,b,c,d和k是非线性系统的常数参数。当a=36,b=3,c=28,d=-16和-0.7≤k≤0.7时,该系统是超混沌的。

混沌序列可以通过以下步骤生成:通过四阶Runge-Kutta离散算法迭代超混沌系统N0次以获得四个离散状态序列yk(k=1,2,3,4)。然后用过yk构造随机整数序列xk,(k=1,2,3,4):xk(i)=mod((|yk(i)|-?骔|yk(i)|?骎)×10t,D(i))其中xk(i) 是序列xk第i个值,|x|表示x的绝对值,|x|返回小于或等于x的最近整数。

在研究实现中,N0取100000,即采用Runge-Kutta迭代100000次,取后面99000各数据得到混沌序列生成点对。系统的混沌吸引子轨道线在特定的吸引域内具有遍历性[2]。

3 像素级置乱

3.1 对加密图像的位置置乱

为了扰乱图像相邻像素间的高度相关性,利用置乱矩阵来置乱原图像像素位置。实验具体操作步骤如下:

(1)用迭代生成的混沌序列,舍弃前10000个值,将后面的99000个值作为实际使用的混沌序列。

(2)对混沌序列做如下处理:

x1(k)=|x1(k)|-fix(x1(k))x3(k)=|x3(k)|-fix(x3(k))(2)

(3)将由(2)产生的混沌序列排序,分别从行和列建立从原序列到新序列的映射(一定为单射+满射),即将排序序列作为图像数据矩阵的行序列和列序列,从而实现对原图像位置的置乱[3]。

3.2 置乱的局限性

像素级置乱破坏了原图像相邻像素点相关性,但是图像的灰度直方图并没改变,因而安全性不够高,很难抵御已知明文攻击,仍需要做进一步的加密。

4 比特级置乱

4.1 像素值扩散

仍然由超混沌系统生成的4个混沌序列出发,把其作为加密密钥来加密图像:

(1)对各序列预处理:

xi=mod(fix((|xi|-?骔|xi|?骎)×1015),256

(2)通過x0决定使用的三元组:

x0=mod(x4,4)

其中x0的四个值分别对应四个不同的三元组;

(3)以x0=0为例,使用三元组(x1,x2,x3)

定义:置乱后矩阵为一个1*M*N的向量P(作为本例输入);扩散后矩阵置乱后矩阵为一个1*M*N的向量C(作为加密图像输出)则有:

C(3×i+1)=P(3×i+1)?茌x1?茌C(3×i)

C(3×i+2)=P(3×i+2)?茌x1?茌C(3×i+1)

C(3×i+3)=P(3×i+3)?茌x1?茌C(3×i+1)

其中:i=0,1,2...■,P(i)和C(i)分别代表了置乱后的图像和密文图像像素灰度值,C(0)=100。

4.2 置乱效果

实验选用256×256、灰度为256色的Lena位图作为实验图像。如图2和图3所示:

图2 测试用例原始图像

图3 比特级置乱效果

5 密钥空间分析

超混沌系统的4个初始值和参数作为密钥。若设置精度为1*10-14,则密钥空间总数超过 1*1070。如果将迭代次数也作为密钥,则这样的密钥空间足以应付大部分的密钥攻击[4]。

6 密钥敏感性分析

混沌序列的选择对混沌系统也是敏感的,这样就能有效地增强算法的安全性。

分别取两个不同初值的x3为26.8629和26.86290001(精度为1*10-8),迭代10w次后输出关于x1,x3的散点效果,如图4所示:

因随着迭代次数的逐级上升,差异化将越来越明显,为验证差异性,取后1w个点的散点效果,如图5所示:

可以看出密钥的微小变化将引起密文的显著变化。使用超混沌系统加密的安全性在于其初始值的敏感性,即攻击者用与初始值极为相似的一个数值进行破解,也因为细微的差别而不能正确解密出原始图像,故加密效果良好[5]。

7 结束语

本研究所采用的实验框架核心逻辑在于对超混沌系统的应用以及同统计学计算技巧的结合,从而有效地应用于图像置乱加密。基于超混沌系统完成对明文图像进行加密、置乱和像素值扩散的过程,分析可得其拥有较高的精度和较大的密钥空间。每次随机产生的密钥不同,具有“一次一密”性 。并且该算法运速度较快(为线性时间),具有应用于实时加密传输的潜在价值。

【参考文献】

[1]Gao, T., Chen, Z., Yuan, Z., Chen, G.: A hyperchaos gen- erated from Chens system. Int. J. Mod. Phys. C 17(04), 471–478 (2006).

[2]Shannon, C.E.: Communication theory of secrecy systems. Bell Syst. Tech. J. 28(4), 656–715 (1949).

[3]A,A.V.I.A.:Ergodicproblemsofclassicalmechanics.Math. Phys. Monogr. Ser. (1968).

[4]Zhang, W., Wong, K.-W., Yu, H., Zhu, Z.-I.: An image encryption scheme using lightweight bit-level confusion and cascade cross circular diffusion. Opt. Commun. 285(9), 2343–2354 (2012).

[5]卢辉斌,孙艳.基于新的超混沌系统的图像加密方案,计算机科学,201138(6):149-152.endprint