APP下载

一种针对UnderMP3Cover的RS隐写分析新方法

2018-05-04张坚王让定严迪群

电信科学 2018年4期
关键词:码率算子音频

张坚,王让定,严迪群

(宁波大学信息科学与工程学院,浙江 宁波 315211)

1 引言

随着互联网技术的飞速发展,多媒体技术的应用日益广泛[1,2]。音频、图像和视频等多媒体在内容上存在很大的感官冗余,人们可以利用这些冗余嵌入秘密信息,进行隐蔽通信,即“隐写”。隐写分析作为检测隐写行为的技术,日渐成为国内外研究关注的热点[3]。

在多媒体信息中,音频的发展较为迅速。MP3(MPEG audio layer 3)作为一种具备高压缩率和高音质的音频有损压缩编码标准,是当前流传最广的音频格式之一。MP3音频编码过程复杂,隐写容量大,较适合隐写,因此,针对MP3音频隐写进行深入的隐写分析研究具有意义[4]。针对 MP3音频开发的隐写算法,目前主要有 MP3Stego[5]、MP3Stegz[6]和UnderMP3Cover[7]3种。然而,对应的隐写分析方法,大部分都是针对MP3Stego这种工具提出的,针对UnderMP3Cover的隐写分析则涉及较少。

UnderMP3Cover是通过LSB算法进行连续或不连续嵌入的隐写算法,而Fridrich等人[8]提出的RS(regular-singular)算法是目前唯一能够检测连续LSB替换和不连续LSB替换嵌入的秘密信息,且能可靠估计嵌入秘密信息大小的算法[9]。因此Jin等人[10]引入 RS算法,提出了一种针对UnderMP3Cover的RS算法,并根据音频的帧重叠特性,采用了重叠分组的方式。虽然该方法能有效地估计出UnderMP3Cover隐写的嵌入比例,但仍存在约4%的误差。另外,他们在实验中仅测试了128 kbit/s的MP3音频,并没有给出其他码率的MP3的检测结果。

近年来,在图像隐写分析中,已有一些基于RS算法的改进算法。如Ker在参考文献[11,12]中提出的IRS算法、Luo等人[13]提出的DRS算法以及丁晋晶等人[14]提出的QRS算法。这些算法针对载体图像的初始偏差和 RS算法的拟合方式进行了改进,提高了检测效率。但他们都是基于图像的RS曲线拟合的,不能直接应用在音频隐写分析上。参考文献[10]也指出,采用图像中RS算法的拟合方式计算UnderMP3Cover嵌入率,得出的结果会产生误差。

本文在分析了RS算法误差产生原理的基础上,根据音频特性,提出了一种新的针对UnderMP3Cover的隐写分析方法。该方案采用了更适合的分辨函数,修正了各码率MP3的初始偏差,改进了拟合方式,并在实验对比中,选择了效果更佳的翻转算子。最后,给出了4种主流码率下,本文算法与参考文献[10]的检测性能对比。实验结果表明,在不同的隐写嵌入率下,本文算法可以更为准确地估计出秘密信息的长度,且秘密信息的估计值与实际值的平均偏差仅为2%左右。

2 UnderMP3Cover隐写原理

UnderMP3Cover是 Platt C[7]提出的一种典型的开源 MP3 隐写工具。它通过修改颗粒边信息中的编码参数——全局增益(global_gain)来实现秘密信息的顺序嵌入,其具体嵌入方式是LSB 替换,即直接用秘密比特替换参数global_gain的最低有效位。但在可嵌颗粒的选择上,它通过使用一个参数BitSpacing来决定可嵌的颗粒间隔。

UnderMP3Cover隐写过程如图1所示,假设待隐藏秘密信息为;大致可以分为以下4个部分。

(1)将待嵌MP3音频进行部分解码,提取每帧边信息中的参数global_gain,将其按顺序排列,可以得到数组

(2)判断当前颗粒是否为可嵌颗粒。若当前待嵌global_gain为ggi,秘密信息比特mj,则依据式(1)判断:

