APP下载

基于GAN的生成式图像隐写方案

2019-08-13王耀杰杨晓元

小型微型计算机系统 2019年8期
关键词:加密算法字典类别

王耀杰,杨晓元,刘 佳

(武警工程大学网络与信息安全武警部队重点实验室,西安710086)

(武警工程大学密码工程学院,西安710086)

E-mail:wangyaojie0313@163.com

1 引言

随着网络通信和信息技术的快速发展,大量的网络信息传输业务(包含个人隐私、商业机密、军事信息等)都要求以隐蔽的方式传输通信信息.因此信息隐藏技术得到飞速发展,极大解决了隐蔽通信和版权保护等问题[1].

根据秘密信息的隐藏方法,隐写术可分为:载体修改、载体选择和载体合成.修改原始载体是传统隐写术最常见的方法,但含密载体总会留下修改痕迹,这使得难以从根本上抵抗基于统计特性的隐写检测;载体选择是隐写者根据明文信息在普通图像库中选择图像,即原始载体信息不进行任何修改,避免了现有隐写分析技术的威胁,但由于该方法的负载量太低,实际应用效果较差.为从根本上抵抗各类隐写分析算法的检测,基于载体合成的信息隐藏技术成为新的研究热点之一,例如无载体信息隐藏[2]、构造式信息隐藏[3]等.与传统信息隐藏方法相比,他们都避免了对原始载体信息的修改,而是根据秘密消息直接“生成/获取”对应的含密载体.

本文利用对抗网络中生成模型,将对称密码[4]和信息隐藏进行结合,提出了一种生成式的信息保护方案(GS-GAN).本文在生成对抗网络[5]基础上,创新性提出“生成式”图像隐写方案,主要贡献可以归纳如下:

1)结合载体合成的思路,提出“生成式”图像隐写的这一概念,对生成的载体信息不做任何修改,能够从根本上抵抗基于统计特性的隐写检测;

2)将对称加密与信息隐藏结合,极大提高了安全性,增强了抵抗隐写分析的能力,为信息隐藏和密码学的发展拓展了新的思路;

3)提出了一种空间坐标化加密算法,符合Kerckhoffs准则[6],同时能够拓展维度增加计算复杂度.在定期更换密钥前提下,该算法既容易实现,又难破译.

2 预备知识

近两年,一些最新研究已将对抗理论和机器学习等方法引入到信息安全领域.文献[7]首次将机器学习引入密码学领域,采用PassGAN的对抗模型替代人工产生的密码规则,取得明显的效果;Biggo等人[8]提出了攻防对抗模型的概念,进一步泛化对抗思想的应用场景.在信息隐藏方面,当前已有研究者将生成对抗网络引入到隐写技术当中,但他们使用的主要方法仍是在基于载体修改的框架上进行信息嵌入,代表方案有:

1)SGAN&SSGAN

Volkhonskiy等[9]提出SGAN方案,首次将机器学习中的GAN与信息隐写技术相结合,在原始GAN的基础上添加一个消息嵌入模块,与传统方法区别在于,隐藏信息的载体为机器学习生成的伪自然图像.同时,再额外训练一个隐写分析判别器以保证生成器的生成图像与嵌入信息后的含密生成图像无法区分,基本框图如图1所示.Shi等人[10]在这个框架下进行了改进,他们在原框架基础上采用WGAN优化模型,使生成的载体图像更加逼真.

图1 SGAN的基本流程Fig.1 Structure of SGAN

该类方法的基本思路是借助于GAN的对抗思想,引入简单的LSB修改模块实现隐写.一方面利用GAN中生成模型的优势,确保生成的载体图像符合自然图像的统计特性;另一方面,额外增加隐写分析判别器和消息嵌入模块,确保生成的载体图像对嵌入模块的隐写算法具有足够的抗隐写分析能力,因此该方案能生成满足特定隐写安全的原始图像载体,其缺点是通用性差,无法有效抵抗其它隐写分析方法的检测.

2)ASDL-GAN

Tang等人[11]在基于加性失真代价函数的基础上,首次提出自动的隐写失真学习概念(Automatic Steganographic Distortion Learning,ASDL),利用机器学习得到图像像素修改概率矩阵P,然后再利用STC方法进行信息的嵌入,该方案被称为ASDL-GAN.该方案利用对抗网络学习生成器G,通过对G采样得到修改概率矩阵P,通过概率矩阵P实现隐写.用判别器D来区分由概率矩阵P得到的含密载体和原始载体,其基本结构如图2所示.

