陈鹏文 高飞鹏 杨洁
DOI:10.16644/j.cnki.cn33-1094/tp.2021.11.014
摘 要: 文章研究了基于LSB图像信息隐藏技术的图片无损水印。该方法所嵌的载体图片,在水印写入时以随机间隔法嵌入,其间隔距离以伪随机数来控制,伪随机数的种子作为密钥;在需要还原载体图片时,只需输入嵌入时所设置的密钥,就可以通过该方法还原成原来的载体图片。经过PSNR(Peak Signal to Noise Ratio,峰值信噪比)测试得出,该方法能很好地还原载体图片,实现图片的无损水印。
关键词: 图片; 无损水印; LSB图像信息隐藏
中图分类号:TP391 文献标识码:A 文章编号:1006-8228(2021)11-55-05
Research on picture lossless watermarking with information hiding technology
Chen Pengwen, Gao Feipeng, Yang Jie
(Jiyang College of Zhejiang A&F University, Zhuji, Zhejiang 311800, China)
Abstract: The image lossless watermarking studied in this paper is based on the LSB image information hiding technology. The carrier picture embedded in this method is embedded by random interval method when the watermark is written, the interval distance is controlled by pseudo-random number, and the seed of pseudo-random number is used as the key; When the carrier picture needs to be restored, just input the key set during embedding, and then the original carrier picture can be restored by this method. The PSNR (Peak Signal to Noise Ratio) test shows that this method can well restore the carrier picture and realize the lossless watermarking of the picture.
Key words: picture; lossless watermarking; LSB image information hiding technology
0 引言
隨着信息技术的飞速发展,信息的存储、复制、处理和传输变得越来越便捷。在开放网络环境中发送的任何类型的信息都可以很容易地被窃听或拦截。其中图片作为信息的载体,应用甚广,如图片中嵌入其他的图片来传播广告,商家信息等。如果我们将嵌入图片所覆盖的区域用信息隐藏技术写入到图片中,就可以在我们所需时刻,做到随时还原,做到图片的无损水印的效果,同时还可以拥有版权,其中保证图片的失真率低是关键。
在图像信息隐藏技术方面,万诺飞[1]对JPEG图像的可逆隐藏算法进行了研究,在相同质量因子和同等比特流嵌入载体图像的情形下,能够得到更好的JPEG图像的视觉质量,以及更少的图像比特流扩展。王紫琪[2]对多图像信息隐藏与加密算法进行了研究,有效提高传统多幅图像同步压缩加密与重构恢复的计算效率,并且具有较高的密钥敏感性,较大的密钥空间以及良好的抗噪性和鲁棒性。
1 基于信息隐藏技术系统构建
1.1 信息隐藏模型
信息隐藏与传统的密码学技术有所不同,密码学技术主要研究的是将机密信息进行特殊的编码,使其形成一种特殊的不易被识别的密码进行传递;而信息隐藏则主要研究怎样将机密信息秘密隐藏于公开的载体信息中,然后通过公共传输途径进行传输并传递机密信息[4]。对加密通信而言,非法间谍可以通过截取密文,并对密文进行破解,或将密文破坏随后再发送,从而影响机密信息的安全以及准确性;而对信息隐藏而言,非法拦截者则难以从公开信息中判断机密信息是否存在,难以获取机密信息,从而能保证机密信息的安全。
待隐藏的信息称为秘密信息,它可以是秘密数据或是版权信息;而公开信息则称为载体信息,如视频、音频片段、图像、文本。这种信息隐藏过程,一般由密钥来控制,通过嵌入算法将秘密信息隐藏于公开信息中,而隐蔽载体则通过公开信道传递,然后检测器利用密钥从隐蔽载体检测隐蔽信息并恢复 。
1.2 信息隐藏特点
信息隐藏与传统的加密有所不同,因为信息隐藏的目的不在于限制正常的资料存取,而在于保证隐藏数据不被发现。信息隐藏技术需要解决正常的信息操作对载体中所嵌入的隐藏信息造成的威胁,所以要使载体对正常的数据操作技术具有一定的抗性。这种抗性的关键是要使隐藏信息部分不易被正常的数据操作所破坏。根据信息隐藏的目的和技术要求,该技术存在以下特性。
⑴ 鲁棒性:指不因图像文件的某种改动而导致隐藏信息丢失的能力[3]。这里所谓“改动”包括传输过程中的信道噪音、滤波操作、重采样、有损编码压缩等。
⑵ 不可检测性:是指隐蔽载体与原始载体具有一致的特性。如具有一致的统计噪声分布等,为了使非法间谍无法得知是否含有隐藏信息。
⑶ 透明性:利用人类视觉系统或人类听觉系统属性,经过一系列隐藏处理,使目标数据没有明显的降质现象,在正常情况下人无法看见或者听见隐藏的数据。
⑷ 安全性:指隐藏算法有较强的抗攻击能力,即它必须能够承受一些对文件的正常操作和一些人为的破坏 ,而使隐藏信息不会被破坏。
⑸ 自恢复性:由于经过一些操作或变换后,可能会使原图产生较大的破坏,如果只从留下的片段数据,仍能恢复隐藏信号,而且恢复过程不需要宿主信号,这就是所谓的自恢复性[5]。
⑹ 可纠错性:为了保护隐藏信息的完整性,使其在经过各种操作和变换后仍能很好的地恢复,通常用于纠错编码方法。
1.3 LSB图像信息隐藏技术
LSB图像信息隐藏技术是将信息的每一位隐藏到图片RGB单元的最后一位,改变这一位置对载体图像的品质影响最小,人的肉眼难以识别,从而做到在公开图像中隐藏信息的效果,其嵌入的容积最多为图片文件大小的八分之一。
LSB图像信息隐藏技术有如下优点:算法简单,易实现,计算速度也快。在基础算法上能够很快的进行改进,并在脆弱性水印中应用广泛。LSB图像信息隐藏技术有如下缺点:嵌入消息较大时,所花时间较长。只能处理简单的流格式的文件。为了满足水印的不可感知性,允许嵌入的水印强度较低,对空间域的各种操作都很敏感。
嵌入:载体图片所嵌入的区域图片像素最低位全部置零如图1所示,再将水印的二值序列依次加到各像素值上如图2所示。
提取:对伪装图片的特定区域进行各像素值进行模2运算如图3所示,并进行提取。
1.4 伪随机数
绝对随机的随机数只是一种理想状态下的随机数,计算机的伪随机数是由随机种子根据计算方法算出来的数值,只要计算的方法一定,随机种子一定,所产生的随机数就是固定的。所以,伪随机數的种子就可以作为信息隐藏的密钥。在伪随机数中其中m序列是最有名和最简单的,也是研究的最透彻的序列,m序列是最长线性反馈移存器序列的简称,它是由带线性反馈的移存器产生的周期最长的一种序列。设{ai}=(a1a2a3…)为集合,例如00110111,其前面两个数字是00称为2的游程,接着11是1的2游程,在接下来是0的1游程和1的3游程。GF(Galois Field,有限域)(2)是最简单的有限域,只有0,1二元及异或运算、与运算,GF(2)上周期为T的序列R(t)为{ai}的自相关函数定义为⑴
当t=0,R(t)=T;当t≠0时,称R(t)为异相自相关函数。GF(2)上的长为n的m序列{ai}具有以下特性:①在一个周期内,0、1出现的次数分别为2n-1-1和2n-1。②在一个周期内,总游程数为2n-1,对0
1.5 隐藏功能构建
图像信息隐藏技术的核心在于将秘密信息隐藏在于公开的图像信息之中,并将公开的图像作为有效载体,实现机密信息的传递。信息隐藏技术将图像媒体中的冗余信息进行有效利用,利用人眼对特定信息的隐蔽作用实现信息的隐蔽,基于水印技术的信息隐藏的优势在于能够保障信息的安全性,非法间谍难以从数字水印中获取机密信息[6]。
信息隐藏技术的工作原理图如图4所示。
根据待嵌入图片大小,来决定载体图片是否能够隐藏被待嵌入图片所覆盖的区域。其中,隐藏技术采用LSB图像信息隐藏技术,通过改变最低位来实现信息隐藏,由于每一个像素点有R,G,B三层。考虑到能尽可能增大能够隐藏数据的大小,所以将水印写入到相对应的R,G,B层中即将R层中的像素值写入R层中隐藏。由于每一个需要隐藏的像素值将被转换为二进制,将每一位写入载体图片像素值的最低位,而且嵌入时采用随机间隔法写入,所以载体图片大小至少为嵌入图片的32倍。
本文中所嵌入方式是随机间隔法。其原理是利用C++中自带的伪随机数函数,将伪随机数的种子作为嵌入时的密钥,并利用伪随机数来控制前后两个嵌入位的距离,且保证随机嵌入选择的像素位不重复,达到使信息嵌入点混乱,考虑到载体图片的嵌入量将两个嵌入位之间的距离控制在1-3个像素值,在保证一定混乱的情况下,提高图片嵌入量。从而第三者在密钥未知的前提下,很难从隐秘载体中得到或删除,甚至发现秘密信息 。通过读取载体图片数据结构里像素值的与待嵌入图片的像素值进行替换,在图5(b)右下角嵌入图5(b)得到图5(c)所示。
并且用一个空数据结构体其大小与待嵌入图片大小相同来储存被覆盖的区域如图6所示。
1.6 恢复功能构建
因为设置了密钥,非法间谍没有密钥是无法还原载体图片的。密钥持有者只需输入密钥和需要还原的载体图片,再根据伪随机的间隔,特定的隐藏区域来提取隐藏信息,并还原载体图片。根据特定区域的隐藏信息是以二进制的水印写入。所以用模2法提取出水印并设计出了将其还原为十进制像素值的算法。然后再将其像素值写入到嵌入图片所覆盖的区域,做到载体图片还原的效果,实现图片的无损水印。通过本算法的恢复算法还原图片。首先输入需要恢复的图片图7(a),之后输入设定的密钥,然后根据随机间隔法的间隔为以密钥设定的伪随机数。对特定的隐藏区域做模2运算就可以提取水印如图7(b)所示。通过研究,编写出算法对每八个像素点的像素值进行模2算法,并根据提供正确的密钥得出的伪随机数进行随机间隔提取,并进行了将二进制转换为十进制的运算。最后再将像素值写入对应的需要被还原的区域,即可做到恢复图片的效果,如图7(c)所示。对比图7(d)达到的效果,从而实现图片的无损水印。
2 仿真及实验验证
2.1 峰值信噪比计算
峰值信噪比是是一种评价图像的客观标准,本文采用PSNR计算公式如⑶所示其中MSE(Mean Square Error,均方差)为均方差。得出PSNR值越大,表示图片的失真率越低。
然后对十张不同的载体图片在密钥和嵌入图片相同的情况下进行隐藏,在嵌入后经过还原并进行PSNR测试,理论上假设所有像素改变1或者-1,最低的峰值信噪比约等于48.13dB,对十张图片的PSNR值的进行求平均值处理得出PSNR值等于65.14dB。得出通过本算法,图片的还原过程中导致图片的失真可能性非常低。
2.2 安全性测试
此性能测试对密钥错误时,以及在一些干扰下提取信息隐藏进行了测试。当图 8(a)在密钥错误时,图片是无法读取隐藏信息,此时恢复的区域如图8(b)所示,正确的水印如图8(c)所示。所以当非法间谍没有正确的密钥时是无法提取隐藏信息的。
2.3 干扰测试
首先对图片进行了裁剪的干扰分别裁剪位置为左上角。如图9(a)所示。当剪裁左上角时提取的水印有将近一半被破坏如图9(b)所示。因为隐藏信息从左上角开始随机间隔嵌入所以导致从左上角剪裁必然会影响提取信息,随后分别用椒盐系数为0.05,高斯滤波3*3,均值滤波3*3以及中值滤波进行干扰,分别如图9(c),图9(e),图9(g),图9(i)所示通过观察提取出的水印,只有椒盐干扰可以做到基本还原只有少许噪点如图9(d)所示,其余三种滤波的干扰,让提取的水印根本无法还原如图9(f),图9(h),图9(j)所示。
3 结束语
本文围绕基于信息隐藏技术的图片无损水印,使用VS2013开发实现对嵌入图片所覆盖区域的隐藏以及恢复,通过算法还原的图片PSNR平均值为65.14dB,图片的失真率非常低,实现了一种能将嵌入图片后的载体图片还原,且可以作为版权维护的方法。
参考文献(References):
[1] 王若飞.基于排序选择DCT系数对JPEG图像的可逆隐藏算法的研究[D].安徽大学,2020.
[2] 王紫琪.基于混沌壓缩感知的多图像信息隐藏与加密算法[D].北京邮电大学,2020.
[3] 马咸綮.基于小波变换的数字图像水印算法的研究[D].兰州理工大学,2009.
[4] Sun J G,Liang K,Xia S Z. Research of Lossless Digital Watermarking Technology[J].Applied Mechanics and Materials,2013.2490(1):1219-1223
[5] 左伟明,秦姣华.信息隐藏技术研究[J].湖南城市学院学报(自然科学版),2005.1:65-68
[6] 冯柳.以数字水印为基础的图像信息隐藏技术[J].计算机光盘软件与应用,2015.18(1):223-225