其中,Bs为参数BitSpacing。若式(1)成立,则执行嵌入操作(3);否则,继续查看下一个global_gain,即将i加1,继续步骤(2)。

(3)按式(2)执行嵌入操作,当i≤n或 j≤k中任一成立时执行步骤(4);

(4)将完成隐写的global_gain写回MP3边信息中,输出隐写后的MP3音频。

由于UnderMP3Cover存在特殊的嵌入控制参数 BitSpacing,且当 BitSpacing=1时,UnderMP3Cover的嵌入方式为顺序连续嵌入,而当BitSpacing≠1时,UnderMP3Cover的嵌入方式即转变为顺序不连续嵌入,因而只能使用RS针对连续嵌入和不连续嵌入都有效的隐写检测方法。另外,参考文献[12]也已经通过实验证明了 RS法是目前针对LSB隐写检测效果最好的方法之一。所以,借鉴 RS方法,并将其改进,对 UnderMP3Cover的隐写分析来说,是一种很好的思路。

图1 UnderMP3Cover隐写流程

3 RS算法

3.1 RS算法原理

Fridrich在参考文献[8]中详细描述了RS算法的原理,简述如下。

对给定图像块的像素值以 Zigzag的方式扫描,并排列成一个向量组接着定义一个表征图像块空间相关性(平滑度和奇异性)的分辨函数 f(本文仿照参考文献[15]将定义相关性的函数称为分辨函数),其具体计算依据式(3)。f值越小,说明图像块相邻像素之间的起伏越小、空间相关性越强;反之,则表明图像块的空间相关性越弱。

Fridrich定义了一个翻转函数F:正翻转1F、0翻转F0、负翻转F-1,翻转规则如式(4)。

基于以上定义,Fridrich根据大量图像,拟合出RS曲线,如图2所示。x轴为LSB发生改变的像素的百分比,y轴为相应的的值。设隐藏信息的嵌入率为P,因为LSB嵌入序列为0、1等概率随机序列,所以,LSB发生改变的像素值百分比为

图2 Fridrich拟合的RS曲线

同时,Fridrich根据大量的实验指出:R-M和S-M与信息嵌入比率P近似呈线性关系,而RM和SM曲线更接近二次曲线。且提出了两个假设。

当嵌入率为0时:

当嵌入率为100%时:

3.2 RS算法的不足

由上述原理可知,RS算法实质上是利用隐写前后相邻像素之间的相关性的变化,实现隐写检测。因此,分辨函数能否精确地表征像素间的相关性,这是影响算法检测效率的关键因素。在原RS算法中,表示相关性的分辨函数为式(3)。但这种分辨函数,只考虑了相邻像素的相关性,而实际上每一组像素之间均有相关性。所以,为了充分利用组内所有数据的相关性,需要选取更佳的分辨函数。

Fridrich在参考文献[8]中指出影响RS算法准确度的主要因素是载体图像的初始偏差。这是因为即使是自然载体,由于随机的变化,经过正负翻转,分辨函数值也很大可能发生变化,以至于得到长度非零的检测结果,这一初始偏差会对检测算法的准确性有一定影响[14]。表1给出了4 000首不同码率的原始音频的测试结果的平均值,可以看出用 RS方法测试,即使是原始音频,依然会估计出4%左右的隐写长度。

表1 原始音频的检测结果的平均值

此外,依据RS算法的原理,本文使用50 000首第5.1节中的音频重新拟合了RS曲线,如图3所示。可以明显看出,R-M和RM、S-M和SM这4条曲线在y轴上均不相交。且RM和SM这两条曲线也没有在x=50处相交,即RS算法拟合过程中用到的两个假设(式(6)、式(7))只是近似成立。如果基于式(6)及式(7)来计算嵌入容量,则会降低秘密信息长度的估计准确率。因此,在拟合过程中需要采用新的拟合方式。

图3 本文拟合的RS曲线

4 本文算法

