混沌由于其对初值敏感性、对参数敏感性、遍历性和类随机性等的特点,很适合于信息加密。T.Habutsu等使用斜帐篷映射构造了分块加密密码,M.Tsueike等使用修改的二维Baker映射构造了分块加密密码。但这些方法中因为用到较频繁的浮点运算,对计算机的计算精度要求高,同时也降低了计算速度。为此,一些离散化方法得到了研究,对斜帐篷映射离散化,构造了新的密码,F.Picller和J.Scharinger通过离散化二维Baker映射,建立了基于混沌置乱的密码,F.Picmer将其扩展到了任意尺寸的二维格形。

二维混沌映射因其与图像位置维数相适应,广泛用于图像置乱和图像加密,J.FridrichE81研究了二维Baker映射和Cat映射用于加密的方法,并分析了这2种映射的密钥空间和密钥可靠性,但其中的三维扩展只针对灰度,不适合用于三维空间中的位置置乱,如视频流、多频段图列等。Standard映射是一种非线性混沌映射,从密码学的观点来看,此映射可以提供更大的密钥空间,正是基于这点,本文构造了基于Standard映射的加密方案,将二维Standard映射扩展到三维,用于多媒体加密,并分析了它的密钥敏感性,给出扩散函数和循环次数的选择等。

一、Standard映射的离散化及其三维扩展

Standard映射:

Standard映射及其三维扩展在多媒体加密中的应用

J.FridrichE81以2Jr7N为单位,将其从区域[O,2n)×[O,2π)离散化到区域N×N,其中N为正整数。即得到:

Standard映射及其三维扩展在多媒体加密中的应用

式中,K>O且K∈Z.Fridrich将图像灰度作为第三维,实现了三维扩展,这并不能实现三维空间中的位置置乱,为此,我们做了新的扩展,我们分别沿着i,j,t这三个方向做一次Standard映射后,将Standard映射扩展到了三维,因为这种三维映射是以二维映射为基础的,因此延续了映射的混沌特性。

Standard映射及其三维扩展在多媒体加密中的应用

式中,Ki,K2,K3>O且Ki,K2,K3∈Z。

可见,这种三维映射与二维映射相比,有更大的参数空间,用于加密,能够获得更大的密钥空间,我们将图像灰度值排列成立方体,用这种三维映射对图像加密,获得了更快的置乱速度。另外,这种三维映射可以用于视频数据、图像序列等三维数据的置乱和加密。

二、多媒体数据加密方案

这里将Standard映射与扩散机构相结合,构造了如图1,所示的数据加密方法,即将混沌映射与扩散函数相结合,利用混沌映射实现置乱功能,利用扩散函数实现扩散功能,系统密钥由离散混沌映射的参数、扩散函数的参数和加密循环次数构成。

Standard映射及其三维扩展在多媒体加密中的应用

三、混沌映射的参数敏感性

离散化后的二维Standard映射的参数空间为K>O且K∈Z,此空间已经很大,但并非所有的K都适合作密钥,这要与置乱的循环次数和明文分块大小结合考虑,使得密钥的敏感性最好,为此,我们测试了映射参数不同、置乱循环次数以及映射区域大小对参数敏感性的影响。

此处,定义参数敏感性的一个衡量指标Ps(K)。令原始图像为XO(设图像任何两点的灰度值都不相同),图像为边长Ⅳ的正方形,设映射参数K=p(p为参数空间中的任一个参数,并且p>0,p∈Z)时,原始图像被映射为X1;映射参数K=p+l时,原始图像被映射为X2;映射参数K=p-1时,原始图像被映射为X3。则Ps(K)定义为:

Standard映射及其三维扩展在多媒体加密中的应用

 

式中:

Standard映射及其三维扩展在多媒体加密中的应用

X(i,j)为图像中(i,j)位置处的像素值。可以将映射参数敏感性理解为映射参数轻微变化时,引起的映射结果的变化,强度高的密码要求这个指标要大。

1、置乱循环次数对参数敏感性的影响

我们选择边长为256像素的正方形区域,映射参数在1到50 000间、置乱循环次数在1到6间变化,计算出敏感性指标变化曲线,如图2(a)所示,可见,对于相同的置乱循环次数乃,参数敏感性随着映射参数K的增大,缓慢增加;对于相同的映射参数K,参数敏感性随着置乱循环次数n的增加,迅速增大到100%,当n=6时,Ps(K)≈100%。因此,如果选择整个映射参数空间作为密钥空间,要保证置乱循环次数n超过3次,密码系统才更安全。

2、映射区域大小对参数敏感性的影响

