APP下载

可分离加密域可逆数据隐藏方案

2015-10-28田野项世军

应用科学学报 2015年6期
关键词:解密密钥加密

田野,项世军

暨南大学信息科学技术学院,广州510632

可分离加密域可逆数据隐藏方案

田野,项世军

暨南大学信息科学技术学院,广州510632

利用图像测试,提出了一种可分离加密域可逆数据隐藏算法,能获得质量较高的直接解密图像.加密方在图像流加密之前进行图像测试并生成位置图,嵌入方根据位置图将秘密信息嵌在选中像素的高位,接收方在相邻像素相关性基础上通过一种自适应差值算法实现可逆性.若全部嵌在选中像素的第8位,得到的直接解密图像质量较差;若全部嵌在选中像素的第7位,则无法实现无失真恢复.针对这两个缺点,该文在保证无失真恢复同时获得了质量较高的直接解密图像.实验表明所提出的算法有效,且性能优良.

可逆数据隐藏;加密域;预测误差;图像测试

可逆数据隐藏是一种将需要隐藏的额外信息嵌入到载体中的技术.不同于传统的隐写和水印,它关注的重点不是对抗各种外来攻击的能力,而是无失真地恢复载体以及精确地提取数据.在一些既需要嵌入秘密信息,又要求恢复出精确无误的原作品的领域中,可逆数据隐藏有着极其重要的作用,例如为军事、医疗图像等不能容忍恢复失真的图像增加认证信息.目前已有的可逆数据隐藏算法大致可分为3类:基于差值扩展的算法[1-5]、基于直方图平移的算法[6-10]、基于预测的算法[11-12].

近些年来,由于云计算成为研究热点,加密域信号处理得到了更加广泛的关注.在云计算中,用户需要将隐私数据传给云端,但并不信任云端,因此会将数据加密后再传给云端.这样,云端所面临的就是加密域信号处理问题.

除了云计算,加密域可逆数据隐藏也是加密域信号处理中一个值得关注的研究方向.加密方将加密后的数据传给嵌入方,嵌入方在加密域嵌入秘密信息,接收方既能提取出嵌入的信息又能无失真地恢复原始载体.近几年来,世界各地的学者提出了许多加密域可逆数据隐藏算法,它有多种分类方法.按照数据提取和图像恢复能否分离,加密域可逆数据隐藏算法分为可分离的和不可分离的.不可分离的算法如文献[13-14]的方法,文献[13]利用自然图像的空间相关性实现可逆性,其无失真提取和恢复的条件是分块大小n≥32×32;文献[14]对文献[13]进行了改进,采用一种效果更好的波动函数并利用边缘匹配降低了提取和恢复的误差.不可分离算法的缺点是当嵌入率较高时无法精确提取出嵌入的信息,可分离算法则大大改善了这一点[15-16].文献[15]利用压缩保证了数据的无失真提取,其嵌入率高于文献[13-14].文献[16]在增大嵌入率的同时保证了较小的提取失真、较强的可逆性和较高的图像恢复质量.按照获取嵌入空间和加密的前后顺序,加密域可逆数据隐藏算法分为加密前预留空间的方法[17-18]和加密后保留空间的方法[13-15],前者可以获得更大的嵌入容量.按照加密方法的不同,加密域可逆数据隐藏算法又可分为流加密[13-14]、分组加密[19]等.

在上述算法中,文献[16]提出的可分离加密域可逆数据隐藏算法十分巧妙地将秘密信息嵌入到选中像素的高位上,并结合预测算法实现了可逆性,但直接解密的图像质量不够理想.针对这一缺点,本文根据图像恢复阶段所采用的预测算法,在嵌入秘密信息之前对图像进行测试,既能保证无失真地恢复图像又能提高解密后的图像质量.本文算法流程图如图1所示.

图1 本文算法流程图Figure 1 Flowchart of the proposed algorithm

1 图像加密和测试

1.1图像测试