4.1 分辨函数的选取

为了充分利用组内所有数据的相关性,本文采用了概率论中的方差函数来描述组内数据的相关程度,即:

方差函数不仅表达了样本偏离均值的程度,更能揭示样本内部彼此波动的程度。计算出的方差值越大,表明这组数据就越离散,相关性也就越强;相反方差越小,这组数据就越聚合,相关性也就越弱。第5节的实验也证明了方差函数可以提高RS算法的检测精度。

4.2 原始音频初始偏移量的修正

在RS算法下,绝大多数的原始载体图像都存在或正或负的初始偏移量。在嵌入密度比较大的情况下,它对检测结果的影响相对较小,而当嵌入率小于或等于5%时,它的大小就与实际嵌入信息的长度相当了[14]。

在理想情况下,若待测载体未经过LSB隐写,则翻转算子M和-M会同等程度影响载体混乱程度[10],即在RS曲线图中,R-M和RM、S-M和SM均相交于 y轴。而实际情况下,正负翻转算子的影响不可能等同,在图3中,R-M和RM、S-M和SM曲线均未相交于y轴,交点偏出y轴的距离x0,在原RS算法拟合过程中被忽略了,因而产生了初始偏移量。同时注意到,不同码率下原始音频测试结果的方差很小,见表2。

表2 原始音频的检测结果的方差

这说明不同的待测载体初始偏移量相差不大,进而说明引起初始偏移量的x0值也相差不大。因此,本文借助Curve Fitting Tool,选取64 kbit/s、128 kbit/s、192 kbit/s、256 kbit/s的不同嵌入率的音频,拟合出不同码率下的x0值,以修正初始偏移量,修正值见表 3。实验结果也证明对初始偏移量的修正,可提高检测精度,并用另一个库验证了拟合结果的适用性。因此在推导过程中,需要借助 RM(0.5)和SM(0.5)这两个点的值,并假设这两个值相等(即式(7))。但在第3.2节,已经分析过式(7)只是近似成立。

表3 各码率的修正值

如果将RM和SM视为直线,那么在推导过程中就不需要借助式(7),但将二次曲线变为直线,拟合准确性下降,同样会引起误差。表4给出了在Curve Fitting Tool中,4条曲线分别用直线和二次曲线的拟合结果。

SSE是拟合误差的平方和,该值越接近0,说明拟合准确性越高。R2是实际值与推测值之间相关系数的平方值。该值越接近1,则说明拟合准确性越高。综合这两个指标,可以看出采用二次曲线拟合的准确性略优于直线,但相差并不多。相比原算法中式(7)引起的误差,曲线变为直线引起的误差更小。之后的实验也证明这种拟合方式比原RS的方法更佳。

4.3 拟合方式的改进

RS方法中,将RM和SM视为二次曲线,但在实际检测过程中,只能求出图3中C、E和G、I这4点,

可以得到:

表4 RS曲线的拟合结果

其中,x0为表4中的修正值,为△ABC在BC边上的高为△FGH在GH边上的高,这两个值均可表征嵌入率的一半p/2。进一步得到:

其中:

为了减小误差,取了R曲线交点和S曲线交点横坐标的平均值,得到:

4.4 算法的主要步骤

本文沿用参考文献[10]中重叠分组的方法,并根据上述分析,改进的RS算法可以分为以下步骤。

(1)在解码端提取待测MP3音频每帧边信息中的全局增益参数 global_gain,并将其按序存放到一维数组gg[]中。

(2)按顺序将gg[]分组,要求每组系数个数相同,但具体分组长度和分组滑动长度可任意设置。以分组长度取 6、滑动长度取 1为例,即

(4)对所有的组应用非负翻转,如式(13),再计算翻转后每组的相关性

(5)依据上述对正常组、异常组的定义,统计这二者在所有组中的占比其中为翻转类型算子的具体组合,p为秘密信息的估计长度。

(6)与步骤(4)和(5)同理,对所有的组应用非正翻转,并在计算翻转后每组相关性的基础上,依据正常组、异常组的定义,统计出其中-

