基于高维混沌系统的JPEG彩色图像加密方法

2020-07-11 14:41陈景柱鲍玉斌
实验室研究与探索 2020年5期
关键词:加密算法密文密钥

陈景柱,鲍玉斌

(东北大学计算机科学与工程学院国家级计算机实验教学示范中心,沈阳110819)

0 引 言

随着多媒体技术的飞速发展与互联网的广泛普及,图像资源作为互联网资源中用户与互联网交互的最直接方式之一,已被广泛应用于互联网以及各领域中。并随着物联网、人工智能、边缘计算等技术的发展其资源需求量呈现爆炸式增长。在这种图像资源需求的爆炸式增长背景下,互联网传输成为限制图像资源的主要瓶颈,其主要体现为:①图像资源的传输对互联网带宽的消耗程度明显高于传统的文本资源,因此,如何能在特定带宽下传输更多的图像数据是限制图像资源的第一个瓶颈[1];②互联网开放导致图像资源的互联网传输面临之数据泄露、恶意篡改和非法盗用等安全隐患,因此,如何安全实现图像资源的互联网传输是限制图像资源的第二个瓶颈。正是由于互联网中图像资源传输的以上瓶颈,使压缩图像资源的和安全传输成为多媒体研究领域的热点问题。

国际标准化组织发布了一系列图像资源压缩标准,目前互联网环境下应用最为广泛的是JPEG(Joint Photographic Experts Group)[2-3]。JPEG 作为目前互联网环境下应用最为广泛的编码格式,采用该标准编码的图片数据有图像压缩比大、图像压缩后质量好等优点。传统的JPEG图像加密方法通常将图像按照二进制数据流,并针对空域加密,加密后图像失去了相关性和可压缩性,这种加密方式保证了图像数据的高安全性,但考虑图像的压缩标准,加密后的图像不再适合在互联网中实时传输。因此,兼顾JPEG 的高压缩比和图像数据的高安全加密方法研究逐渐成为图像信息安全领域中的研究热点。

虽然部分图像数据加密方法声称能够同时兼顾图片数据的高压缩比和高安全性,但目前的JPEG 图像加密算法仍存在两方面的不足:①一些JPEG 图像加密方法在JPEG 图像数据加密的中存在置乱、扩散强度不足而导致残留频域信息,这些残留频域信息使得加密后的图像数据仍可被破解;②一些JPEG 图像加密方法在图像加密过程中对影响熵的编码,导致密文图像膨胀率过高。与此同时,目前传统的JPEG 图像加密算法通常针对灰度JPEG 图像,这些方法无法针对彩色JPEG 图像进行加密。针对传统JPEG 彩色图像加密技术的以上几方面不足,现结合混沌系统的伪随机、高效等特点提出一种基于改进高维混沌系统的JPEG彩色图像加密方法。通过算法安全性分析表明,彩色JPEG 图像加密算法可以有效抵御密码学分析,能够同时兼顾JPEG的高压缩比和图像数据的高安全加密,所加密后的图像资源在开放的互联网中具有足够的高实时性和高安全性。

1 相关研究

图像加密技术从最初提出针对图像进行加密以来,在加密技术上有了很大的发展与进步,其中数据加密、数字签名、身份验证等领域得到了广泛研究[4]。JPEG最早由国际标准化组织(IS0)和国际电报电话咨询委员会(CCITT)共同提出的国际数字图像压缩标准,该压缩标准是目前应用得最广泛的图像压缩格式之一。目前已有的JPEG图像加密算法主要可以被划分为两大类:

(1)基于DCT 域[5]的JPEG 图像加密。JPEG 的压缩过程中需要使用DCT域,目前大量算法基于DCT域实现JPEG图像的加密。典型的如Tang L[6]通过对DCT和AC系数进行量化从而实现图像数据的块内部置乱。Lu Y[7]等人将DC系数同其他系数一同置乱从而达到更好地加密强度。然而这类方法没有考虑游程编码压缩因而在加密过程中残生严重的膨胀。

