信息隐藏实验十LSB信息隐藏的卡方分析
信息隐藏是指在数字介质中嵌入秘密信息,使其难以被察觉的技术。隐写分析是指对可疑的载体信息进行攻击以达到检测、破坏,甚至提取秘密信息的技术。卡方分析是一种常用的隐写分析方法,用于检测图像中是否含有秘密信息。本实验的目的是了解什么是隐写分析,掌握基于图像的 LSB 隐写的分析方法,并设计并实现一种基于图像的 LSB 卡方隐写分析方法。
一、实验目的
了解什么是隐写分析,掌握基于图像的 LSB 隐写的分析方法,设计并实现一种基于图像的 LSB 卡方隐写分析方法。
二、实验环境
Windows XP 操作系统、Matlab 软件、BMP 格式图片文件。
三、实验原理
隐写术和隐写分析技术是互相矛盾又是相互促进的。隐写分析是指对可疑的载体信息进行攻击以达到检测、破坏,甚至提取秘密信息的技术。 LSB 信息隐藏的方法是用嵌入的秘密信息取代载体图像的最低比特位,原来图像的 7 个高位平面与代表秘密信息的最低位平面组成含隐蔽信息的新图像。
四、卡方分析步骤
卡方分析的步骤是:设图像中灰度值为 j 的象素数为 hj,其中 0≤j≤255。如果载体图像未经隐写,h2i 和 h2i+1 的值会相差很大。秘密信息在嵌入之前往往经过加密,可以看作是 0、1 随机分布的比特流,而且值为 0 与 1 的可能性都是 1/2。如果秘密信息完全替代载体图像的最低位,那么 h2i 和 h2i+1 的值会比较接近,可以根据这个性质判断图像是否经过隐写。
五、实验结果
实验结果表明,当隐写率为 0.3 的时候,P[1]—P[40]的值都接近 1;当隐写率为 0.5 的时候,P[1]—P[64]的值都接近 1;当隐写率为 0.7 的时候,P[1]—P[91]的值都接近 1。这表明,卡方分析函数可以判定载体图像中是否含有秘密信息。
六、代码实现
实验中使用 Matlab 软件实现了卡方分析函数,并使用 hist_change.m 和 Stgprb.m 两个函数来计算图像的直方图和秘密信息的概率分布。
七、结论
本实验完成后,可以得出以下结论:依据卡方分析函数,可以判定载体图像中是否含有秘密信息。但是这要求秘密信息必须嵌满所有像素。