文献[16]在每一次嵌入过程中将秘密信息全部嵌在选中像素的第8位或全部嵌在第7位,即加密方告诉嵌入方所有选中像素均嵌在第8位或均嵌在第7位.虽然嵌在第8位可以提高图像恢复的成功率,但是降低了直接解密图像的PSNR值.另外,嵌在第7位得到的直接解密图像的PSNR值较高,却相应地降低了图像恢复的成功率.针对这一点,本文根据图像恢复阶段所采用的预测算法在嵌入秘密信息之前对图像进行测试,既能保证无失真地恢复图像,又能保证直接解密后的图像有较高的PSNR值.图像测试流程如图2所示,用b(d)表示加密前的选中像素,D(d)表示解密后携带秘密信息的选中像素,d=1,2,···,L,L为秘密信息的长度.根据下文即将介绍的3.3节中的图像恢复方法,在嵌入第7位的情况下,若想正确恢复b(d)有两种情况:第1种情况是b(d)的第7位为0.在恢复阶段,将D(d)的第7位置1得到D0(d),置0得到D1(d).显然,D1(d)为该像素的真实值,即D1(d)=b(d).因此,若想正确恢复该像素,只需在判决阶段使Dout(d)=D1(d).由式(15)可知,只有当预测值Dest(d)更接近D1(d)而非D0(d)时才能使Dout(d)=D1(d).因为D0(d)-D1(d)=64,所以在第1种情况下正确恢复的条件为Dest(d)<b(d)+32.第2种情况是b(d)的第7位为1,正确恢复的条件为Dest(d)≥b(d)-32,如图3所示.

加密方对每个像素进行测试并将测试结果标记在位置图上.若该像素的第7位是0且满足Dest(d)<b(d)+32,或者第7位是1且满足Dest(d)≥b(d)-32,则记为0;否则记为1.嵌入方在得到加密图像和位置图后进行嵌入,若选中像素在位置图上的标记为0,则嵌在第7位;否则嵌在第8位.于是加密方传递给嵌入方的信息不再是所有选中像素均嵌在第8位或均嵌在第7位,而是每个选中像素可能嵌在第8位或第7位.位置图只包含0和1且大多数为1,因此可以将其压缩后再传给嵌入方以减少工作量.

图2 图像测试流程图Figure 2 Flowchart of image testing

图3 正确恢复的两种情况Figure 3 Two cases of error-less restoration

1.2图像加密

原始载体I为未压缩过的灰度图像,大小为M×N,每个像素值位于区间[0,255]内.用(i,j)表示像素的位置,1≤i≤M,1≤j≤N,则每个灰度值Ii,j可表示为八位二进制数据bi,j,1,bi,j,2,···,bi,j,8

首先,加密方根据加密密钥,利用一种标准流加密方法伪随机产生长为8 MN的比特流ri,j,k,然后按位异或实现加密过程

式中,ei,j,k为加密后的数据.

最后由式(3)得到加密后的图像E

2 数据嵌入

嵌入方在得到加密图像和位置图后嵌入秘密信息.秘密信息是长为L的比特流S(1),S(2),···,S(L).

首先,嵌入方将加密图像的全部像素分成Uemb和Uban两个集合,Uemb存放用来嵌入的像素,Uban存放不可用来嵌入的像素.然后对这两个集合进行初始化操作:Uemb=∅,Uban={(i,j)|i=1∨j=1∨i=M∨j=N},即Uemb的初始值为空集,Uban的初始值为加密图像4个边界的像素.接着,嵌入方根据嵌入密钥伪随机选择L个像素.在每一次伪随机选择中,若选到的像素不属于Uban,则把该像素放入Uemb并将与该选中像素相邻的4个像素t1、t2、t3、t4放入Uban,如图4所示;若选中的像素属于Uban,则进行下一次伪随机选择,直至Uemb中的像素达到L个.这样对每个用来嵌入的像素而言,与它相邻的4个像素均不能用来嵌入,即这4个像素的值在嵌入前后保持不变.最后,嵌入方结合位置图将选中像素B(d)的第T位数值b替换成要嵌入的秘密信息S(d),从而完成嵌入过程

式中,B'(d)为含有秘密信息的加密像素.

图4 选中像素B(d)及其相邻像素的位置关系Figure 4 Positional relationships between the selected pixel B(d)and its adjacent pixels

