一种数字图像隐藏数据检测的方法研究

2016-06-16 21:22魏爽高华玲
电脑知识与技术 2016年10期

魏爽+高华玲

摘要:近来,为了改进安全性、可靠性以及提高效率,在隐写术和视觉加密领域出现了各种新算法。该文提出了一种新的从彩色或者灰阶图中提取数据的视觉像素检测方法。使用该方法后肉眼就可以识别出隐藏的信息,实验结果显示出该方法在测试中表现出更好的性能。

关键词:数据隐藏;隐写术;隐写分析;图像隐藏

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)10-0187-02

1 概述

隐写术是一门将消息、图像或者文件隐藏在其他的消息、图像以及文件中的技术。隐写术的主要好处就是,对于检测电脑数据的第三方来说,为了发现隐藏信息,其工作量是不可知的。除了隐藏数据的发送和指定接收者外,在其他人看来,所发送的数据只不过是普通数据。一般的数字图像的隐写术方法可分为两种[1-2]:第一种方法在宿主图像的空域上隐藏数据,即将秘密数据直接嵌入到宿主图像的像素数据中;第二种方法在宿主图像的变换域上隐藏秘密数据。

对于想获取隐藏数据的人来说,隐藏数据的检测是一个较大的挑战。仅就图像文件来讲,互联网上有数不清的图像文件,遍历所有这些图像将是一个非常耗时的工作,计算开销也是相当大。

该文提出的视觉像素检测方法提取出来的彩色秘密图像与原始图像在视觉上几乎完全相同,且其峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)值非常高。

2 图像信息隐藏

有很多方法可以在指定的对象中隐藏数据,但是这些方法必须满足很多条件才能正常进行。以下列出了隐写术必须满足的一些主要要求:

1) 秘密信息在被嵌入到宿主中之后,其完整性应得到保持,否则,整个隐写过程都会失败。

2) 生成的伪图在肉眼看来应该保持不变,或者几乎不变。如果伪图变化太大,能被识破,第三方就知道有信息隐藏在里面并采取措施提取信息或者销毁伪图。

3) 在加水印时,对伪图的改变一定不能影响水印。

4) 永远要假设攻击者知道伪图中包含有隐藏信息。

图1是对图像信息进行隐藏和提取的一般过程的例子。在此例中,将一个待隐藏的秘密图像嵌入到一个宿主图像中,产生一个伪图[3-5]。在嵌入隐藏数据的第一步中,将秘密图像和宿主图像都传给加密器。再在加密器中应用各种方法将秘密图像嵌入到宿主图像中。

3 提取隐藏信息的新方法

在数字媒体中隐藏信息会对媒体的属性进行更改,这些改变可能会被感觉到,这样就会破坏隐写术的目的,即暴露了隐藏信息的存在。移除嵌入的信息来处理数字媒体比检测信息本身简单多了。通过检测隐藏信息的存在可以只处理包含隐藏信息的媒体,这样就可以节省时间。

有些隐写算法通过改写媒体的一些数据嵌入在媒体中。对于图像来说,这些算法会覆盖图像像素的一些数据位或者改变图像的调色板来隐藏算法。这在大多数情况下不会被肉眼发觉出来,而且会增加相同通道里相邻像素之间的差异,进而影响像素之间的关联。

在图像的同一部分,任何像素有与相邻像素相同的颜色。当检测同一部分里不同像素之间的差异,以及评估这些像素之间的关联时,可以用这些像素差异或者关联来表示该图像。

对于没有噪声的图像,可以看到图中各对象的大多数边界,也可以分辨出图像中的各个细节。有些无噪声图像的图案细节不怎么好分辨,但是也有一些边界及细节可以清晰地分辨出来。当这些图像有了噪声或者隐藏数据后,其视觉效果就不清晰了,大多数边界和图像细节也模糊了,这些也取决于噪声和隐藏数据的数量以及隐藏数据算法。

视觉像素检测就是利用了图像中个像素之间的关联,只能处理BMP和GIF格式的图像。该方法工作原理和滤波器一样,根据相邻其他像素点的信息和关联来过滤像素点。该滤波器可以从每个像素移除1、2、3、4或者5位二进制数据,然后根据这些数据重新画图。其基本工作流程如图2所示。

输出的图像可以帮助分辨出隐藏数据噪声的数量。当原始图像像素改变1比特时,即每个字节包含1比特的隐藏信息,经过滤波后输出的图像如下:当移除1比特时,输出图像就被破坏了;当移除2比特时,输出图像开始变得清晰一些,还有一些噪声点;当移除3、4、5比特时,输出图像就变得很清晰了,也许还有很少的噪声点。

对于BMP和GIF格式文件,每个字节的前五个比特的任何改变经过该滤波器后输出都会产生很大变化。图像的颜色通道的数量对滤波器的输出结果没什么影响。该滤波器可以适用于8-bit,16-bit以及真彩色图像。

4 实验

为了检验该方法的效率,将此可视像素检测方法分别应用到三个加密的图像上:第一个在一个真彩色图像中隐藏了一个彩色图像,第二个在一个真彩色图像中隐藏了一个基于256色调色板的彩色图像,第三个在一个真彩色图像中隐藏了一个灰阶图。同时用其他两种方法(分别成为第一种、第二种方法)[6,7]处理这三种图像,并与此像素检测方法进行对比,结果如表1至表3所示。

从实验结果可以看出,总的来说,可视像素检测方法比其他两种方法性能要好。

5 小结

该文通过将可视像素检测方法应用到几种加密的伪图上来提取隐藏信息,并对比了其他提取隐藏信息的方法,证明该方法的性能要好。但是,仍然很难将一种方法作为通用方法来使用,原因在于隐藏信息时会使用有多的技术。对于隐藏信息中的每种方法都要单独进行处理。在以后的研究中,可以利用局部泛化误差模型来进行特征提取,进而降低该方法的复杂性。

参考文献:

[1] 房宜汕.一种基于JPEG2000特性的信息隐藏技术的研究[J].嘉应学院学报(自然科学),2013,31(2):24-29.

[2] 汪雪林,赵书斌,彭思龙.基于小波域隐马尔可夫树模型的图像复原[J].计算机学报,2005,28(6):1006-1011.

[3] Guan Z H,Huang F J,Guan W J.Chaos-based image encryption algorithm[J].Phys.Lett. A,2005(346):153-157.

[4] Bernie Sin-Hung Kwok, Ching-Hung Yuen.An efficient diffusion approach for chaos-based image encryption[J].Chaos,Solitons and Fractals, 2009,41(5) : 2652-2663.

[5] 李振鹏.一种基于DCT变换的图像信息隐藏算法[J].沈阳师范大学学报:自然科学版,2007,25(3): 302-304.

[6] Fridrich J.Feature-Based Steganalysis for JPEG Images and Its Implications for Future Design of Steganographic Schemes[C].Proceedings of the 6th International Conference on Information Hiding.Toronto, 2004:67-81.

[7] Shi Y Q,Chen C C ,Chen W.A Markov Process Based Approach to Effective Attacking JPEG Steganography[C].Proceedings of the 8th International Conference on Information Hiding.Alexandria, 2006:249-264.