测试在映射参数、置乱循环次数一定情况下,映射区域大小(正方形边长N)不同对参数敏感性的影响。我们选择边长分别为32,128,256的正方形区域,分别测试了它们在置乱循环次数为3时,映射参数在1到50 000间变化的参数敏感性曲线,如图2(b)所示,由图可见,映射区域较小时(图中为32 x 32),参数敏感性相对较小,但仍然在85070以上,映射区域大小在128×128以上时,参数敏感性保持在95%左右,而且随着置乱循环次数的增加,参数敏感性也增加。因此,使用此种映射加密,在置乱循环次数大于3时,选择的明文块大于32×32,可以认为是安全的。为了保持更高的密码强度和系统安全性,可以选择更大的明文块,或更多的循环次数。

Standard映射及其三维扩展在多媒体加密中的应用

四、扩散函数

传统的高强度密码都由置乱和扩散过程组成,如DES,IDEA,AES等。引入扩散结构可以增加抗差分攻击和选择明文攻击的能力,从而增加密码强度,常用的扩散方法有2种。一种是图像中相邻4个点的灰度值的扩散,这样,随着置乱循环次数的增加,扩散范围成4的幂指数增加;另一种是按光栅扫描方式,用当前像素灰度值与前一个相邻的像素之间的扩散,这种扩散方式的扩散速度更快,我们按照上面的方式分别设计了一种扩散函数。

1、相邻四点之间的扩散

设相邻4点为x(i,j),x(i,j+1),x(i+1,j)和x(i+1,j+1),扩散后的对应4个点为x'(i,j),x'(i,j+1),x'(i+1,j)和x'(i+1,j+1),则扩散方程为:

Standard映射及其三维扩展在多媒体加密中的应用

解密时的反扩散方程为:

Standard映射及其三维扩展在多媒体加密中的应用

2、相邻2点之间的连续扩散

这里使用相邻点之间的扩散,图像采用光栅扫描顺序,若Pi为扩散前的像素值,Ci为扩散后的像素值,三为像素灰度数,则扩散过程为:

Standard映射及其三维扩展在多媒体加密中的应用

CO由用户密钥中提供,解密时,反扩散过程为:

Standard映射及其三维扩展在多媒体加密中的应用

CO由用户密钥中提供。

我们测试了以上2种扩散方法的扩散速率,即明文中一个像素改变带来的密文变化率与置乱循环次数的关系。这里的密文变化率是指明文中改变一个像素后,引起的密文的像素改变个数的百分比,我们也称其为扩散率.实验结果表明,使用相邻4点间的扩散方法和相邻两点间连续扩散方法,在4次循环后扩散率均可达80%以上,这种扩散率,对选择明文攻击和差分攻击要求更高的工作量和复杂度,从而增加了攻击难度,提高了密码强度,增强了安全性。

五、置乱循环次数

对于将混沌映射与扩散过程相结合的加密系统,增加置乱循环次数具有以下优点:①循环映射次数越多,映射参数的敏感性就越高,扩散函数的扩散率也就越高,从而提高了密码系统的密钥敏感性;②增加置乱循环次数,不仅能够增加密钥敏感性,也能够使加密后的图像直方图更加均匀,从而提高了抗统计分析和已知密文攻击的能力;③每次置乱采用不同的映射参数和扩散的初始值,从而增加穷举攻击的难度,提高了密码强度。总之,置乱循环次数越高,密码的强度也相对越高;当然,循环次数的增加,也会带来运算量的增大,所以,置乱循环次数可以根据对安全性和快速性要求的不同而适当选择。

六、实验结果

1、图像序列加密

我们用以上算法加密尺寸为240×352的图像序列Bus,以64×64 x 64的图像块加密,原图像序列和加密后图像序列分别如图3所示(仅列出4幅),其中,(a)和(e)分别为第1幅图在加密前后的图像;(b)和(f)分别为第5幅图在加密前后的图像;(c)和(g)分别为第9幅图在加密前后的图像;(d)和(h)分别为第13幅图在加密前后的图像,可见,加密后图像内容完全不可理解。

Standard映射及其三维扩展在多媒体加密中的应用

2、时间测试

这里将本文提出的方案与DES算法做比较,测试它们加密速度的不同,运行的计算机是1.4 GHz CPU,256 MRAM,Microsoft Windows操作系统,采用相邻点间连续扩散时,Standard映射的循环次数为3次;采用相邻4点间扩散时,Standard映射的循环次数为6次,测试结果如表1所示,可见,基于二维、三维Standard映射的加密方法与DES相比,具有更快的加密解密速度,其中,采用相邻点间连续扩散方式时的加解密速度达到1.7 Mbit7s以上,更适合用于图像、视频等大数据量、实时性要求高的多媒体数据的加密。

Standard映射及其三维扩展在多媒体加密中的应用

小知识之图例

图例是集中于地图一角或一侧的地图上各种符号和颜色所代表内容与指标的说明。