为了使得概率矩阵P能够被快速学习,他们提出一个微型的网络TES作为概率矩阵的激活函数.Yang等人[12]提出了 UT-SCA-GAN(U-net,Tanh-simulator function,Selection Channel Awareness),安全性进一步提高.为抵抗SCA隐写分析[13],该方案还引入富模型中30个高通滤波器的绝对值作为判别器的辅助条件.

与之前直接利用对抗过程构造原始载体的方法不同,该类方案利用原始载体作为输入,再利用生成对抗网络得到针对该原始载体的修改概率矩阵,然后借助当前基于STC编码的方法实施基于载体修改的隐写,该方案可以看作是一种改进的STC方法.

以上代表方案使用的主要方法仍是建立在基于载体修改的框架上进行嵌入信息,他们并没有从根本上保持原始图像的统计特征,也就是说,传递的含密载体上仍留有修改痕迹,难以抵抗基于统计特性的隐写检测.

图2 ASDL-GAN框架Fig.2 Frame structure of ASDL-GAN

3 本文方案模型

为从根本上解决载体修改会留有修改痕迹这一问题,本文提出了基于GAN的生成式图像隐写方案,避免了对原始载体信息的修改,根据秘密消息直接生成相对应的含密载体.同时将对称加密和隐写技术相结合,符合Kerckhoffs准则,安全性进一步提高.方案的总体框架如图3所示.

图3 GS-GAN的结构Fig.3 Structure of GS-GAN

本文方案由对称加密算法和图像隐写算法构成.其中对称加密算法可进行空间坐标化,根据不同的密级进行维度拓展,本文以二维平面空间为例介绍算法的主要原理.

3.1 对称加密算法

首先介绍对称算法数学表达式如下所示:

其中m为明文,K为共享的密钥(定期更换),m'为公式(1)加密后的密文,即为隐藏信息后的载密信息.E(.)表示加密算法,D(.)表示解密算法.在该方案中加解密算法相同,E(.)和 D(.)两者等价,均由 L(.)表示.

本文以二维平面空间为例介绍加密算法的原理,假设接收双方预先商定,建立字典集(任意消息对应不同的X轴坐标的一一映射关系),也就是说:在平面坐标中x轴上每个坐标点(m,0)代表不同的秘密信息,任意消息均可以被不同的m表示;共享密钥K(kx,ky)可以是平面上的任意点(x轴上的点除外),如图4(a)所示.

发送者根据“两点一线”数学原理,由m和K两点确定直线L(m,K),如图4(b)所示.直线L作为简单的密文库(密文生成器),可生成多个不同密文.发送者选择一个随机数r,然后在L上采样获得对应的密文,即采样点为待隐藏的传递消息,如图4(c)所示.

接收者收到含密图像后提取出m',通过L(m',K)和x轴的交点可以很容易地得到m,秘密消息得到恢复,如图4(d)所示.

图4 对称加密算法Fig.4 Symmetric encryption algorithm

3.2 图像隐写算法

结合载体合成的思想,在ACGAN输入类别标签生成特定图像样本的启发下,我们保持ACGAN网络模型不变,将类别标签C直接替换为待隐藏传递信息m',联合噪声z共同作为输入,通过生成器直接生成载密图像进行传递,在需要时通过判别器判别类别标签即可提取信息,由此实现“生成式”图像隐写.

3.2.1 隐藏算法

图5 隐藏算法的结构Fig.5 Structure of the hidden algorithm

在隐藏时,首先,将隐藏的 m'坐标点进行编码,使之与类别标签相对应;其次,联合类别标签和随机噪声Z输入到ACGAN中,通过改变和控制不同的类别标签生成相应的载密图像,实现生成式图像隐写.隐藏方案如图5所示,具体步骤如下:

步骤1.将m'坐标编码成相应的类别标签,并添加纠错码以形成新的类别标签信息,记为(m');

步骤2.生成器中原始的类别标签C直接用相应的的类别标签(m')替换,并且和随机噪声Z一起输入到预训练的生成器中,通过去卷积和正则化的操作生成载密图像G((m'),z)进行传输.3.2.2 提取算法