需要说明的是,不同于文献[16]中所有选中像素都用第7位或都用第8位携带秘密信息,这里的T对于每一个选中像素是不同的.T的值由位置图决定:若该像素在位置图上的标记为0,说明嵌在第7位该像素也可完全恢复,因此为了使直接解密的图像质量更好,T=7.相反,若该像素在位置图上的标记为1,说明嵌在第7位该像素不能完全恢复,因此为了能成功恢复载体图像,T=8.

3 数据提取与图像恢复

根据接收方拥有密钥的不同,数据提取与图像恢复的情况有3种:接收方只有嵌入密钥,接收方只有加密密钥,接收方既有嵌入密钥又有加密密钥.

3.1接收方只有嵌入密钥的情况

如果接收方只有嵌入密钥,则其只能提取出嵌入的秘密信息,不能恢复原始的载体图像.首先,接收方根据嵌入密钥得到携带有秘密信息的L个像素B'(1),B'(2),···,B'(L);然后根据式(6)和位置图提取出嵌入的秘密信息.若该像素在位置图上的标记为0,则T=7;反之,T=8.

3.2接收方只有加密密钥的情况

如果接收方只有加密密钥,则其只能得到直接解密的图像,既不能提取出嵌入的秘密信息,又不能恢复原始的载体图像.首先,接收方根据加密密钥共得到8 MN位的比特流ri,j,k,然后进行加密算法的逆过程完成数据提取

需要明确的是,文献[16]在直接解密后对图像进行了中值滤波处理,虽然减弱了由嵌入带来的椒盐噪声的影响,但是破坏了图像携带的秘密信息,因此本文并未采取中值滤波.

3.3接收方有嵌入密钥和加密密钥的情况

如果接收方既有嵌入密钥又有加密密钥,则既能提取出嵌入的秘密信息,又能恢复原始的载体图像.提取过程与3.1节完全相同,在此不再赘述.下面说明如何恢复原始载体图像.

首先,接收方利用加密密钥得到直接解密的图像,如3.2节所述.再根据嵌入密钥得到解密后的含有隐藏数据的L个像素D(1),D(2),···,D(L).然后通过一种改进的自适应差值算法[16]得到每个嵌入像素的预测值.对每个嵌入像素D(d),取出与其相邻的4个像素t1、t2、t3、t4,根据式(8)得到斜率g,对照表1得到该斜率的类型t,对照表2得到预测系数α1、α2、α3、α4.最后根据式(9)得到预测值Dest(d)

表1 斜率g的分类Table 1 Classification of slope g

表2 预测系数和斜率类型的对应关系Table 2 Prediction coefficients of the eight types of slope

得到预测值后利用式(10)~(12)和位置图,将该像素的第T位置1得到D0(d),置0得到D1(d).若该像素在位置图上的标记为0,则T=7;否则,T=8

式中,b'为D(d)第T位的数值.

接着由式(13)和(14)得到两个预测误差R0(d)、R1(d)

最后进行判决,取预测误差较小的像素值作为恢复的像素值

对所有选中像素执行上述操作即可得到恢复的载体图像.

4 实验结果与分析

本文选取512×512的未压缩灰度图像Lena作为载体进行实验,共嵌入40 960位秘密信息,嵌入率为0.156 3 bpp.实验结果如图5所示,其中图(a)为原始图像,图(b)为含秘密信息的加密图像,图(c)为直接解密后的图像,图(d)为恢复的图像.由于在不考虑传输噪声和外来攻击的情况下一定可以无失真地提取全部秘密信息,为节省篇幅而省略这部分的实验结果.经计算可得图(d)和(a)的PSNR值为无穷大,说明两者一模一样,证明本文算法恢复无失真.同时,该算法的提取成功率为100%,说明本文提出的算法是可逆的.

图5 Lena的实验结果Figure 5 Experimental results of image Lena

