音频隐写术:分析剑桥大学提出的MP3Stego算法
目錄
前言
一. 語音頻隱寫分析
二. 修改量化步長
(1)普通的MP3Stego算法
(2)改進(jìn)后的MP3Stego算法
三. MP3Stego算法分析
3.1 塊長度part2_3_length的方法統(tǒng)計量
3.2 量化步長差分的方法統(tǒng)計量
3.3 邊信息中main_data_begin值的均值統(tǒng)計量
2.4 大值區(qū)系數(shù)的方法統(tǒng)計
總結(jié)
系列文章
前言
從信號處理的角度來看,隱寫思想的本質(zhì)就是將載密的噪聲信號疊加到載體信號上,并且使得處理后的載體信號仍然保持感知透明性和統(tǒng)計不可檢測性。音頻隱寫技術(shù)的發(fā)展經(jīng)歷了五個階段:樸素的語音頻隱寫、編碼內(nèi)聯(lián)的語音頻隱寫、自適應(yīng)的語音頻隱寫和語音頻隱寫的新方向。如下圖:
一. 語音頻隱寫分析
第三方截獲者的分析系統(tǒng)有不同的分類方法,包含:兩類和三層次。
兩類包含:通用隱寫分析和專用隱寫分析。
三層次包含:
三個層次主要使用的技巧與方法可見下圖:
二. 修改量化步長
量化和熵編碼是音頻編碼的核心組件,基于量化步長修改方法本質(zhì)是一種內(nèi)置式隱寫方法,通過調(diào)整量化步長大小或奇偶性來實現(xiàn)秘密信息的嵌入。
(1)普通的MP3Stego算法
最經(jīng)典的基于量化步長修改的嵌入方法就是MP3Stego算法。此算法是劍橋大學(xué)計算機(jī)實驗室安全組開發(fā)的針對MP3編碼的隱寫軟件。結(jié)合MP3的編碼格式,該算法就是在MP3編碼的內(nèi)層循環(huán)中實現(xiàn)秘密信息的嵌入,通過調(diào)節(jié)量化誤差的大小,將量化編碼后Part23 塊長度part2_3_length的奇偶性作為隱秘消息嵌入的依據(jù)。
如下圖:
?
MP3Stego算法的嵌入過程類似編碼的過程,共有三步:
步驟1:使用量化步長對MDCT系數(shù)量化后進(jìn)行哈夫曼編碼,計算哈夫曼碼流中 Part23 塊長度為 part2_3__length。
步驟2:計算 embedRule=(part2_3_length%2)?m,m代表當(dāng)前待嵌入的消息比特。
步驟3:利用代表最大可用比特數(shù),如果 embedRule=0 且 part2_3_length,則消息嵌入成功;否則,令并跳轉(zhuǎn)執(zhí)行步驟1。
優(yōu)點:MP3Stego算法引入的隱寫失真需要通過編碼器的失真控制,所以該算法的不可感知性較好。
缺點:該算法隱寫容量偏低,平均每幀只能隱藏2比特的消息;而且,如果在較低編碼碼率情況下(例如96Kbps以下),很容易導(dǎo)致編碼器陷入死循環(huán)。
(2)改進(jìn)后的MP3Stego算法
解決的主要思想為:將隱寫的對象由塊長度調(diào)整為量化步長,通過修改量化步長使得量化步長的奇偶性與消息比特相同。
改進(jìn)后的MP3Stego算法的具體嵌入步驟如下:
步驟1:在嵌入操作之前,對原始秘密信息進(jìn)行壓縮去除冗余,并通過密鑰對壓縮后的秘密信息進(jìn)行加密,獲得壓縮加密信息M(結(jié)合密碼學(xué))。
步驟2:令代表M的長度,將和M連接在一起,形成最終待嵌入的秘密信息S,即。
步驟3:利用密鑰產(chǎn)生偽隨機(jī)序列產(chǎn)生器的種子,由偽隨機(jī)序列產(chǎn)生器產(chǎn)生個比特來選擇需要進(jìn)行隱藏的顆粒,其中表示信息S的長度。
步驟4:輸入一幀音頻數(shù)據(jù),其包含兩個顆粒,對每個顆粒進(jìn)行MDCT變換,得到576個MDCT系數(shù)。
步驟5:對MDCT系數(shù)進(jìn)行量化。如果當(dāng)前顆粒為不需要隱藏的顆粒,則使用常規(guī)的內(nèi)循環(huán)結(jié)束條件;否則,在內(nèi)循環(huán)中增加量化步長,直到滿足且part2_3_length≤,其中m代表S中一個待嵌入的比特。
步驟6:不斷重復(fù)操作步驟4和5,直到所有的顆粒均處理完畢。
三. MP3Stego算法分析
隱寫算法的分析本質(zhì)上就是尋找一些統(tǒng)計量或者統(tǒng)計分析特征,使得盡可能的區(qū)分正常樣本和隱寫樣本。在MP3Stego算法分析中,主要關(guān)注四個方面:塊長度part2_3_length的方差統(tǒng)計量、量化步長差分的方差統(tǒng)計量、邊信息中main_data_begin值的均值統(tǒng)計量和大值區(qū)系數(shù)的方差統(tǒng)計量。
3.1 塊長度part2_3_length的方法統(tǒng)計量
MP3Stego算法在隱寫前后,part2_3_length的統(tǒng)計量是有很大差異的,如下圖:
利用n代表統(tǒng)計塊長度的總個數(shù),x代表每個塊長度的值。由此,塊長度方差的計算公式可得如下:
分母處因為要表示無偏估計,所以使用n-1。?
3.2 量化步長差分的方法統(tǒng)計量
量化步長是嵌入操作中被直接修改的一個重要參數(shù),考察量化步長的差分統(tǒng)計量一共有三個步驟:
①利用代表第i個顆粒的量化步長,N代表顆??倲?shù)。由此可計算量化步長的一階差分和二階差分,如下:
②利用代表一階差分序列的均值,代表二階差分序列的均值,可計算兩者對應(yīng)的標(biāo)準(zhǔn)差和,如下:
?③將作為分析檢測算法的特征向量。
3.3 邊信息中main_data_begin值的均值統(tǒng)計量
MP3使用9比特的變量來記錄每幀主數(shù)據(jù)的開始位置,音頻楨長度改變同時將改變main_data_begin的值。由此,利用N代表待測MP3音頻的總幀數(shù),對應(yīng)第i幀的main_data_begin的值,可設(shè)計檢測特征為main_data_begin值的均值函數(shù),如下計算公式:
在給定編碼率的情況下,編碼器分配給每幀的比特數(shù)是恒定的,而MP3Stego算法嵌入將會產(chǎn)生更多的比特數(shù)剩余,進(jìn)而導(dǎo)致下一幀的main_data_begin值比未隱寫的音頻要大,如下圖所示:
左圖為未隱寫,有圖為隱寫之后
2.4 大值區(qū)系數(shù)的方法統(tǒng)計
隱寫后,大值區(qū)系數(shù)的頻次變化更加劇烈。利用代表音頻的總顆粒數(shù),代表對應(yīng)第i個顆粒的大值區(qū)系數(shù)的個數(shù),代表顆粒序列大值區(qū)系數(shù)的均值,結(jié)合隱寫后QMDCT大值區(qū)系數(shù)的稀疏性,可以計算重壓縮前后大值區(qū)系數(shù)方差的差值,如下:
此值也可以作為隱寫分析特征。采用重壓縮矯正的方法也可以進(jìn)行載體估計,如下計算公式:
總結(jié)
MP3Stego算法主要集中于編碼參數(shù)域的隱寫,此教程還對算法進(jìn)行了分析。后續(xù)教程會進(jìn)行實際的實驗操作。
系列文章
隱寫術(shù)基礎(chǔ)_嘮嗑!的博客-CSDN博客前言隱寫術(shù)是一門關(guān)于信息隱藏的技巧與科學(xué),所謂信息隱藏指的是不讓第三者知曉信息的傳遞。隱寫術(shù)的英文名叫做Steganography,起源于德國的一位修道士特里特米烏斯的著作《steganographia》。隱寫技術(shù)提供對秘密信息存在性的保護(hù),可以看成是一種保密通信技術(shù)和安全存儲技術(shù)。數(shù)字隱寫的載體包括音頻、圖像、視頻、文本、網(wǎng)絡(luò)包。一. 隱寫系統(tǒng)模型音頻隱寫對抗模型包括三個實體和兩個系統(tǒng)。三個實體:隱寫者、接收方和隱寫分析者。隱寫者和接收方利用隱寫系統(tǒng)來傳遞信息。隱寫分析者利用隱寫分析系https://blog.csdn.net/forest_LL/article/details/123953611?spm=1001.2014.3001.5501
總結(jié)
以上是生活随笔為你收集整理的音频隐写术:分析剑桥大学提出的MP3Stego算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自动化方法模拟Android手机点击、触
- 下一篇: 六大常见聚类方法