(7)翻转gg数组中所有元素的LSB位,并

(8)根据式(10)求出pr和ps,从而得到秘密信息的估计长度

5 实验结果和分析

5.1 实验设置

为了客观有效地评估本文方法的性能,构造了一个基础音频数据库。该基础音频数据库的样本均是由CD抓轨得到的、44.1 kHz采样率、16 bit量化、单声道的WAV音频。这些WAV音频主要是从提供各种无损音乐下载的网站上下载获得。但通常下载的每首音频文件都是包含对应整张 CD的全部内容。因此,本文使用Hifiwav、MATLAB等能够实现音频裁剪功能而不对音频具体数据产生影响的软件对下载的WAV进行裁剪。最后,将裁剪后的各种时长的音频样本收录到本文的音频数据库中。目前本数据库中裁剪后的音频样本共有2 818首,时长均为1 min。

从该数据库中随机选择1 000首的WAV音频,用于测试本文所提方法。首先,将这些WAV音频压缩成4种(64 kbit/s、128 kbit/s、192 kbit/s和256 kbit/s)不同码率的MP3音频,作为未隐写的样本,共 4 000首。在此基础上,使用UnderMP3Cover对这4 000首音频进行隐写,对应生成40 000首不同隐写强度的隐写样本。需要说明的是,被UnderMP3Cover隐写在音频样本中的秘密信息共有文本、音频和图像3种不同类型的文件,但大小均为10 byte。隐写时,每首音频从以上3种文件中随机挑选一种进行嵌入。

每个样本时长1 min,包含4 590个颗粒的数据。因此当BitSpacing=1时理论满嵌容量为4 560 bit,但是如果BitSpacing=2,嵌入容量就会折半,同理,BitSpacing=3时就为理论满嵌的1/3。本实验中仅考虑BitSpacing=1、2和3的3种情况,也即理论满嵌可以分别看成100%、50%、33.3%的情况。

使用 UnderMP3Cover对每个样本的不同BitSpacing的情况分别制作出10种嵌入强度的隐写样本。BitSpacing=1对应的是嵌入强度为10%、20%、30%、…、100%的样本,BitSpacing=2对应的是嵌入强度为 5%、10%、15%、…、50%的样本,以此类推。

5.2 不同分辨函数的结果

RS算法核心是隐写前后数据相关性的变化。因此分辨函数对相关性的描述准不准确,对最后结果的精确性起着重要的作用。实验对比了 RS算法的分辨函数和本文的方差函数对最终结果的影响。

图4~图6分别是在参数BitSpacing为1、2、3的情况下,不同分辨函数对秘密信息嵌入长度估计的平均误差(所有测试样本估计值与实际值偏差的平均)和中值误差(所有测试样本估计值与实际值偏差的中位数)。可以看到,在不同嵌入率下,除了BitSpacing=1时,平均误差优势不明显外,其余情况下方差函数明显优于原RS算法中的分辨函数。

图4 BitSpacing=1时,不同分辨函数的平均误差和中值误差

图5 BitSpacing=2时,不同分辨函数的平均误差和中值误差

图6 BitSpacing=3时,不同分辨函数的平均误差和中值误差

5.3 不同翻转类型算子的结果

RS分析法的检测性能一定程度上取决于翻转类型算子的选择,是因为翻转类型算子的具体组合决定了所加噪声的类型。Ker等人在参考文献[11]中对常用的几种算子进行了研究,他们发现的翻转类型算子能使隐写分析方法取得较好的性能。

尽管本节研究的对象是全局量化增益参数,且可供选择的翻转类型算子也必须是一维的,但选择怎样的算子也是本方法的关键之一。本文仿照Ker等人在参考文献[11]中的工作,选了如下算子进行对比分析:(01)、(010)、(0110)、(01010)、(01110)、(010010)、(011110)、(0110110)、(0100010)、(0101010)。