本文验证了算法的可行性和有效性后,选取4幅512×512的未压缩灰度图像(见图6)来比较文献[16]算法和本文算法的性能,嵌入率分别为0.015 6 bpp、0.062 5 bpp、0.156 3 bpp,比较结果如表3~6所示.为简单起见,以下称文献[16]中的算法为算法1.观察表3可知:对于图像Lena,本文算法不仅能无失真地恢复原始载体,而且直接解密的图像质量也较为理想,十分接近于算法1嵌在第7位时的PSNR值.另外,算法1嵌在第8位时虽然可实现无失真恢复,其直接解密图像的PSNR值却比本文算法约低6 dB;算法1嵌在第7位时虽然能得到质量较好的直接解密图像,却无法恢复出一模一样的原始载体,可见本文算法对图像Lena的实验效果优于算法1.表4和5给出的图像Lake、Airplane的实验结果与图像Lena的实验结果类似,在此不再赘述.由上述分析可知,对图像Lena、Lake、Airplane而言,利用本文算法直接解密后所得图像的PSNR值几乎等于算法1全部嵌在第7位时的PSNR值,比算法1全部嵌在第8位时的PSNR值约高6 dB.同时,在恢复图像的PSNR值方面,本文算法的结果优于算法1全部嵌在第7位的结果,等于算法1全部嵌在第8位的结果.由此可见,与算法1相比,本文算法在保证无失真恢复图像的基础上提高了直接解密图像的质量;或者说,本文算法在保证直接解密图像质量基本不变的基础上实现了无失真恢复.

图6 4幅测试图像Figure 6 Four test images

表3 本文算法和算法1的比较结果(Lena)Table 3 Comparative results of image Lena

表4 本文算法和算法1的比较结果(Lake)Table 4 Comparative results of image Lake

表6 本文算法和算法1的比较结果(Baboon)Table 6 Comparative results of image Baboon

需要指出的是,虽然图像Lena、Lake、Airplane实现了无失真恢复,但图像Baboon不可以.这是因为相对于其他3幅图像,Baboon图像的纹理更加丰富,相邻像素间的相关性较小,像素的预测值偏离真实值较大,因此在图像恢复时误判的可能性较高,从而导致失真.尽管如此,对于图像Baboon而言,不论算法1嵌在第7位还是第8位,本文算法恢复图像的PSNR值均比它高,最多可高7 dB.在直接解密图像的质量方面,本文算法也比算法1嵌在第8位时的结果约高6 dB,十分接近于算法1嵌在第7位时的结果,这再一次证明了本文算法比算法1优越.

综上所述,本文算法不仅可行而且有效,其性能也优于算法1.本文算法在保证无失真恢复图像的基础上提高了直接解密图像的质量;或者说,本文算法在保证直接解密图像的PSNR值基本不变的基础上提高了无失真恢复图像的成功率.

5 结语

本文提出了一种可分离加密域可逆数据隐藏算法.该算法在嵌入前进行图像测试并标记,保证了部分被选来携带隐藏数据的像素在接收方一定能够完全恢复,既提高了无失真恢复的成功率,又获得了质量较高的直接解密图像,其性能优于算法1.加密方对原始载体进行图像测试后进行流加密.嵌入方用秘密信息替换选中像素的第T位完成隐藏数据的嵌入.提取和恢复则有3种情况:如果接收方只有嵌入密钥,则只能提取出嵌入的秘密信息,不能恢复原始的载体图像;如果接收方只有加密密钥,则只能得到直接解密的图像,既不能提取出嵌入的秘密信息,也不能恢复出原始的载体图像;如果接收方既有嵌入密钥又有加密密钥,则既能提取出嵌入的秘密信息,又能恢复出原始的载体图像.实验结果不仅表明了本文算法是可行的,有效的,而且证明了该算法相对于算法1的性能优越性.

[1]TIAN J.Reversible data embedding using a difference expansion[J].IEEE Transactions on Circuits and Systems for Video Technology,2003,13(8):890-896.

[2]KIM H J,SACHNEV V,SHI Y Q,NAM J H,CHOO H G.A novel difference expansion transform for reversible data embedding[J].IEEE Transactions on Information Forensics and Security,2008,3(3):456-465.

[3]COLTUC D.Improved embedding for prediction based reversible watermarking[J].IEEE Transactions on Information Forensics and Security,2011,6(3):873-882.

[4]HU Y,LEE H,CHEN K,CHEN K Y,LI J W.Difference expansion based reversible data hiding using two embedding directions[J].IEEE Transactions on Multimedia,2008,10(8):1500-1511.

[5]OU B,LI X,ZHAO Y,NI R R,SHI Y Q.Pair wise prediction error expansion for efficient reversible data hiding[J].IEEE Transactions on Image Processing,2013,22(12):5010-5021.

