APP下载

基于音频载体的特定信息隐藏算法研究

2020-06-16白天皓李亚伟

计算机技术与发展 2020年6期
关键词:密文鲁棒性密钥

姚 远,白天皓,李亚伟

(华中师范大学 物理科学与技术学院,湖北 武汉 430000)

0 引 言

随着网络技术的发展,移动终端的数据互传业务日益增多,攻击者可以利用网络传输的漏洞来窃取用户传输的私密信息,因此信息安全的问题显得尤其重要。近几年,信息隐藏技术[1]在信息安全领域迅速发展并取得了较多成果。语音作为人与人之间交流的重要载体,伴随着网络通信技术的进步,无线语音通信在人们生活中越发普遍,以音频为载体的信息隐藏技术也日益成为研究热点。

音频信息隐藏可以分为音频水印[2-3]和音频隐写[4-5]两个分支。音频水印技术是版权保护领域的一种新技术,常见的音频水印算法主要包括时域[6]和变换域[7-8]两类。在时域进行信息隐藏具有嵌入信息量大,操作简便等优点,但是对攻击的抵抗性较差;变换域水印算法在保证不可感知性的前提下仍具有良好的鲁棒性,其中主要包括离散余弦变换、离散小波变换、傅里叶变换等。文献[9]结合小波变换与心理声学模型,根据子带掩蔽阈值自适应地在小波域嵌入水印。文献[10]提出一种基于DCT域系数比较的音频盲水印算法,该算法具有良好的透明性,但是鲁棒性欠佳。文献[11]提出一种结合DCT变换与SVD分解的水印算法,在DCT域对音频进行SVD分解来实现水印嵌入,算法可以抵抗常见音频攻击。文献[12]分析了DWT变换与SVD分解的各自优势,通过对音频进行DWT-SVD变换,选择分解后的奇异值使用量化的方式嵌入水印。其算法的透明性与鲁棒性都具有不错的效果。文献[13]基于音频的MFCC特征,在音频小波域进行SVD分解嵌入脆弱水印,在抵抗多种攻击的同时可以定位恶意篡改位。

文中借鉴变换域的音频水印算法,结合离散小波变换(DWT)和奇异值分解(SVD)的特征,提出一种基于音频载体的特定信息隐藏算法。将整个音频载体进行离散小波变换,取近似分量部分按特定长度分段,每段系数进行SVD分解得到奇异值。因为矩阵奇异值越大其稳定性越好,该算法在得到奇异值后并没有直接进行嵌入,而是对所有奇异值进行排序,选择较大的奇异值以奇偶量化的方式嵌入信息。同时为了保证安全性,在嵌入前对特定信息进行混沌加密和CRC编码处理。实验结果证明该算法在不可感知和抵抗攻击方面都具有不错的效果。

1 基于音频载体的特定信息隐藏算法

1.1 特定信息预处理

为提高特定信息的安全性,在嵌入音频前对特定信息进行预处理操作,即进行混沌加密和CRC编码[14]。混沌是一个复杂的非线性非平衡动态过程,具有高度随机性和低通特性的同时能够有效抵抗有损压缩和低通滤波等攻击。Logistic映射[15]是一种典型的混沌动力学系统,其方程为:

Sn+1=μ*Sn*(1-Sn)

(1)

其中,μ为控制变量,Sn为混沌序列值且Sn∈(0,1),S0为序列Sn初始值。当3.57<μ<4时,从初始值S0开始迭代生成的Logistic混沌序列处于混沌状态。

为解决密钥固定导致安全性降低的问题,文中采用随机密钥加密方式对特定信息进行混沌加密。首先,加密方和解密方各约定好相同的索引库,索引库中存放了256对混沌logistic控制参数,即控制变量μ和初始值S0,每一对参数都对应一个索引值(8 bit)。开始加密前先随机生成一个索引值,取出其在库中对应的参数来生成混沌序列,将生成的混沌序列与特定信息进行异或操作得到加密后信息。解密过程为:接受方提取出密文信息后,先取出前8 bit的密钥索引值,进入索引库中搜索其对应的混沌logistic控制参数μ和S0生成混沌序列,与密文异或即可解密。