图7~图9分别是在参数BitSpacing为1、2和3的情况下,10种算子对秘密信息嵌入长度估计的误差值的平均值和中值。可以看到,在不同嵌入率下,(010010)在BitSpacing=1和3的情况下,基本都是平均误差最小的算子,只是在BitSpacing=2的情况下略差,且均优于原RS算法的算子(0110),而中值误差近似。因此综合以上3种情况,选取(010010)作为本方法的翻转算子。

图7 BitSpacing=1时,不同算子的平均误差和中值误差

图8 BitSpacing=2时,不同算子的平均误差和中值误差

图9 BitSpacing=3时,不同算子的平均误差和中值误差

5.4 不同拟合方式的结果

本算法摒弃了式(7)和式(8),对两个会引起较大误差的推论,重新进行了拟合。图 10~图 12分别是在分辨函数为方差函数、算子为(010010)的情况下,不同拟合方式的结果。在BitSpacing等于1、2和3的情况下,本文算法拟合方式的平均误差在BitSpacing=2和3时明显优于原RS的拟合方式,在BitSpacing=1时略优。而3种情况下中值误差均相差不大。因此,本文算法的拟合方式更佳。

图10 BitSpacing=1时,不同拟合方式的平均误差和中值误差

图11 BitSpacing=2时,不同拟合方式的平均误差和中值误差

图12 BitSpacing=3时,不同拟合方式的平均误差和中值误差

5.5 修正值适用性的验证

本文是根据不同码率的音频,用Curve Fitting Tool拟合出各码率对应的修正值,但该值是否适用其他库的音频,还需实验验证。本文另外选取了500首WAV音频,按照第5.1节的定义,制作了同样的样本,结果以128 kbit/s为例。由表5~表7可以看出,根据第5.1节的库拟合出的值,依然可以适用于其他库的音频,然而在低嵌入率下,略微差些,但总体而言,大部分嵌入率下,效果均优于未修正的结果,因此,本文拟合出的修正值具有一定的适用性。

5.6 不同码率的结果

目前,只有Jin[10]提出了针对UnderMP3Cover的隐写分析算法。因此,将本文算法与其进行对比。但在Jin的实验中,仅针对128kbit/s的音频进行了测试。事实上,MP3音频码率越高,编码过程中量化就越精细,量化步长就越小,而全局增益变量global_gain就是量化步长的另一种表现形式。因此码率不同,即使是同一个WAV音频,生成的MP3的global_gain也不同。表8~表10是当BitSpacing=1、2和3的情况下,本文算法与Jin的算法在估计长度和中值误差的对比。可以看出,本文算法在估计长度方面,除了BitSpacing=1时,个别嵌入率差一点,其他均比Jin的结果更准确。而在BitSpacing=1和2时,平均误差大约为1%,BitSpacing=3时,平均误差约为2%。相应的中值误差也略有提升。相比Jin的算法,本文算法可以更加精准地估算出秘密信息嵌入百分比。

表5 BitSpacing=1时,不同嵌入率的结果

表6 BitSpacing=2时,不同嵌入率的结果

表7 BitSpacing=3时,不同嵌入率的结果

6 结束语

本文针对UnderMP3Cover隐写算法,提出了一种改进的RS隐写分析算法。相比原RS方法,

通过采用更合适的分辨函数和拟合方式,修正不同码率下MP3的初始偏差以及在实验中选取了更佳的翻转算子,提升了算法的精度,并将秘密信息的估计值与实际值的平均偏差降到了2%左右。此外,本文建立了包含4种主流码率的实验音频库,相比参考文献[10],给出了更为全面的结果。

表8 BitSpacing=2时,各码率的音频不同嵌入率的结果

表9 BitSpacing=2时,各码率的音频不同嵌入率的结果

表10 BitSpacing=2时,各码率的音频不同嵌入率的结果