[6]NI Z,SHI Y Q,ANSARI N,SU W.Reversible data hiding[J].IEEE Transactions on Circuits and Systems for Video Technology,2006,16(3):354-362.

[7]TAI W L,YEH C M,CHANG C C.Reversible data hiding basedon histogram modification of pixel differences[J].IEEE Transactions on Circuits and Systems for Video Technology,2009,19(6):906-910.

[8]JUNG S W,HA L T,KO S J.A new histogram modification based reversible data hiding algorithm considering the human visual system[J].IEEE Signal Processing Letters,2011,18(2):95-98.

[9]LIN C C,TAI W L,CHANG C C.Multilevel reversible data hiding based on histogram modification of difference images[J].Pattern Recognition,2008,41(12):3582-3591.

[10]TSAI P,HU Y,YEH H.Reversible image hiding scheme using predictive coding and histogram shifting[J].Signal Processing,2009,89(6):1129-1143.

[11]LUO L,CHEN Z,CHEN M,XIAO Z,ZHANG X.Reversible image watermarking using interpolation technique[J].IEEE Transactions on Information Forensics and Security,2010,5(1):187-193.

[12]LI X L,YANG B,ZENG T Y.Efficient reversible watermarking based on adaptive predictionerror expansion and pixel selection[J].IEEE Transactions Image Processing,2011,20(12):3524-3533.

[13]ZHANG X.Reversible data hiding in encrypted image[J].IEEE Signal Processing Letters,2011,18(4):255-258.

[14]HONG W,CHEN T S,WU H Y.An improved reversible data hiding in encrypted images using side match[J].IEEE Signal Processing Letters,2012,19(4):199-202.

[15]ZHANG X.Separable reversible data hiding in encrypted image[J].IEEE Transactions on Information Forensics and Security,2012,7(2):826-832.

[16]WU X,SUN W.High-capacity reversible data hiding in encrypted images by prediction error[J].Signal Processing,2014,104:387-400.

[17]MA K,ZHANG W,ZHAO X,YU N H,LI F H.Reversible data hiding in encrypted images by reserving room before encryption[J].IEEE Transactions on Information Forensics and Security,2013,8(3):553-562.

[18]ZHANG W,MA K,YU N.Reversibility improved data hiding in encrypted images[J].Signal Processing,2014,94:118-127.

[19]PUECH W,CHAUMONT M,STRAUSS O.A reversible data hiding method for encrypted images[C]//Electronic Imaging 2008,International Society for Optics and Photonics,2008,68191E-1-68191E-9.

(编辑:秦巍)

A Separable Scheme of Reversible Data Hiding in Encrypted Images

TIAN Ye,XIANG Shi-jun
School of Information Science and Technology,Jinan University,Guangzhou 510632,China

In this paper,a separable reversible data hiding method in encrypted images is proposed.The content owner tests an original uncompressed image and generates a location map before embedding.The data-hider embeds additional data into significant bits of the selected pixels according to the location map with an embedding key.At the receiver side,the original image can be perfectly recovered by a context adaptive interpolation algorithm based on spatial correlation of adjacent pixels.If all additional data are embedded into the most significant bits of the selected pixels,quality of the directly decrypted images are poor,and if all data are embedded into the second most significant bits,perfect restoration of the original image cannot be achieved.To resolve these problems,the proposed method can ensure both good quality of the directly decrypted images and error-less restoration. Experimental results show validity and good performance of the method.

reversible data hiding,encrypted domain,prediction error,image testing

TN911.73

0255-8297(2015)06-0585-10

10.3969/j.issn.0255-8297.2015.06.002

2015-05-29;

2015-10-10

国家自然科学基金(No.61272414)资助

项世军,教授,研究方向:信息隐藏,E-mail:shijun_xiang@qq.com

猜你喜欢

解密密钥加密
一种新型离散忆阻混沌系统及其图像加密应用
幻中邂逅之金色密钥
幻中邂逅之金色密钥
炫词解密
解密“一包三改”
密码系统中密钥的状态与保护*
炫词解密
一种基于熵的混沌加密小波变换水印算法
TPM 2.0密钥迁移协议研究
加密与解密