随着计算机网络的开放、共享性以及互联程度的日益扩大,互联网得到了飞速的发展和应用,网络的重要性及其对社会的影响也越来越大。与此同时,网络的安全保密问题也已成为日益严重的现实问题。那么我们今天就来谈谈数字图像加密方法。

一、基于Arnold变换的图像加密算法

1、基于n维Arnold变换的图像相空间置乱

对于给定的正整数N,下列变换称为n维Arnold变换:

n维Arnold变换同二维Arnold变换一样具有周期性,继续使用Arnold变换,也可以重现原始图像。利用n维Arnold变换对图像的相空间进行置乱,也能实现图像的加密。

2、基于二维Arnold变换的图像加密算法

Arnold 变换是Arnold在研究环面上的自同态时提出的一种变换,俗称猫脸变换。利用Arnold变换的周期性,即当迭代到某一步时将重新得到原始图像,这使得很容易进行图像的加密与解密。基于Arnold变换,可以通过置乱图像的位置空间或相空间两种方式对图像进行加密。

设有单位正方形上的点(x,y),将点(x,y)变到另一点(x’,y’)的变换为
,此变换称为二维Arnold变换。

将二维Arnold变换应用在图像f(x,y)上,可以通过像素坐标的改变而改变原始图像灰度值的布局。原始图像可以看作一个矩阵,经过Arnold变换后的图像会变的“混乱不堪”,由于Arnold变换的周期性,继续使用Arnold变换,可以重现图像。利用Arnold变换的这种特性,可实现图像的加密与解密。

二、基于混沌系统的加密算法

混沌理论与相对论、量子力学并列为二十世纪的三大发现之一。混沌的发现,为决定论和随机论之间架起了一座桥梁,改变了人们以前对随机性和确定性的认识。研究人员发现,混沌和加密有天然的联系,Shannon曾经说过:一个好的混合变换疆场是由两个简单的、不可交换的操作得到。混沌和加密的关系如下表所示:

混沌和加密的对比

混沌性质 加密的性质 描述
遍历性 混乱性 输出具有类似的分布状态
对参数敏感 对变换具有扩散性 输入引起输出的改变
混合性 具有扩散性 局部变化引起整个空间的变化
动力系统确定性 伪随机流确定性 系统产生伪随机信号
结构复杂 算法(攻击)复杂 过程简单,结果复杂

1、基于混沌的像素位置置乱算法

设f代表大小为M×N的图像,选定两个混沌系统分别以初值x(0),y(0)产生两个混沌序列,将序列归一化后分别乘以M和N,并将两列序列取整,使得序列值取值分别为 与 区间的整数。对两个序列进一步处理得到遍历 的序列 与遍历 的序列 ,用这两个序列作为置乱矩阵fm的行地址和列地址,对原图像进行置乱。

2、基于混沌的像素值置乱算法

设f代表大小为M×N,有L个灰度级的图像。选定一维混沌系统,并将其初始值x(0)作为加密密钥,通过该混沌系统产生混沌序列 ,并将其量化为二值随即序列 。将得到的序列 与原始图像数据按比特位进行异或得到加密图像f’。原始图像的像素点f(x,y)(0≤x≤M-1,0≤y≤N-1),对应于加密图像的像素点f(x’,y’)。

3、混沌镜像加密算法

设f代表大小为M×N,通过混沌系统产生混沌序列 ,并将其量化为二值序列 ,各比特位与原图各像素点相对应。将原图划分为上下两部分,当上半部分图像像素对应的比特位为“1”时就与下半部图像对应像素交换位置,当对应的比特位为“0”时,图像像素位置保持不变。为了提高加密程度,应该在置乱前应用其他方式对图像进行划分,然后进行置乱。该加密算法的密钥为混沌系统的初始值x(0),解密过程中选用相同的混沌系统为初值,然后按照相反步骤对加密图像进行镜像置换操作即可恢复原始图像。

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