接收者采取反向过程提取隐藏的信息.将收到的载密图像被输入到ACGAN鉴别器D,但并不能直接输出结果,而是对每个特定类别的提取特征,以概率形式进行比较,选择最大概率值以匹配对应的类别标签,进而解密获得载密图像中隐藏的m'坐标信息.提取信息的流程如图6所示,具体步骤如下:

步骤1.接收方采取逆过程,将接收图像G((m'),z)输入到相应的鉴别器D,并输出图像中每个类别的似然对数logits[14];

步骤2.使用softmax函数提取图像中每个类别的特征,并且以概率形式进行输出;

步骤3.选取概率最大的类别标签,并将其提取得到秘密信息(m');

步骤4.秘密信息 (m')输入到解码器,解码后的结果M';

步骤5.由于诸如噪声和其它有意或无意攻击之类的干扰,因此需要验证解码结果M'.如果校验无误,则可认为M'=m',即实现隐藏信息的提取.

图6 隐藏算法的结构Fig.6 Structure of the hidden algorithm

4 实验结果和分析

在本文实验中,采用的WGAN网络的训练如下:随机噪声z是(-1,1)上的均匀分布,CelebA数据集作为真实的训练数据集,训练周期为1000轮次.实验环境如表1所示.

表1 实验环境Table 1 Experimental environment

以C2D-BN-LR(Conv2d→Batch NormaliZation→Leaky ReLU)定义一个卷积神经网络,ACGAN中图像判别网络(判别器D)的结构为:四个C2D-BN-LR层→一个完全连接的层(1个神经元)→Sigmoid函数(用来计算输出).ACGAN中图像生成网络(生成器G)的结构是:完全连接层(8192个神经元)→四个C2D-BN-LR的反卷积层→tan(x)函数层.

ACGAN中的优化器使用基于动量的优化算法,学习率为0.0002,并更新变量 β1=0.5,β2=0.999.在实际训练中,生成器和判别器权重更新策略是不同的,一般对判别器权重更新一次后,需要对生成器权重更新两次.

4.1 可行性

为验证本文方案的可行性,首先建立映射字典,即汉字与类别标签的映射关系;其次,根据明文消息选择对应的类别标签,并使用ACGAN模型实现“生成式”信息的隐藏和提取.

4.1.1 建立映射字典

就本文方案而言,考虑到实际通信的需要,构建的映射字典基于中国国家标准代码GB2312-80,首先有必要涵盖所有的一级字库汉字(即3755个汉字),此外还需要覆盖国家二级字库和常用词组及非中文图形符号(包含有数字、拉丁字母、表情符号等),以提高信息隐藏的容量.基于 mnist手写数字集,总共有0-9个类别标签,也就是说,每4个数字为一组(每个数字可以从10个数字中选择),总共10000个组构成映射字典,同时映射字典可由程序随机建立对应关系和在类别标签前添加正负号,以保证映射字典的随机性,如表2所示.为了增加解密的难度,应当不定时替换映射字典或者减少相同映射字典的使用频率.

表2 字典举例Table 2 Examples of the dictionary

4.1.2 隐藏和提取实验

为验证该方案的可行性,本文仅以二维平面空间为例.在平面坐标内,随机选择秘密消息m为:终南山.在映射字典中查找得到类别标签组合为:-1100,与其对应的m坐标为(-10.000,0);假设接收者和发送者预先共享密钥K坐标为(1.000,11.000),则采样生成器直线L(m,k)为:y=x+10,随机进行采样取得采样点m'坐标为(-3.124,6.876),即为待隐藏的传递消息.

本文实验中输入标签设置向量长度为40,将待隐藏的传递消息m'(-3.124,6.876)进行编码(第1、21位表示正负号,1/0分别表示为正/负号;第2位至第20位表示x坐标;第22位至第40位表示y坐标),得到的秘密信息(m')如下:

根据CelebA数据集上的标签映射字典,它对应三个标签分别是“微微开口”、“微笑”、“暗淡”.

正如我们所描述的,GS-GAN可以通过在生成器中输入多个标签来生成多标签样本.在CelebA数据集上每训练400次就进行测试和验证,得到的多标签含密图像如图7所示,“无标签”图像为输入噪声生成的过程;“+微微张口”的图像是由同一个噪声和“微微张口”标签联合生成的;然后按顺序添加标签,即最后一个图像是由相同的噪声z和3个不同的标签生成的.

提取信息的错误率如图8所示.在6000次训练之后,提取的信息错误率小于0.07,只需在编码时添加纠错码,以确保解码的正确性.由此也能看出,本方案实用性较强,不会因为通信过程中存在适当误差而影响正确传输.

图7 生成的含密图像Fig.7 Generated encrypted pictures

图8 提取到的错误标签数量Fig.8 Number of error class labels extracted

图9 提取信息的错误率Fig.9 Error rate of the message extraction

为进一步验证方案的可行性,在上述实验基础上增加嵌入信息量,也就是增加含密图像中标签数量.如图9(a)所示,标签数量分别为3、5、7、9,随着标数量增多,经过相同训练次数情况下,提取信息的错误率也会增加.图9(b)所示为经过8000次训练之后,不同标签数量情况下提取信息的平均错误率.提取信息错误率随着标签数量减少而降低,当标签数量≤7时,经过8000次训练之后,提取的信息错误率低于0.09,在添加纠错码的情况下能够满足现实通信的需要.

通过实验可以看出,我们可根据指定的标签信息生成相应的含密图像,并从含密图像中正确提取所选标签,从而实现了信息的生成式隐藏和提取.当标签数量不超过一定阈值时,本文方案传输错误率可以有效降低,而且无需对载体进行任何修改,可以更有效地抵抗对隐写分析算法的检测.

4.2 抗检测性

为检验该方案的不可见性,本文使用S-UNIWARD算法[15]在CelebA数据集进行测试.以嵌入率为0.4bpp获得60000张含密图像S1,同时利用本文提出的方法,直接生成10000张含密图像S2,两者进行分析对比.使用SCNN方法对S1进行隐写检测的准确率为96%[16,17].从 S1中随机选择50000张和原始CelebA数据集作为训练集A,并且S1中其余10000张和原始CelebA数据集组成测试集B,以及生成图像集S2与原始CelebA数据集组成测试集C.在随机分组独立测试情况下,隐写检测对比结果如表3所示.

表3 各测试集隐写分析检测结果Table 3 Accuracy of the steganalysis test

测试集C的检测检测率趋近0.5,明显优于测试集B.实验结果表明隐写分析器基本不能在数据集中判别生成图像的真实性.其原因是生成图像没有进行任何修改,根据秘密信息由生成器直接生成.

为进一步验证方案的抗检测性,本文又通过当前主流隐写分析方案的统计方法进行验证,验证本文方案在安全性和抗检测性上有不同程度提高.

4.3 安全性

本文方案的安全性基于两个方面:首先是提出了一种简单易行的加密算法.根据两点一线数学原理,在无密钥的前提下,单点无法确定直线L(m,K),即暴力破解是不可行的.也就是说,系统安全性取决于所使用的密钥的机密性,完全符合Kerckhoffs准则.同时可根据不同的密级进行空间维度的拓展,当保密级别较高时,增加空间维度,使攻击者破译的可能性大大增加,然而,加密和解密操作仍然保持线性关系,并且效率高.在定期更换密钥前提下,该算法既容易实现,又难破译;其次是隐藏信息的原始载体信息是由生成器直接生成的,能够符合当前特定隐写检测的统计特性,较大增加抗隐写分析的能力.但相比传统基于载体修改的隐写方法,通用性较差.

假设攻击者怀疑发送的图像包含秘密信息,也很难获得相同的鉴别器提取出秘密信息.即使截获隐藏的内容,在无密钥的前提下,只会获得无意义的结果,由此保证了隐蔽通信的安全性.

5 结论

本文提出本文提出了一种用于信息隐藏的生成式图像隐写方案(GS-GAN),以生成对抗网络技术为媒介,创新性提出“生成式”图像隐写的这一概念.一方面,将待隐藏信息作为驱动,直接生成含密图像进行传输,符合载体合成的思想,可有效抵抗基于统计特性的隐写检测;另一方面,安全性基于接收双方共享的密钥,即使截获隐藏的内容,在无密钥的前提下,只会获得无意义的结果,由此保证了隐蔽通信的安全性.我们使用CelebA数据集评估了GS-GAN方案的性能,理论分析和实验结果表明了该方法的可行性和安全性.

如何改进判别模型D的结构以及改进ACGAN提取过程,是我们下步的重点研究方向.References:

[1] Cabaj K,Caviglione L,Mazurczyk W,et al.The new threats of information hiding:the road ahead[J].It Professional,2018:67-94.

[2] Zhou Zhi-li,Cao Wei,Sun Xing-ming.Carrierless information hiding based on image bag-of-words model[J].Journal of Applied Sciences,2016,34(5):527-536.

[3] Zhang Xin-peng,Qian Zhen-xing,Li Sheng.Prospects of information hiding research[J].Journal of Applied Sciences,2016,34(5):475-489.

[4] Pei Hong-tao,Sun Jian-yan,Gai Hong-yu,et al.Analysis of symmetric encryption algorithm and implementation in java[J].Computer Knowledge and Technology,2017,13(18):46-47.

[5] Goodfellow I,Pouget-Abadie J,Mirza M.Generative adversarial networks[DB/OL].http://arxiv.org/abs/1406.2661,2014-06-10.

[6] Wang Jing,Jiang Guo-ping.Security analysis and improvement of a hyperchaotic image encryption algorithm[J].Acta Phys.Sin.,2011,60(6):83-93.

[7] Hitaj B,Gasti P,Ateniese G,et al.PassGAN:a deep learning approach for password guessing[J].Pacific Rim Conference on Multimedia,2017,27(3):124-127.

[8] Biggio B,Corona I,Maiorca D,et al.Evasion attacks against machine learning at test time[J].Applied Mechanics and Materials,2017,8190(2):387-402.

[9] Volkhonskiy D,Nazarov I,Borisenko B,et al.Steganographic generative adversarial networks[J].Information Hiding and Multimedia Security,2017:201-208.

[10]Shi H,Dong J,Wang W,et al.SSGAN:secure steganography based on generative adversarial networks[J].Pacific Rim Conference on Multimedia,2017:4-7.

[11]Tang W,Tan S,Li B,et al.Automatic steganographic distortion learning using a generative adversarial network[J].IEEE Signal Processing Letters,2017,66(99):1-1.

[12]Yang J,Liu K,Kang X,et al.Spatial image steganography based on generative adversarial network[J/OL].https://arxiv.org/abs/1804.07939.

[13]Chen Ming,Zhang Ru,Niu Xin-xin,et al.Overview of research on steganalysis techniques[J].Journal of Computer Applications,2008,28(b06):31-33.

[14]Li Guo-chen.Feature word selection method based on log likelihood ratio test in text classification[J].Chinese Journal of Information Science,1999,13(4):16-21.

[15]Abdulrahman H,Chaumont M,Montesinos P,et al.Color image steganalysis based on steerable gaussian filters bank[C]//ACM Workshop on Information Hiding and Multimedia Security,ACM,2016:109-114.

[16]Kunz R,Tetzlaff R,Wolf D.SCNN:a universal simulator for cellular neural networks[C]//IEEE International Workshop on Cellular Neural Networks & Their Applications,IEEEXplore,1996:255-259.

[17]Liu M,Zhang M,Liu J,et al.A steganalysis method based on shallow convolution neural network[J].Journal of Shandong University(Natural Science),2018,76(3):63-70.

附中文参考文献:

[2]周志立,曹 燚,孙星明.基于图像Bag-of-Words模型的无载体信息隐藏[J].应用科学学报,2016,34(5):527-536.

[3]张新鹏,钱振兴,李 晟.信息隐藏研究展望[J].应用科学学报,2016,34(5):475-489.

[4]裴宏韬,孙建言,盖红玉,等.对称加密算法分析及用Java实现[J].电脑知识与技术,2017,13(18):46-47.

[6]王 静,蒋国平.一种超混沌图像加密算法的安全性分析及其改进[J].物理学报,2011,60(6):83-93.

[13]陈 铭,张 茹,钮心忻,等.隐写分析技术研究概述[J].计算机应用,2008,28(b06):31-33.

[14]李国臣.文本分类中基于对数似然比测试的特征词选择方法[J].中文信息学报,1999,13(4):16-21.

猜你喜欢

加密算法字典类别
加密文档排序中保序加密算法的最优化选取
论陶瓷刻划花艺术类别与特征
一起去图书馆吧
字典的由来
基于整数矩阵乘法的图像加密算法
大头熊的字典
教育云平台的敏感信息保护技术研究
正版字典
选相纸 打照片
AES加密算法的实现及应用