文中特定信息选择二值图像,先将二值图降维成n位一维向量;之后在256个索引值中随机选择一个,在库中找到对应的控制参数μ和S0,构建n位的logistic混沌序列,与一维的特定信息异或得到密文,将8 bit索引值放在n位密文前面得到n+8位最终密文。之后采用CRC-16编码生成16位校验码置于加密信息最后,经过处理的最终信息用元素w(i)表示,长度记为M。

1.2 特定信息隐藏与提取

变换域信息隐藏算法由于其良好的鲁棒性被广泛应用。其中离散小波变换(DWT)可以从时间和频域角度同时对信号进行多尺度分析,相比于其他变换可以更有效地从信号中提取信息,故经离散小波变换后分解得到的信号低频分量更加精准,由于音频的能量大部分集中在低频区域,因此在其中隐藏信息可以大大提高鲁棒性。奇异值分解[16](SVD)是一种将矩阵对角化的数值方法,具有很好的稳定性,表现在当矩阵的奇异值发生变动时,逆变换后的矩阵不会发生较大变化。在矩阵的奇异值中隐藏信息可以抵抗常见攻击,同时增加了隐藏信息后的透明性。经1.1节预处理得到加密的特定信息后,基于DWT和SVD将加密的特定信息隐藏到音频载体中,嵌入方法具体如下:

(1)对原始印音频进行二级小波变换,取出小波变换后的低频分量Ca,长度记为L。对低频分量Ca以长度T进行分段,分段后每段构成一个1*T的一维矩阵,记共分为a=L/T段。

(2)对每个1*T矩阵进行奇异值分解,得到a个奇异值矩阵X,选出每个奇异值矩阵X中的第一个元素X1。对所有分段的X1进行对比排列,选择其中值最大的M个作为嵌入位置,进行特定信息嵌入。

(3)采取奇偶量化[17]的方式将特定信息w(i)嵌入到X1中。每个X1嵌入一比特特定信息,引入量化步长Δ来提高鲁棒性。定义:

temp=round(X1/Δ)

(2)

取mod(temp,2)的值记为a,嵌入特定信息如式(3)所示:

(3)

重复以上步骤将特定信息嵌入完毕后,对所有的奇异值矩阵X进行逆SVD变换得到分段的DWT系数向量。整合后对其二级逆小波变换,得到含特定信息的音频数据。

特定信息提取流程如下所示:

(1)将原始音频数据进行二级小波变换,取出低频分量按长度T分段并进行SVD分解。对所有分段分解后的奇异值矩阵X中的元素X1进行大小排序,选出最大的M个X1所对应分段即为特定信息嵌入的位置。

(2)对含信息音频数据进行二级小波变换,取出低频分量按长度T分段,对上步筛选出来的分段进行SVD分解,取出X矩阵中元素X1按以下公式进行提取:

(4)

(3)将所有的嵌入分段按以上步骤提取后,先对提取的信息进行CRC解码判定提取的信息是否发生错误。若无误即可执行1.1节解密得到特定信息,反之则说明数据发生丢失或者修改,则通知发送方重新发送数据。文中算法隐藏与提取流程分别如图1所示。

图1 隐藏与提取算法

2 实验结果及分析

选择在matlab2012a环境下进行仿真,音频载体为采样频率8 kHz、量化精度16 bit的单声道WAV音频信号,分段长度T=10,量化步长Δ=0.5。测试的特定信息选择32*32的二值图像CCNU.bmp,原始图片和加密后图片见图2。

图2 原始和加密的特定信息

2.1 加密算法的性能分析

2.1.1 密钥敏感性分析

