混沌密钥在彩色图像的数字水印技术中的应用研究
2019-05-22张腾张曌周霆
张腾 张曌 周霆
摘 要:数字水印目前已经大规模地应用到信息安全、多媒体产品版权保护等各个领域。文章主要研究混沌密钥在数字水印中的应用算法,使水印可以抵御各种常见攻击,提升数字水印各方面的性能,并依托Matlab平台进行实验,得出实验结果,具体分析算法性能。
关键词:数字水印;混沌密钥;离散余弦变换
随着多媒体技术和互联网的蓬勃发展,电子图像和多媒体产品凭借易建易传的特性,在互联网上可以被高速广泛传播。但由于传播过程很难受到严格把控,产生了一些非法途径,电子图像及其他多媒体产品会受到非法使用和恶意篡改。数字水印技术可以很好地解决此类问题。数字水印技术是一种在不影响原载体的质量的情况下,将特定的量化后的信息嵌入到载体中的信息隐藏技术。不同种类水印的特征截然不同,甚至完全相反。
1 混沌的定义及特征
混沌是决定性动力学系统中出现的一种貌似随机的运动,最主要的特征是对初始条件的依赖性[1]。若混沌序列的初始条件发生了一个较小的变化,整个序列后续的值则会非常敏感地感应到这种变化,并且对后续的序列值产生巨大的影响。
目前混沌系统在数字水印中的应用,主要体现在以下3个方面:(1)直接利用混沌序列作为水印嵌入到载体中[2]。(2)利用混沌序列对水印图像进行置换、加密等多种预处理[3]。(3)也可以将混沌序列和水印在嵌入的过程中结合。而混沌序列本身没有特殊意义,因此混沌系统在水印技术中的应用主要多集中在后面两个方面。可以利用混沌序列来控制选择水印嵌入的位置,并用数据表来解决地址冲突的问题[4]。
2 算法的设计
2.1 数字水印图像的预处理
2.1.1 數字水印的置乱
在本文中水印图像的置乱采用Arnold变换。当对图像进行此种置乱变换时,本质上就是把图像所有的位点重新排列,规则如式(1)所示:
其中(x,y)是像素点原来的坐标,(x',y')是像素点移动之后的坐标。
本文采用的水印图像是一副JPG格式的图像,该图像上的图案是“FZU”3个大写字母,如图1所示。图像经过Arnold变换后的变化非常明显,如图2所示。可以看出,经过多次变换后的图像已经完全看不出“FZU”的形状了,成功地达到了置乱的目的。
由数学归纳法可以证明,当作n次变换时,Arnold反变换式为:
利用反变换式,可以比较简便地复原图像,目前这也是比较主流的复原置乱图像的方法。
2.1.2 基于LOGISTIC映射的数字水印加密
水印图像置乱后,为了进一步提高水印信息的保密性,还需要对置乱后的水印图像进行混沌加密。LOGISTIC映射又称虫口模型,是20世纪70年代年数学生态学家May[5]最先提出的。LOGISTIC映射描述如式(3)所示:
但是,LODISTIC映射并不是在任何时候都处在混沌状态。经过混沌动力系统的研究工作和多次实验验证,当3.569 945 6…< u≤4时,LOGISTIC映射工作于混沌态。在本文研究过程中,取u=4。
利用密钥key1生成混沌序列,序列的长度根据水印图像的大小决定。在对混沌序列进行判决时,需要确定一个阈值,大于阈值的像素判决为1,小于阈值的像素判决为0。在本文中,key1取0.6,水印图像的大小为64×64,即混沌序列的长度为64×64,判决阈值取0.7。当判决完成后,混沌序列就转化为二值序列了,之后和置乱后的二值水印图像进行异或操作即可完成对水印图像的加密。
实验证明加密后的图像完全隐藏了原有图像的信息,加密效果良好。由于混沌序列对初始条件的敏感性,只有知道密钥key1才可以复原原有的图像。
2.2 数字水印图像的嵌入
2.2.1 基于LOGISTIC序列的二值水印图像的编码
经过预处理的水印图像,已经成为完全隐藏原有信息的二值图像,即所有像素点的值都是0或1。若直接将预处理的水印信息嵌入到载体中,在传输过程中如果发生数据的丢失或篡改时,则会直接影响提取的水印的质量。为了提高水印的鲁棒性,减少传输过程对提取水印过程的影响,可将二值图像进行编码后再嵌入。
本文利用混沌密钥和LOGISTIC映射生成两个8位的混沌序列,分别对应二值图像的1和0。这样每个像素点的信息由一位数据映射为了8位数据。因为混沌序列域是(0, 1),所以两个序列的值相差比较小(必然小于1),这将会大大影响水印的检测过程,因此我们需要放大两个序列的差别,具体做法如下:
(4)
其中:x(n)是原来的序列值,x(n)是处理过的序列值。经过处理后的两个序列的差异被放大a倍,这样在水印检测时,不易被计算过程产生的误差影响。a要尽量小,否则嵌入到载体中极有可能影响载体图形的质量。在本文中,a的值取2,实验结果表明,a=2时提取水印的效果即可达到比较好的效果。
在本文中两个序列的混沌密钥,分别为0.4和0.45。虽然只相差0.05,但是两个序列后续的值相差比较大,使得图像的编码具有区分度,利于提高水印的鲁棒性。
2.2.2 基于DCT变换的水印嵌入
本文主要针对JPG格式的彩色图像进行水印处理,而基于离散余弦变换(Discrete Cosine Transform,DCT)的水印算法,较其他的算法相比,可以很好地兼容JPG图像[6]。由于彩色图像转换为YUV模式依然有3个维度,因此本文的算法选用YUV模式进行水印信息的嵌入。
首先将水印信息嵌入到U层,将载体图像的U层单独提取出来,分为8×8的图像块进行DCT变换。之后将水印图像加密并编码的序列利用加性准则嵌入载体图像的U层DCT矩阵中的特定位置。本文嵌入的位置是每个8×8DCT系数矩阵的反对角线位置[7]。
嵌入之后再对图像进行反DCT变换就得到了嵌入水印后的图像U层了。反变换之后的U图层再与原载体图像其余的两层(Y、V)叠加即可生成彩色图像。值得注意的是,在显示嵌入水印的图像之前,要先将图像由YUV模式转换为RGB模式。
3 实验结果
一项符合要求的数字水印算法,应该至少满足以下3种特征,即可以做到在尽量在不降低载体图像质量的情况下,安全而又准确地提取到水印图像。因此,一个成功的水印必须满足隐蔽性、鲁棒性、安全性的特点。以下是利用matlab为实验平台的攻击实验及水印的鲁棒性。
3.1 加入高斯噪声(Gaussian noise)
对图像加入不同方差(V)的高斯噪声,观察攻击后的结果,并在攻击后的图像中检测水印,观察检测出的FZU图像的清晰度。在嵌入强度为30的情况下,加入方差不同的高斯噪声后分别得到的攻击图像及检测出的水印图像。在图像加入高斯噪声的方差越大,图像受损越严重,当加入方差为0.03的高斯噪声时,图像几乎看不出原来的样子,而检测出的水印图像还可以辨别出‘FZU的标识,因此可以断定,该数字水印算法可以成功抵御一般高斯噪声的攻击。
3.2 加入椒盐噪声(Salt-and-pepper noise)
将不同噪声密度(M)的椒盐噪声加入图像中,观察水印检测结果。实验结果表明,在图像受到较强椒盐噪声干扰时(M=0.05),也依然可以识别出水印图像所传递的信息。因此该水印算法可以抵御一般椒盐噪声的攻击。
3.3 对图像进行高斯低通滤波(Gaussian low-pass filtering)
对图像进行高斯低通滤波也是一种常见的攻击方式。本文低通滤波参数采用默认值,即模板大小为[3 3],标准差为0.5。实验结果表明提取出来的水印图像非常清晰,该算法可以抵抗GLPF攻击。
3.4 对图像进行剪切
剪切攻击(Cutting attack)属于一种针对图像的几何攻击。本文通过剪切图像的不同比例(Q),来确定水印算法是否可以防御剪切攻击。在本文设计的试验中,Q最大可达到50%。
由实验可知,剪切部分越大,检测到的FZU图像的清晰度越差。当前剪切比例分别为1/4和1/8时,可以清楚地辨别出图案;当剪切比例为1/2时,提取出的水印图案较模糊。但在实际应用中,剪切比例不会过大,因此,该水印算法可以抵御常见剪切攻击。
3.5 对图像进行压缩
使用不同的压缩系数(X)对图像进行压缩攻击(Compression attack),根据压缩后的图像进行水印的检测。当系数较小时,检测到的FZU图像可以清楚地识别出字母形状,当系数比较大时,检测到的FZU图像比较模糊,信息丢失严重,由此可以得知,该数字水印算法可以抵御低强度的压缩攻击,但当遭遇高强度的压缩攻击时,水印的鲁棒性较差。
4 结语
数字水印是信息隐藏技术的一種重要形式,本文主要将基于DCT的数字水印技术和混沌密钥相结合。以Matlab为实验平台,使用混沌序列加密水印图案,并使混沌序列参与水印信息的编码过程,并将实验模型转化为具体的算法。实验结果证明该方法有效地提高了水印的鲁棒性和安全性,并降低了传输成本。
[参考文献]
[1]张志明,王磊.基于混沌加密的DCT域图像水印算法[J].计算机工程,2003(17):9-10.
[2]ZHANG L,LIAO X,WANG X.An image encryption approach based on chaotic maps[J].Chaos Solitons & Fractals,2005(3):759-765.
[3]吴先用.混沌同步与混沌数字水印研究[D].武汉:华中科技大学,2007.
[4]WANG Y,WONG K W,LIAO X.A chaos-based image encryption algorithm with variable control parameters[J].Chaos Solitons & Fractals,2009(4):1773-1783.
[5]李娟,冯勇,杨旭强.压缩图像的三维混沌加密算法[J].光学学报,2010(2):399-404.
[6]黄志洪.基于DCT的数字图像水印技术的研究[D].广州:华南理工大学,2011.
[7]朱海峰.DCT图像数字水印技术[J].科技风,2012(6):35.