(2)基于熵编码[8-9]。该类方法通过选择不同的熵编码表作为JPEG图像加密的密钥。典型的如基于混沌系统的混沌系统的JPEG 图像加密算法。混沌系统具备对初始条件和系统参数的敏感性特征,因而在图像加密中得到了广泛的应用。Zaidi S J 和H[10]采用灰度图像对算法进行实验分析,其算法从扩展的Arnold混沌映射(Extended- acm)开始对源图像进行洗牌,它不仅对像素坐标进行置换,还利用混沌序列的值以修改相应的强度值。在文献[11]Steffi A 提出了一种基于混沌贝克图(chaotic baker map)和混沌洛伦茨图(chaotic Lorenz map)的图像加密方法,通过采用128位的外部密钥和两个混沌映射。

2 基于改进高维混沌系统的JPEG 彩色图像加密算法

混沌系统目前广泛应用于加密领域。最早在1989 年,Matthews[12]提出混沌系统适用于加密;Fridrich[13]在1998 年提出基于混沌系统的图像加密算法,实现了基于香农密码学理论的混沌加密算法。在混沌系统中,混沌是一种貌似无规则的伪随机现象。其在确定性非线性系统中不需附加任何随机因素也可出现的一种内在随机性,同时其伪随机行为能够准确再生。混沌是确定性非线性系统中普遍存在的一种现象,它对初始条件敏感,具有随机性。

本文提出的基于改进高维混沌系统的JPEG 彩色图像加密方法基于超混沌Lü系统[14],以兼顾JPEG的压缩能力和更高的安全性能。JPEG 图像在编码时需要将原始图像数据首先进行分块。通过块置乱可以将JPEG图像数据按照编码的规则首先进行整体的置乱。本章中提出的块置乱选取的混沌系统是超混沌系统,以获取更高的安全性能。

超混沌Lü系统的动力学方程定义如下:

式中,a、b、c是Lü 系统的常量,k1、k2是控制参数。当(a,b,c)= (36,3,20),0.7 >k1,k2> 0 时其李雅普诺夫指数为正,λ1=1.331 6,而其他的指数均为负(λ2=-0.000 07 和λ3= -20.331 5)。

在超混沌系统的基础上,提出的基于改进高维混沌系统的JPEG 彩色图像加密方法分别对彩色JPEG图像的DC系数和AC 系数加密。设分块后的每个图像大小为8 ×8 像素的数据块为单位,量化步长为8,块个数为m。下面对JPEG 图像的压缩过程进行描述:

(1)JPEG图像的DC 系数加密。①基于系数交换对DC系数置乱,假设混沌序列排序y为{y1,y2,…,yn},交换目标由超混沌Lü 系统生成的伪随机序列所决定。具体地,通过混沌序列排序y生成一组置乱密钥流key = {k1,k2,…,kn},交换当前DC 系数与伪随机地选择出的DC系数,直至所有的DC系数均被交换过一次,完成一轮DC 系数的置乱操作;②在完成DC系数之乱后,所提出方法对DC 系数进行扩散,具体地,通过生成伪随机密钥key,扩散置乱后DC 系数的符号位。

式中,xi+1是过Logistic 映射[15]得到的状态变量,并比特级别扩散DC系数。

(2)JPEG图像的AC 系数加密。①按照编码时的顺序,对连续0 系数及其后面的非0 系数作为一个整体进行置乱,具体地,分别将连续0 系数及其后面的非0 系数整合为一组,并将16 个连续的0 系数整合为一组,置乱所有AC 系数组并将置乱后的结果协会到AC系数组中;②在完成AC系数之乱后,对AC系数进行扩散,具体地,基于AC系数置乱过程中对连续0 系数及其后面的非0 系数的两个整体,依据Logistic映射及公式1 生成密钥key′,按照

扩散所有非0 符号位,其中,i是当前AC 系数在序列中的下标,si是当前AC 系数的符号位,0 代表正数、1 代表负数。并按照

实现对AC系数值的扩散。

3 实 验

一个完备的数字图像加密系统,其应该有能力抵抗各种常见类型密码学分析的攻击,包括穷举攻击、密钥敏感等等。本节将进行实验,测试本文提出的彩色JPEG图像加密算法的抗穷举性、抗统计性及密钥敏感性,以验证算法的安全性。实验采用的测试图像是USC-SIPI图像数据库中的Lena、baboon和peppers。

