李夢涵,陳可江,張衛(wèi)明,俞能海
(1. 中國科學(xué)技術(shù)大學(xué)網(wǎng)絡(luò)空間安全學(xué)院,安徽 合肥 230001; 2. 中國科學(xué)院電磁空間信息重點實驗室,安徽 合肥 230001)
隱寫術(shù)是隱蔽通信的一種重要形式,它將機密信息隱藏在內(nèi)容可公開的載體(如文本、音頻、圖像、視頻等)中,使非授權(quán)方難以識別該通信形式的存在。近年來,隱寫術(shù)研究從非自適應(yīng)隱寫,如最低有效位(LSB,least significant bit)替換[1]、LSB匹配[2]等發(fā)展到基于最小化失真的自適應(yīng)隱寫,目前的研究致力于在STC編碼[3]的基礎(chǔ)上設(shè)計合理的失真函數(shù),并實現(xiàn)了良好的安全性,典型的算法如HUGO[4]、WOW[5]、HILL[6]、JUNIWARD[7]等。
傳統(tǒng)隱寫術(shù)的安全性表現(xiàn)為隱寫分析實驗驗證得到的經(jīng)驗安全,并不能從理論上驗證其安全性。1998年,Cachin[8]建立了信息論模型研究隱寫術(shù)的安全性,使用相對熵定義無條件安全隱寫。Hopper等[9]首次提出使用計算復(fù)雜度理論來研究隱寫術(shù),并在理論上證明了單向函數(shù)的存在意味著安全隱寫協(xié)議的存在。在此基礎(chǔ)上,研究者對可證明安全隱寫進行了進一步的探究。Dedic等[10]研究了黑盒隱寫術(shù)可以實現(xiàn)的最佳效率,進一步降低了對隱藏信道的要求,并基于拒絕采樣編碼器給出了兩個改進算法。文獻[11]提出了公鑰隱寫術(shù)。文獻[12]基于算術(shù)編碼提出了P-codes,建立了新的高效的公鑰隱寫體系。
然而,以上研究都基于一個共同的前提假設(shè),即隱寫者擁有完備的載體概率分布或可以對載體精確采樣。而主流的隱寫載體是自然采集的多媒體數(shù)據(jù),隱寫者無法獲得載體的精確分布,也無法進行精確采樣,故可證明安全隱寫理論長期被擱置,無法付諸實踐。
近年來,隨著機器學(xué)習(xí)的發(fā)展,多媒體生成技術(shù)逐漸成熟,基于生成對抗網(wǎng)絡(luò)[13](GAN,generative adversarial nets)或變分自編碼器[14](VAE,variational auto-encoder)的生成模型走進人們的日常生活中,典型的應(yīng)用有圖像風(fēng)格變換、圖像生成、語音合成等,促使以機器生成媒體作為載體的生成式隱寫成為新的研究熱點。
語音合成技術(shù)的應(yīng)用越來越廣泛,如有聲小說、語音應(yīng)答服務(wù)等,在這種場景下,檢測到合成語音并不能作為隱寫存在的證據(jù),因此合成語音是合理的隱寫載體。已有的生成式音頻隱寫研究如AAG-Staga[15]在音頻自動生成過程中編碼每個采樣點的條件概率分布,并根據(jù)比特流選擇相應(yīng)的信號輸出,實現(xiàn)秘密信息的嵌入。Shi等[16]將秘密信息映射到噪聲向量中,并使用生成對抗網(wǎng)絡(luò)基于噪聲向量生成載體圖像。基于顯式概率分布的生成模型在生成過程中可以得到每個樣本點的條件概率分布情況,這完全符合可證安全隱寫理論對載體的要求。以生成模型為基礎(chǔ),已有的研究可證明安全隱寫方案可以由理論轉(zhuǎn)為現(xiàn)實。
另外,傳統(tǒng)隱寫術(shù)的密鑰交換等過程仍然依賴于密碼學(xué)的相關(guān)協(xié)議,也就是說,通信雙方在通信之前需要先通過一個不隱蔽的渠道交換共享的密鑰,才可以在隱蔽信道進行隱蔽通信,然而密碼學(xué)協(xié)議的通信過程恰恰已經(jīng)影響了隱寫的隱蔽性。在隱寫分析技術(shù)愈來愈成熟,隱寫者的行為安全顯得尤為重要。為了實現(xiàn)更加完備的隱寫行為安全,本文以可證明安全隱寫為理論基礎(chǔ),以顯式概率音頻生成模型為實現(xiàn)方案,設(shè)計了計算安全的對稱密鑰隱寫方案和公鑰隱寫方法。
Simmons[17]提出的囚犯模型是經(jīng)典的隱寫模型。此模型中,Alice和Bob被囚禁在不同的牢房中,準備秘密地制定逃跑計劃,他們被允許交流信息,但通信過程將受到看守員Wendy的監(jiān)視,如果Wendy發(fā)現(xiàn)他們有傳遞有害信息的行為,就會切斷二人的通信。
以囚犯問題為基礎(chǔ),隱寫通信過程可被形式化地定義,如圖1所示。Alice和Bob共享隱寫密鑰k,兩人的正常通信內(nèi)容為載體C,Alice將秘密消息m利用密鑰k加密,再利用與Bob約定好的隱寫嵌入算法將加密后的信息嵌入載體C中,得到載密文件S。然后經(jīng)過公共信道將S傳輸給Bob,此過程受Wendy監(jiān)視:
圖1 隱寫模型Figure 1 Steganography model
Bob收到S后將通過隱寫提取算法Ext()和密鑰k得到消息m,完成隱蔽通信過程:
生成模型指的是可以生成新數(shù)據(jù)的概率模型,基本思想是將訓(xùn)練集D={x}N中的真實樣本數(shù)據(jù)視為符合某未知分布的樣本,定義其參數(shù)化的分布為Pθ(x),參數(shù)θ為深度神經(jīng)網(wǎng)絡(luò)的參數(shù)。通過深度學(xué)習(xí)訓(xùn)練參數(shù)θ以近似訓(xùn)練數(shù)據(jù)的經(jīng)驗分布PD(x)。然后利用訓(xùn)練完成的模型Pθ(x)來生成新的樣本,生成的樣本和真實的樣本應(yīng)盡可能地相似。
根據(jù)能否得到數(shù)據(jù)的顯式概率分布,生成模型可以分為顯式概率生成模型和隱式概率生成模型。顯式概率生成模型如PixelCNN[18]、MADE[19]、NADE[20]、WaveNet[21]等,都是利用概率的鏈式法則,將生成樣本的概率分布分解為一系列條件概率分布的聯(lián)乘積形式,即N個隨機變量的概率分布為
依據(jù)鏈式法則原理,可參數(shù)化建模所有條件概率分布p(xi|x1,…,xi?1),從而完整建模樣本p(x1,x2,…,xN)的分布情況。這種模型是自回歸的,因為它將數(shù)據(jù)視為序列,并使用參數(shù)化模型pθ(xi|x1,…,xi?1)迭代地依據(jù)歷史序列x1,…,xi?1預(yù)測下一隨機變量xi的分布。顯式概率生成模型如圖2所示。
圖2 顯式概率生成模型Figure 2 Explicit probabilistic generative model
語音合成領(lǐng)域的主流方法是基于統(tǒng)計參數(shù)的語音合成模型。首先利用聲碼器從語音數(shù)據(jù)庫中提取語音波形的特征表示,得到基頻、倒譜等參數(shù),然后將文本特征作為輸入,聲學(xué)參數(shù)作為輸出,利用統(tǒng)計建模的方法訓(xùn)練聲學(xué)模型。生成過程則根據(jù)訓(xùn)練好的聲學(xué)模型,通過特征表示對語音波形進行重構(gòu),將聲學(xué)特征轉(zhuǎn)化為合成語音。
本文采用的WaveNet聲碼器是一個基于PixelCNN架構(gòu)的生成模型。該模型可以根據(jù)梅爾倒譜圖合成逼真的人類聲音。WaveNet在生成過程中對數(shù)據(jù)流12,,xx…的聯(lián)合概率分布建立模型,按照時間序列得到數(shù)據(jù)流的每一個元素的條件概率,每一個樣本受限于所有的已生成的樣本。以8 bit語音合成為例,WaveNet在softmax層輸出256個樣本點對應(yīng)的概率。在正常生成過程中,WaveNet根據(jù)當前樣本點的概率分布進行隨機采樣,得到最終的合成語音,本文將采樣過程記為G,如圖3所示。
圖3 基于WaveNet的語音合成過程Figure 3 Speech synthesis process based on WaveNet
安全有效的隱蔽通信既要考慮通信信道中傳輸信息的內(nèi)容安全性,也要保證通信過程的行為安全性。大多數(shù)隱寫者重點關(guān)注的是隱寫算法的抗檢測性能,而近年來,攻擊者開始關(guān)注通信雙方的異常行為,如文獻[22]從側(cè)信道攻擊的角度考察社交網(wǎng)絡(luò)用戶所分享的圖片,并根據(jù)圖像序列的相關(guān)性來識別隱寫者。
因為傳統(tǒng)隱寫算法是對稱密鑰算法,通信雙方的密鑰交換、身份認證等過程依賴于公鑰密碼或密碼協(xié)議。但是執(zhí)行密碼協(xié)議這一行為本身就很可能暴露隱蔽通信的存在。隱寫分析者可以通過識別異常通信行為定位到隱寫者。為了解決這個問題,實現(xiàn)兼具行為安全和內(nèi)容安全的隱蔽通信系統(tǒng),本文希望建立一個能夠?qū)崿F(xiàn)公鑰隱寫的全流程的隱蔽通信體系。
本文依據(jù)文獻[12]提出的可證明安全隱寫模型P-codes,以顯式概率的音頻生成模型WaveNet為實現(xiàn)方案,提出了計算安全的對稱密鑰隱寫算法,如圖4所示。并在此基礎(chǔ)上,構(gòu)建公鑰隱寫算法,這使得通信的全流程可在隱蔽信道中實現(xiàn)。
圖4 基于音頻生成的可證安全隱寫框架Figure 4 Computationally secure steganography framework based on speech synthesis
本文設(shè)計的隱寫算法修改WaveNet語音生成模型的采樣算法G,在音頻生成過程中,根據(jù)嵌入信息,依照概率分布,選擇最終生成的樣本點。
2.1.1 算法描述
WaveNet生成音頻的過程即為嵌入過程。生成模型的輸入為聲學(xué)特征,在生成每一個樣本點xi時,經(jīng)過WaveNet語音生成模型得到樣本點的概率分布,其形式為聲音信號取?128到127時所對應(yīng)的256個條件概率值,記為ph,h表示當前已生成的樣本片段x1,x2,…,xi?1。正常的生成過程將按照概率隨機選擇樣本點的值。而本文的隱寫嵌入算法G-emb會依據(jù)嵌入信息和概率ph共同決定樣本點的取值。
假設(shè)收發(fā)雙方已共享了一個密鑰k,發(fā)送方首先利用密鑰k和一個安全的對稱密碼算法,如SM4[23]或AES[24],對消息m加密得到的m′=(m1,m2,…,mn)∈Mn,M={0,1}。
基于G的嵌入算法記為G-emb,輸入為密文序列m′;輸出為長度為l的聲音信號值x=(x1,x2,…,xl)∈Xl,其中,X={?128,?127, …,126,127}。G-emb如算法1所示。其中初始h=ε為空集,m'表示二進制形式為m′的非負整數(shù)。
算法1嵌入算法G-emb
輸入m′=(m1,m2,…,mn)∈Mn
輸出x=(x1,x2,…,xl)∈Xl
1) 令a=0,b=22n,h=ε
2)While,do
(b) 確定整數(shù)j使式fj≤(2nm'?a)/(b?a) (c) 令a′=a+(b?a)fj,b′=a+(b?a)fj+1 (d) 令(a,b)=(a′,b′) (e) 使h=h|vj (f) 更新ph 3)輸出x=h G-emb的輸出結(jié)果為聲音信號,再經(jīng)過處理得到wav格式的音頻作為生成的stego。該算法的本質(zhì)是算術(shù)編碼的解碼過程。 收發(fā)雙方共享生成模型,如使用網(wǎng)上開源的同一個語音合成WaveNet模型,或者將訓(xùn)練好的WaveNet模型在秘密通信之前傳輸給接收方。接收方利用語音識別工具,將載密語音識別成文本。收發(fā)雙方如果擁有相同的生成模型,那么接收方可以得到與發(fā)送方一致的采樣點概率分布。提取算法G-ext則相當于算術(shù)編碼的編碼過程,將待生成的音頻信號按概率編碼得到嵌入信息。該算法的輸入為載密音頻x=(x1,x2,…,xl)∈Xl,輸出為提取到的密文信息m′=(m1,m2,…,mn)∈Mn,再利用密鑰k解密得到消息m。G-ext如算法2所示,其中v表示數(shù)字v的二進制向量。 算法2提取過程G-ext 輸入x=(x1,x2,…,xl)∈Xl 輸出m′=(m1,m2,…,mn)∈Mn 1) 令a=0,b=22n,h=ε 2) forifrom 1 toldo (b) 確定整數(shù)j使得vj=xi (c) 令a'=a+(b?a)fj,b'=a+(b?a)fj+1 (d) 令(a,b)=(a',b') (e)h=h|vj (f) 更新ph 3)v=a/2n 4) 輸出m′=v 2.1.2 安全性證明 本文所提算法以文獻[12]中的安全隱寫模型為基礎(chǔ),根據(jù)文獻中的安全性證明可知,只要嵌入過程輸入的消息是密碼學(xué)安全的隨機序列,那么該算法就可以保證G-emb輸出的載密序列x與正常語音合成器G生成的序列計算不可區(qū)分。本文算法中輸入m′是由消息m經(jīng)過安全的密碼算法生成,因而滿足上述條件,主要原理如下。 在嵌入算法G-emb中,vi∈X表示信道X={?128,?127,…,126,127}中的所有可能的取值,其中i=0,1,…,n,vi的概率分布是由生成模型決定的,與嵌入信息序列m′是獨立的,vi按一定標準排序,其順序也與m′獨立。假設(shè)a,b是實數(shù),那么每次迭代過程中,如果m′是隨機的,那么m'在給定歷史條件h=x1||x2||…||xj下在區(qū)間[2?na,2?nb]上的條件概率分布是均勻隨機分布的,可以認為在(0,1)是均勻隨機分布的,與v1,v2,…,vn獨立,則由u確定的vj與v1,v2,…,vn獨立同分布,也就是每一步選擇的vj可以認為是與正常的生成內(nèi)容統(tǒng)計上無法區(qū)分。 在本文算法的實際應(yīng)用中,a和b取整數(shù),迭代完成時,由于取整的影響,在[2?na,2?nb]的條件概率分布并非完全均勻隨機的,其與均勻隨機的誤差最大為4/(b?a),又因為(b?a)>2n,所以誤差小于22?n。那么當n足夠大時,誤差趨于零,這個隱寫方案是安全的。 另外,WaveNet語音生成過程本身就是由隨機數(shù)驅(qū)動的,對正常生成的載體進行消息提取也會得到隨機數(shù),那么嵌入信息被計算安全的密碼算法加密后,攻擊者無法區(qū)分提取出的秘密消息與隨機序列。 綜上,該隱寫算法的安全性由m′的隨機性決定,如果消息m被計算安全的對稱密鑰密碼算法加密為偽隨機信息再作為嵌入信息,該隱寫算法就是安全的。 在上述隱寫算法中,將加密消息m的對稱加密算法換成公鑰加密算法,如SM9[25]或RSA[26],就可以得到對應(yīng)的公鑰隱寫算法。 公鑰隱寫算法可以用于密鑰的隱蔽分發(fā)。如圖5所示,發(fā)送方用接收方的公鑰d加密隨機密鑰k,所得密文c作為算法1的輸入生成載密語音,將載密語音通過公開信道發(fā)送給接收方,接收方利用算法2從載密語音中提取出c,然后利用自己的私鑰解密得到k。若c由安全的密碼算法產(chǎn)生,則對應(yīng)的載密語音與正常的合成語音計算不可區(qū)分,所以這個密鑰分發(fā)過程是隱蔽的。之后,利用共享的k,通信雙方就可以用2.1節(jié)的對稱密鑰隱寫算法進行通信,由此實現(xiàn)全過程的隱蔽通信。 圖5 基于公鑰隱寫算法的密鑰分發(fā)過程Figure 5 Key distribution process based on public key steganography algorithm 本節(jié)對第2節(jié)中所提的隱寫算法進行安全性驗證實驗。 本實驗使用的數(shù)據(jù)集為英文朗讀語音數(shù)據(jù)庫CMU_ARCTIC[27],其中包含4位美式英語說話人以及3位帶有口音的說話人。本實驗用該數(shù)據(jù)集訓(xùn)練WaveNet生成模型。 隱寫分析實驗采用隱寫分析特征與集成分類器結(jié)合的隱寫分析器對這兩種語音進行分類。10次檢測的平均錯誤率作為評價指標,其中錯誤率PE定義為檢測器的虛警率PFA和漏警率PMD的均值。 本文采用的隱寫分析特征CTM[28]是一種基于時域和頻域的聯(lián)合音頻隱寫分析特征,包括音頻二階差分的馬爾可夫矩陣以及梅爾倒譜頻率系數(shù)的均值方差統(tǒng)計量。 為了驗證隱寫分析算法在合成音頻數(shù)據(jù)集上的有效性,本文引入了基于修改的隱寫方法進行安全性比較,包括LSB匹配和導(dǎo)數(shù)濾波殘差(DFR,derivative filter residual)[29]。在LSB匹配的嵌入過程中,如果最低有效位與秘密數(shù)據(jù)位相匹配,則該元素保持不變,否則就進行隨機±1修改。DFR是一種自適應(yīng)音頻隱寫方法,它給不同的元素定義不同的失真,然后采用STC編碼[3],在最小化總體失真的情況下,實現(xiàn)信息嵌入。STC編碼的性能可以逼近率失真的下界,本實驗利用理想的模擬嵌入代替STC編碼進行實驗。 本文挑選了1 000個原始音頻生成兩組載體文件和3組載密文件,其中載體文件不嵌入信息,分別由不同的隨機數(shù)驅(qū)動生成音頻,3組載密文件中分別嵌入5 000 bit、10 000 bit、15 000 bit信息,嵌入信息為AES加密算法對消息加密得到的隨機序列。 隱寫分析實驗分別對第1組載體與3組載密進行分類,平均測試錯誤率約為0.5,如表1所示。由圖6可見,隨著嵌入信息的增加,本文所提隱寫算法的隱寫分析錯誤率并沒有明顯變化,始終維持在0.5左右,而其他隱寫算法的檢測錯誤率顯著下降,當嵌入15 000 bit時,LSBM可被有效檢測出。說明本文提出的生成式隱寫算法可以抵抗隱寫分析結(jié)果,與理論證明吻合。 圖6 隱寫分析測試錯誤率Figure 6 Test error rateofsteganalysis 表1 隱寫分析測試錯誤率Table 1 Test error rate of steganalysis 此外,對由不同隨機數(shù)驅(qū)動生成的兩組載體進行分類,測試錯誤率為0.509 1 (+/? 0.021 3),這說明隱寫分析者得到的特征中,載體?載密與載體?載體并無區(qū)別,可以認為該隱寫方案是安全的。 深度學(xué)習(xí)的發(fā)展為隱寫帶來了新的機遇和挑戰(zhàn)。生成式媒體為可證明安全隱寫理論提供了實際應(yīng)用載體。本文提出了一個計算可證安全的全流程隱蔽通信體系。本文基于音頻合成模型WaveNet提出生成式隱寫算法,在此基礎(chǔ)上實現(xiàn)了對稱密鑰隱寫和公鑰隱寫,并從實驗和理論證明驗證了其安全性。該隱寫算法對抗隱寫分析的實驗結(jié)果顯示,攻擊者無法區(qū)分載體和載密。2.2 公鑰隱寫算法
3 實驗
3.1 實驗設(shè)置
3.2 隱寫算法安全性分析
4 結(jié)束語