加密算法要求必须对密钥有极高的敏感性。当密钥发生极其细微的变化时,密文都会随之发生巨大改变,这便是密钥的敏感性。分别对密钥μ和S0进行细微改变后,对相同明文数据进行加密,与原密钥加密后的密文进行对比,计算其密文变化比率,如表1所示。

2.1.2 抗差分攻击分析

加密算法的攻击方式可以分为四种:唯密文攻击、已知明文攻击、选择明文攻击和差分攻击。差分攻击[18]是四种攻击方法中最有效的,如果加密算法可以抵抗差分攻击,那么其他的三种攻击也可以抵抗。差分攻击的做法是攻击者对明文数据进行微小改变后,利用加密算法改变前后的明文数据进行加密,通过对不同密文数据之间的差异可以分析出规律解出密钥。文中的加密算法由于为随机密钥方式,即改变明文后再加密时密钥已经改变,故可抵抗差分攻击。经过测试,选择50字节、100字节和200字节明文数据,分别对仅改变1字节的两个明文进行加密,密文变化率分别为97.95%、98.98%、98.93%,明文的稍许改变会带来密文的巨大变化,因此增加了差分攻击的难度。

表1 密文变化比率程度表

2.2 特定信息隐藏算法性能分析

2.2.1 不可感知性检测

图3为原始音频和含特定信息的音频波形对比,对比波形图可以看出嵌入特定信息后音频数据基本无变动。分别采取主观测评与客观测评对不可感知性进行分析。

图3 音频波形对比

主观测评采用最直观的方式对算法进行测试,直接听取嵌入特定信息后的音频载体,选择国际主流的Subjective Difference Grades标准(SDG)。SDG为0表示毫无差别,之后等级表示差别效果依次增大。选取15人的样本在安静的实验室环境下对以上两段音频进行评估,结果如表2所示。

表2 主观评测

客观测评标准为计算嵌入特定信息前后的信噪比,嵌入的特定信息可以看成添加噪声信号,当然这会对音频载体质量造成一定的影响。因此衡量嵌入的特定信息对原始音频造成影响程度的大小,就可以用信噪比的值的大小来表示。文中算法在测试音频类型分别选择流行音乐、古典音乐与摇滚音乐,嵌入特定信息后的信噪比分别为16.699 9、16.336 9、16.107 8。

2.2.2 鲁棒性测试

为了测试算法的鲁棒性,对嵌入特定信息后的音频信号进行以下攻击测试:(1)加20 dB高斯噪声;(2)经过截至频率为8 kHz的低通滤波;(3)重采样:将采样率提升到44.1 kHz之后再降到8 kHz;(4)MP3压缩:以128 kbit/s的比特率进行MP3压缩,攻击之后提取水印信息。计算其相关系数(NC)和误码率(BER)并与文献[11]、文献[12]进行比较,表3为数据对比。

表3 不同算法对音频攻击的鲁棒性

从表3中可以看出,文中算法相比文献[11]和文献[12]的算法在抵抗加高斯噪声和MP3压缩等攻击上都有明显提升,说明算法总体鲁棒性更强,有效降低了特定信息的误码率。

3 结束语

提出了基于音频载体的特定信息隐藏算法,将特定信息先进行混沌加密和CRC编码,再对加密后的特定信息隐藏在音频载体中实现保密通信。信息隐藏算法结合离散小波变换(DWT)和奇异值分解(SVD),在具有良好透明性的同时提高了鲁棒性。实验验证了该算法的有效性,为信息安全传输提供了一种较好的思路。

猜你喜欢

密文鲁棒性密钥
一种支持动态更新的可排名密文搜索方案
幻中邂逅之金色密钥
幻中邂逅之金色密钥
基于模糊数学的通信网络密文信息差错恢复
嵌入式异构物联网密文数据动态捕获方法
武汉轨道交通重点车站识别及网络鲁棒性研究
一种新的密文策略的属性基加密方案研究
Android密钥库简析
一种基于三维小波变换的鲁棒视频水印方案
电子节气门非线性控制策略