虽然,本文算法较为准确地估计出 UMC隐写音频中秘密信息嵌入的百分比,但秘密信息的嵌入方式是由参数BitSpacing控制的。因此,在不知 BitSpacing值的情况下,仍然无法准确地提取出秘密信息。未来的工作中,将进一步研究如何估计 BitSpacing的值,并最终实现对秘密信息的准确提取。

参考文献:

[1] 郑志彬.信息网络安全威胁及技术发展趋势[J].电信科学,2009, 25(2): 28-34.ZHENG Z B.Overview of mobile communication services security [J].Telecommunications Science, 2009, 25(2): 28-34.

[2] 王帅, 汪来富, 金华敏, 等.网络安全分析中的大数据技术应用[J].电信科学, 2015, 31(7): 145-150.WANG S, WANG L F, JIN H M, et al.Big data application in network security analysis [J].Telecommunications Science, 2015,31(7): 145-150

[3] 万威, 赵险峰, 黄炜, 等.基于码表分布特征和重编码的 MP3Stego隐写分析[J].中国科学院大学学报, 2012, 29(1): 118-124.WAN W, ZHAO X F, HUANG W, et al.Steganalysis of MP3Stego based on huffman table distribution and recoding[J].Journal of the Graduate School of the Chinese Academy of Sciences, 2012, 29(1): 118-124.

[4] 万威.MP3音频隐写分析技术研究[D].北京: 中国科学院大学, 2011.WAN W.Research on MP3 audio steganalysis technology[D].Beijing: Chinese Academy of Sciences University, 2011.

[5] PETITCOLAS F A P.MP3Stego [EB].2002.

[6] ACHMAD Z.MP3Stegz [EB].2007.

[7] PLATT C.UnderMP3Cover [EB].2002.

[8] FRIDRICH J, GOLJAN M, DU R.Detecting LSB steganography in color, and gray-scale images[J].IEEE Multimedia, 2001,8(4): 22-28.

[9] 张涛, 平西建.基于差分直方图实现LSB信息伪装的可靠检测[J].软件学报, 2004, 15(1): 151-158.ZHAN T, PING X J.Reliable detection of spatial LSB steganography based on difference histogram[J].Journal of Software, 2004, 15(1): 151-158.

[10] JIN C, WANG R, YAN D, et al.Steganalysis of UnderMP3Cover [J].Journal of Computational Information Systems, 2012, 8(24): 10459-10468.

[11] KER A D.Improved detection of LSB steganography in grayscale images[C]// International Conference on Information Hiding, May 19-21, 2004, Santa Barbara, California, USA.Berlin: Springer, 2004: 97-115.

[12] KER A D.Quantitative evaluation of pairs and RS steganalysis[J].Proceedings of SPIE -The International Society for Optical Engineering, 2004(5306): 83-97.

[13] LUO X, LIU B, LIU F.Improved RS method for detection of LSB steganography[C]//International Conference on Computational Science and Its Applications, Dec 19-21, 2008, Wuhan, China.Berlin:Springer Berlin Heidelberg, 2005: 508-516.

[14] 丁晋晶, 蒋铃鸽, 何晨.一种针对LSB嵌入方式水印的改进的全盲检测方案[J].高技术通讯, 2007, 17(7): 681-685.DING J J, JIANG L G, HE C.An improved method of detecting LSB steganography[J].Chinese High Technology Letters, 2007,17(7): 681-685.

[15] 于禛, 陈克非.RS检测算法的分析与改进[J].计算机工程,2008, 34(8): 170-171.YU Z, CHEN K F.Analysis and improvement on RS detection algorithm[J].Computer Engineering, 2008, 34(8): 170-171.

猜你喜欢

码率算子音频
拟微分算子在Hp(ω)上的有界性
一种基于HEVC 和AVC 改进的码率控制算法
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
一类Markov模算子半群与相应的算子值Dirichlet型刻画
基于Daubechies(dbN)的飞行器音频特征提取
基于状态机的视频码率自适应算法
音频分析仪中低失真音频信号的发生方法
Roper-Suffridge延拓算子与Loewner链
Pro Tools音频剪辑及修正