郭献洲, 刘文文, 张相梅
(河北工业大学 理学院, 天津 300401)
采用混沌系统的HIS彩色图像加密算法
郭献洲, 刘文文, 张相梅
(河北工业大学 理学院, 天津 300401)
为了增强对数字彩色图像信息安全的有效保护,给出一种基于医院信息系统(HIS)的彩色图像加密算法.首先,使用混沌序列控制对亮度层的位平面排序;然后,对排序后每一个位平面采用改进的置乱算法;最后,恢复到像素平面以完成加密.该算法相比于基于RGB系统的加密算法,减小了时间复杂度,且不降低加密算法的安全性能.仿真结果表明:该算法的密钥空间大、秘钥敏感性强,对统计分析和剪切攻击具有较好的抵抗能力. 关键词: 图像加密; 混沌系统; 位平面; 医院信息系统; 分块排序
为了增强对数字彩色图像信息安全的保护,研究者们提出了一些改进的加密算法,传统的二维Arnold变换被扩展到三维及更高的维度[1],新型的三维混沌映射[2]也被提出用于数字图像的加密算法.同时,将数字图像进行分块、扩散,再配合使用混沌序列构造的混沌网[3]或仿射变换与Logistic混沌映射[4]的加密算法也具有较好的扩散加密效果.区别于基于RGB系统的彩色图像加密算法,Guo等[5]将彩色图像在医院信息系统(hospital information system,HIS)下加密,针对携带较多视觉信息的亮度层,采用较其另两层而言安全性能更好但相对复杂的算法,兼顾了安全性能和算法复杂度上的双重优势.本文在已经提出的数字图像加密算法[6-11]的基础上,给出一种基于HIS的彩色图像加密算法.
首先,将RGB彩色图像转换到HIS系统下;然后,对3个分量分别完成加密操作;再将其重新转换到RGB系统下,以完成整体加密.其中,亮度层使用一种基于位平面和混沌序列的分块加密算法,而在色度和饱和度两层采用时间复杂度低的猫映射加密算法.关于猫映射文中不再赘述.
针对亮度层,文中改进的加密算法包括2个步骤,即基于位平面排序的像素置换和一种改进的基于混沌序列和位平面分块的像素置乱.
1.1 基于位平面排序的像素置换
为摒弃了时间复杂度高的异或等运算,结合混沌序列,使用对计算机而言时间复杂度较低的排序操作进行像素置换,算法采用以下5个步骤.
步骤1 得到明文图像的尺寸N×N,通过密钥控制Chebyshev映射进入混沌状态,并生成一组混沌序列,去掉其前面若干项后保留N项记为X.
步骤2 按照值大小将步骤1所得X进行升序排列,得到另一组序列记为Y.
步骤3 将明文像素平面拆分为位平面,按照N×8N结构拼接后将每一行与X的项进行关联,再按照X中的各项在Y中的对应位置关系,对位平面上各与其相关联的行进行重排序.
步骤4 选取另一组混沌序列中8×N项按照步骤1到步骤3对拼接位平面的各列进行重新排序.
步骤5 将经过行列重新排序的位平面恢复到像素平面.
1.2 基于混沌序列和位平面分块的像素置乱
置乱算法将经过基于位平面排序的像素置换算法处理的灰度图像拆分为8个位平面,配合混沌序列对各平面进行以下6个操作.
步骤1 利用Logistic混沌系统生成一组序列,从某项开始选取连续的4个值,配合该位平面的第一轮置乱使用.
步骤2 构造4个集合,即A={x|xmod 4=0,x∈N+},B={x|xmod4=1,x∈N+},C={x|xmod 4=2,x∈N+},D={x|xmod4=3,x∈N+},与后面提出4种排序方法一一关联.
步骤3 将步骤1所得4个混沌值乘以256后,分别判定到4个集合中.
步骤4 将上一轮置乱后的位平面按后面提出的扩散方法分为4个等份区域,与步骤1所得4个混沌值一一关联.
步骤5 对分块后各位平面上的点进行扩散穿插及排序,方法如后面提出的扩散方法所述.排序时,对位平面上不同区域的点采用不同的方法.该点所处区域在步骤4中关联的混沌值,被判决到步骤2中的哪一个集合,就对该点使用步骤2中与该集合关联的方法进行排序,遍历位平面上的所有点.
步骤6 从已生成的混沌序列中选取本轮置乱所使用的项之后的4个连续项,重复步骤3到步骤5的过程,直到完成指定迭代次数.
1.2.1 扩散方法 将每一个位平面分别在行和列进行二等分,将会得到4个分块,将左上部分的点穿插到整个位平面的奇数行和奇数列;将右上角的部分的点穿插到整个位平面的奇数行和偶数列;将左下角的部分的点穿插到整个位平面的偶数行和奇数列,将右下角部分的点穿插到整个位平面的偶数行和偶数列上,至此,将完成位平面上所有点的一次扩散和穿插.
1.2.2 集合判定方法 将每轮置乱所需的从混沌序列得到的若干值分别乘以256后取整,再将其逐个判定到步骤2的4个集合之一.
1.2.3 排序方法 置乱算法对每轮分块扩散后的点进行不同的重新排序,这里一共设计了4种方法:1) 行与列都按照原本的正序排列;2) 行按照原来本的正序排列,列按照原本的倒序排列;3) 行按照原来本的倒序排列,列按照原本的正序排列;4) 行与列都按照原本的倒序排列.
对色度和饱和度层采用猫映射加密,秘钥为迭代次数30.亮度层采用HIS的彩色图像加密算法,对位平面排序使用Chebyshev混沌序列,将控制行和列排序的两个序列的初始值和参数分别选择如下:x0,y0均为0.48,k,v均为3.777 777,则记位平面置乱时的迭代次数T=90.在基于混沌序列和位平面分块的像素置乱算法中,用8组Logistic序列分别控制8个位平面的排序,将这8个Logistic映射的初始值分别表示为x1,0,x2,0,x3,0,x4,0,x5,0,x6,0,x7,0,x8,0;参数变量分别表示为μ1,μ2,μ3,μ4,μ5,μ6,μ7,μ8,各参数选值如表1所示.由此得到加密图像和亮度层加密直方图,如图1,2所示.
表1 Logistic映射的初始值和参数
图1 Lena加密图像 图2 Lena加密亮度层直方图 Fig.1 Encrypted image of Lena Fig.2 Histogram of brightness layer of encrypted Lena
2.1 秘钥安全性分析
文中算法包含3个方面的密钥:1) 色度和饱和度层使用猫映射变换时,迭代次数为2个整型密钥;2) 算法1.1中两个混沌序列的初始值和参数为4个浮点型秘钥;3) 算法1.2中使用的8个Logistic序列初始值和参数及各层的置乱迭代次数T为2×8=16个浮点型和1个整型秘钥.混沌序列选择的起始位也可以作为一个整形密钥.综合以上分析,文中算法的密钥包括大量的浮点型密钥,以及较多的整型密钥作为辅助加密,因此,认为该加密算法具有较大的密钥空间.
2.2 相邻像素相关性
分别计算加密前后的RGB各层的水平相邻、垂直相邻及对称轴相邻像素,随机选取1 000组相邻点,计算结果如表2所示.
表2 相邻像素相关系数
由表2可知:该加密算法能较大地降低原始图像相邻像素之间的相关性.
2.3 密钥敏感性
评估亮度层加密算法的密钥敏感性,对正确秘钥加密的各层位平面分别使用表3中的错误秘钥进行解密;然后,将解密位平面与对应的原始位平面进行异或运算以统计不同点的比例,结果如表4所示.
表3 错误解置乱密钥
表4 错误解置乱相差比例
结果表明:在使用该算法时,只要任意密钥存在微小错误,解密位平面将会与原本位平面产生较大差别(对于二值图像相差比例达到50%属于不相关),可以认为该置乱算法具有较好的密钥敏感性.
(a) 剪切23%加密图像 (b) 剪切23%恢复图 图3 剪切图像及其恢复效果Fig.3 Sheared image and recovered result
2.4 抗剪切攻击
对遭受剪切攻击的加密图像进行正确解密,结果如图3所示.由图3可知:加密图像遭受剪切攻击后,仍能从中恢复出原始图像较多的有用视觉信息,表明文中的加密算法能够较好地抵抗剪切攻击.
通过理论分析和实验验证可知:文中算法具有较好的性能,同时,兼顾了降低整体算法的时间复杂度,但由于色度饱和度层所用算法较简单,安全性有一定的折扣,可以考虑配合使用安全性能更好的加密算法.
[1] 刘涛,肖汉.基于三维 Arnold 变换的数字图像置乱改进算法[J].科学技术与工程,2009,9(6):1580-1583.
[2] 刘冰,潘大兵.新三维混沌映射及其在数字图像信息加密中的应用[J].华侨大学学报(自然科学版),2015,36(6):655-658.
[3] 田岩,谢玉波,李涛,等.一种基于分块和混沌网的图像置乱方法[J].中国图象图形学报,2007,12(1):56-60.
[4] 杨雪,于晓洋,邹奇峰,等.基于仿射模变换的图像分块均匀加密算法[J].南京理工大学学报(自然科学版),2010,34(4):441-447.
[5] GUO Qing,LIU Zhengjun,LIU Shutian.Color image encryption by using Arnold and discrete fractional random transforms in IHS space[J].Optics and Lasers in Engineering,2010,48(12):1174-1181.
[6] FU Chong,LIN Binbin,MIAO Yusheng,etal.A novel chaos-based bit-level permutation scheme for digital image encryption[J].Optics Communications,2011,284(23):5415-5423.
[7] 鲍芳,李军,李旭.基于高维广义猫映射的图像加密算法[J].西安理工大学学报,2012,28(2):193-197.
[8] ABUTURAB M R.Securing color information using Arnold transform in gyrator transform domain[J].Optics and Lasers in Engineering,2012,50(5):772-779.
[9] ABUGHARSA A B,BASARI A S B H,ALMANGUSH H.A novel image encryption using an integration technique of blocks rotation based on the magic cube and the AES algorithm[J].International Journal of Computer Science Issues,2012,9(4):41-46.
[10] LIU Zhengjun,XU Lie,LIU Ting,etal.Color image encryption by using Arnold transform and color-blend operation in discrete cosine transform domains[J].Optics Communications,2011,284(1):123-128.
[11] PALLAVI S,ASSOCIATE I,AVADHANI P S.Permutation based image encryption technique[J].International Journal of Computer Applications,2011,28(8):45-47.
(责任编辑: 黄晓楠 英文审校: 吴逢铁)
HIS Color Image Encryption Algorithm Using Chaos System
GUO Xianzhou, LIU Wenwen, ZHANG Xiangmei
(School of Science, Hebei University of Technology, Tianjin 300401, China)
In order to protect digital color image′s safety, one color image encryption algorithm for hospital information system (HIS) space is proposed in this paper. First of all, use chaotic sequence to control the bit-plane of luminance layer, then use the improved scrambling algorithm on each sorted bit-plane, finally, retrieve them into pixel plane. This algorithm has less time complexity compared to the traditional algorithm in RGB space, meanwhile, has good safety performance. The simulating results show that this algorithm has a large space of keys, good key sensitivity, also has ability to resist the statistical analysis and shearing attacks. Keywords: image encryption; chaos system; bit-plane; hospital information system; block sorting
10.11830/ISSN.1000-5013.201702020
2017-02-14
郭献洲(1976-),男,副教授,博士,主要从事应用数学、数学计算的研究.E-mail:xianzhou_guo@hebut.edu.cn.
国家自然科学基金资助项目(11301132, 11171087)
TP 391.41; TP 393
A
1000-5013(2017)02-0241-04