(1)抗穷举攻击分析。穷举攻击的攻击原理是通过不断地尝试所有可能的密钥,直至发现正确的密钥。由于目前计算机的计算能力限制,穷举攻击时在一组密钥的生存期内依次尝试2100个可能的密钥是不可实现的。因此,密码系统的密钥长度如果大于100 比特可认为是安全的。本文中,混沌映射均采用64 位双精度浮点数迭代。由于64 位的双精度浮点数具有53 个比特的尾数,同时各个混沌映射中的各个状态变量互相独立,可知本文中的加密算法的密钥实际具有5 ×53 =265 位,远多于现代密码系统需要的密钥长度。因此,本文中提出的加密算法可以有效抵御穷举攻击。

(2)抗统计攻击分析。统计分析是目前针对图像加密系统的主流攻击方式。统计攻击通过一系列的攻击方法,找到并分析密文图像中仍存在的一些信息,来攻击图像加密系统。由于本加密算法分别针对彩色JPEG图像的DC 与AC 系数进行加密,因此在测试时分别测试两种系数的变化率,测试结果见表1。考虑到AC系数中含有大量的零值,因此测试选取AC系数的非零值在MCU中的坐标与值是否改变。测试结果为所有颜色分量的DC系数与AC系数变化率。

表1 DC与AC系数变化率

本文选取测试DC系数之间的相关性,在JPEG编码的过程中,图像像素首先通过了划分MCU 操作,随后进行离散余弦变换。离散余弦变换后,每个MCU中的DC系数携带其主要信息,且在MCU内部的像素点间相关性较高。因此本文选取测试DC系数之间的相关性,具体测试方法如下。首先,在加密过程中选取量化后及加密后的数据,提取出所有的DC 系数的Y 分量、Cb分量、Cr分量。随后计算每对相邻MCU 的DC系数相关性rxy。计算相关系数的公式如下:

其中:x和y分别是两个相邻MCU 的DC 系数在图像中的序号;N表示采样点的总数,这里N为对应分量的DC系数数量。明文图像和密文图像的DC 系数在水平、垂直和对角方向相邻的相关系数结果如表2 所示。从表中可以得到,本文提出的JPEG 图像加密算法可以有效地去除原有图像MCU间的相关性。

表2 明文和密文图像中相邻DC系数的相关系数

密钥敏感性分析。密钥敏感是对一个加密系统的基本要求,具体来说,一个加密系统在使用两个密钥加密同一张明文图像时,将产生完全不相同的密文图像,即使在加密时使用两个差异极小的密钥加密。本文通过选取一系列微小差异的密钥加密同一张明文图像,测试是否获得不同的密文图像,以验证本算法的密钥敏感性。

实验结果如图2 所示,微小差别密钥加密的密文图像与原始密钥加密的密文图像相减后仍为伪随机图像,显然通过微小差异的密钥加密得到的密文完全不同。

图2 密钥敏感性测试结果

4 结 语

本文结合混沌系统的伪随机、高效等特点,提出了基于混沌的彩色JPEG 图像加密算法,解决了现有JPEG图像加密算法存在置乱-扩散强度不足或者残留频域信息的问题。实验结果表明该算法可以有效抵御密码学分析,在开放的互联网中具有足够的安全性。同时,该算法利用了JPEG 编码格式由于具有图像压缩比大、图像压缩后质量好等优点,加密后图像,保持了原有的相关性和可压缩性。

多媒体技术的飞速发展,使得数字图像在互联网中广泛应用。但是,由于互联网具有高实时性与高开放性特点,主要利用了混沌的思想对JPEG 图像进行加密,未来可以基于置乱-扩散的方法对更多类型的数字图像进行加密处理,提高数字图像在互联网中传输的安全性。

猜你喜欢
加密算法密文密钥
一种支持动态更新的可排名密文搜索方案
幻中邂逅之金色密钥
基于模糊数学的通信网络密文信息差错恢复
密码系统中密钥的状态与保护*
密钥共享下跨用户密文数据去重挖掘方法*
基于整数矩阵乘法的图像加密算法
基于混沌系统和DNA编码的量子图像加密算法
TPM 2.0密钥迁移协议研究
一种对称密钥的密钥管理方法及系统
混沌参数调制下RSA数据加密算法研究