席青云



摘 要:對于秘密語音,先進行Logistic混沌映射,再執(zhí)行BCH編碼糾錯,最后執(zhí)行交織量化處理.在語音接收端通過相應的逆變換、BCH解碼、解交織等處理獲得秘密語音信息.然后,展開有關(guān)混沌糾錯交織編碼語音信息隱藏方法的實驗研究,明確此方法加密流程和解密流程的具體操作步驟,對此方法的基本加密性能、抗噪聲攻擊能力、抗偽密鑰破譯能力進行實驗驗證.實驗結(jié)果表明,本文的加密方法具有良好的加密性能、抗噪聲攻擊能力和抗破譯能力.
關(guān)鍵詞:語音信息隱藏;BCH糾錯編碼;Logistic混沌映射;噪聲攻擊
中圖分類號:TN912 ?文獻標識碼:A ?文章編號:1673-260X(2020)06-0068-06
1 基于混沌糾錯交織編碼的語音隱藏方法
1.1 混沌加密解密
1.1.1 混沌概念與特點
混沌理論最初被提出是用于氣象領(lǐng)域.經(jīng)過50多年的發(fā)展,混沌理論在數(shù)學領(lǐng)域、物理學領(lǐng)域、信息科學領(lǐng)域和電子學領(lǐng)域都得到了深入發(fā)展和應用.有學者指出,因為混沌信號可以各態(tài)遍歷性、表現(xiàn)出非周期特征,其頻譜寬帶區(qū)域的連續(xù)性,都使得其特別容易應用于信息隱藏.
最早應用于信息隱藏的混沌方法,是基于Logistic混沌映射的變形方法,這也促成了混沌流密碼技術(shù)的誕生.
將混沌理論應用于語音隱藏,不但有利于保障語音通信過程的抗攻擊性,也極大地增強了秘密語音安全到達接收端的可靠性.混沌映射便于實現(xiàn),還可以為用戶提供多樣化的密鑰選擇,已經(jīng)成為包括語音加密在內(nèi)的各種信息加密技術(shù)的最佳備選方案.
混沌理論之所以適合于語音加密領(lǐng)域,這是原自混沌現(xiàn)象的共性特征.混沌現(xiàn)象不僅對于初值敏感,對于系統(tǒng)內(nèi)參數(shù)的微小變化也具有敏感性.因此,只要攻擊者提供的密鑰等信息和真實密鑰等信息有微小的不同,也會遠遠地偏離正確語音信息的破譯,從而達到良好的保密效果.
同其他理論相比,混沌理論具有如下特點:
(1)混沌系統(tǒng)敏感于初始條件,微小的初值差異會導致混沌系統(tǒng)長期行為的巨大不一致性.
(2)混沌系統(tǒng)表現(xiàn)出非線性系統(tǒng)的確定性,長期行為的類隨機以及無法準確預測性,同時其寬帶頻譜區(qū)域連續(xù).
(3)混沌系統(tǒng)無論自相關(guān)性還是互相關(guān)性都非常優(yōu)秀,通過微調(diào)初值或增加混沌迭代次數(shù),就可以實現(xiàn)周期碼字的不同長度變化.
(4)混沌系統(tǒng)非常近似于隨機過程,即便獲取了足夠長的一段混沌序列,也無法實現(xiàn)對整個序列的判斷,其保密性能出色.
1.1.2 混沌映射選取
在本文的語音信息隱藏中,我們也選用了Logistic混沌映射,其數(shù)學形式如公式(1)所示.
xn+1=1-?滋xn2. ?(1)
這里,x∈[-1,1]、?滋∈[0,2],只要?滋出現(xiàn)在1.40115到2的范圍內(nèi),整個系統(tǒng)就會表現(xiàn)出混沌狀態(tài).Logistic混沌系統(tǒng)的特征是,其所有序列都表現(xiàn)出零均值、基于?啄相似性的自相關(guān)和互相關(guān)特性.Logistic混沌系統(tǒng)產(chǎn)生的混沌序列{xk}既不收斂也不符合周期變化規(guī)律,并且對于初始狀態(tài)非常敏感.經(jīng)過實驗發(fā)現(xiàn),即便給定差異僅為0.001的兩個初始值,Logistic混沌系統(tǒng)僅需要幾次迭代就會馬上分開,最終呈現(xiàn)出毫不相關(guān)的情形.
為了適合數(shù)字語音信號的處理,可以將Logistic混沌序列轉(zhuǎn)換為二值序列,這樣的方法很多,常見的有:閾值轉(zhuǎn)換法和量化轉(zhuǎn)換法.在本文中,選擇了量化轉(zhuǎn)換法來實現(xiàn)混沌序列的二值化.
采用L位二進制數(shù)來實現(xiàn)0到1區(qū)間上的數(shù),先將混沌序列中的每一個數(shù)據(jù)取絕對值,這個序列表示為{zk,k=0,1,2,…,-1 z=av2-(v+1),a=0 or 1. ? (2) 用量化變換法處理時,選取前L位來表示z,其余各位均放棄,即有: z=av2-(v+1) =-2-Lav2-(L-1)-v =2-LZ. ? (3) 到這里,混沌序列zk中的每一個值都可以實現(xiàn)L位二進制數(shù)的表示. 1.1.3 混沌加密解密處理 對語音信息進行混沌加密處理,首先要根據(jù)密鑰生成混沌序列,進而和要被加密的語音信息進行邏輯運算,從而生成密文信息,整個執(zhí)行的邏輯框架圖如圖1所示. 如果用mi表示明文語音信息,用ci表示密文語音信息,用ki表示混沌序列,則語音的加密過程可以用如下的數(shù)學公式來描述: ci=mi?茌ki. ?(4) 相應的,為了求解明文語音信息,就要執(zhí)行基于混沌序列的解密過程,如數(shù)學公式(5)所示. mi=ci?茌ki. ?(5) 1.2 糾錯編碼解碼 在語音信息隱藏的整個流程中,語音信息經(jīng)過信道進行傳輸是其中一個重要的環(huán)節(jié).為了保證語音數(shù)據(jù)傳輸?shù)目煽啃裕话阈枰捎眉m錯編碼技術(shù). 語音信息在信道傳輸中,會受到各種可能噪聲的干擾,從而使得接收端獲得的語音信息中含有一些隨機錯誤.這時,可以在傳輸信息碼中增加一些約束碼,從而增強信息碼的抗干擾能力. 在接收端,利用這些約束碼可以提高對于語音信息的糾錯能力,但是約束碼占據(jù)了信息碼單元,會導致傳輸數(shù)據(jù)信息量的下降.所以,約束碼的選擇必須要平衡可靠性和信息量兩個指標. 1.2.1 糾錯編碼 在本文中,為了保證語音信息在通信信道傳輸中的可靠性,采取了BCH編碼作為糾錯碼. 這里的BCH編碼采用的是(15,7)BCH碼制式.首先,將語音信息進行信息碼分組處理,每7個bit作為一個分組,每個分組都執(zhí)行(15,7)BCH編碼,即可以糾正不超過2位的錯誤,執(zhí)行糾錯處理后生成的多項式g(D)如公式(6)所示. g(D)=LCM[m1(D)m3(D)] =D8+D7+D6+D4+1. ?(6) 這里,m1(D)、m3(D)表示的都是最小多項式,其計算模型如下所示. m1(D)=D4+D+1, ? (7) m3(D)=D4+D3+D2+D+1. ?(8) 根據(jù)上述三個公式,可以進一步構(gòu)成生成矩陣G,如公式(9)所示. G=, ?(9) 將要處理的語音信息和生成矩陣進行相乘運算,就獲得了BCH編碼. 1.2.2 糾錯解碼 在語音信道的接收端,每15個bit進行一個分組,對每個分組分別執(zhí)行BCH解碼.BCH解碼過程要采用一個監(jiān)督矩陣H,它可以根據(jù)生成矩陣G進行計算,二者之間的關(guān)系如公式(10)所示. G=[I,Q],H=[QT,I]. ? (10) 下一步工作就是根據(jù)監(jiān)督矩陣H計算校正因子,如下述公式: S=RHT. ? (11) 這里,R就表示接收端接收到的語音信息,S表示一個1×8的矩陣,校正因子和誤碼出現(xiàn)位置的對應關(guān)系如表1所示. 在本文的語音信道接收端,采取BCH糾錯處理時,如果僅發(fā)生了1位錯誤,則可以根據(jù)表1中的數(shù)據(jù)進行查表獲得,如果發(fā)生了2位錯誤,需要進行如下的運算: S=Si?茌Sj. ? (12) 這里,利用Si和Sj表示表1中的兩個錯誤信息,通過執(zhí)行這個取模運算,就可以確定2位錯誤發(fā)生的位置. 1.3 交織量化處理 1.3.1 交織處理 語音信息在實際傳輸?shù)倪^程中,有時會受到非常嚴重的突發(fā)干擾,這些連續(xù)出現(xiàn)的突發(fā)錯誤,僅僅憑借BCH編碼的1位或者2位糾錯能力難以實現(xiàn)糾正處理.所謂交織處理,就是在信號進入信道傳輸之前,按照一定的規(guī)律對語音信息進行位置上的調(diào)換,對應接收端再按照這個規(guī)律反向調(diào)換回來.交織處理和解交織處理如圖2所示. 在語音信息的發(fā)送端,將N個bit的信息進行交織分組.首先把M組N個bit語音信息單元存入到一個M行N列的交織器中,然后按照行排列的順序存入寄存器,即A11、A12、A13、……、A1N、A21、A22、A23、……、A2N、……、AM1、AM2、……、AMN.存儲完畢后,發(fā)送時按照列排列的順序取出,即A11、A21、A31、……、AM1、A12、A22、A32、……、AM2、……、A1N、A2N、……、AMN. 在語音信息的接收端,解交織的過程恰好相反,先按照列排列的順序存入寄存器,即A11、A21、A31、……、AM1、A12、A22、A32、……、AM2、……、A1N、A2N、……、AMN,再按照行排列的順序取出,即A11、A12、A13、……、A1N、A21、A22、A23、……、A2N、……、AM1、AM2、……、AMN. 通過交織處理,連續(xù)錯誤信息被自然分開,從而使得錯誤信息在一個組內(nèi)的位數(shù)降低,就可以采用糾錯編碼技術(shù)進行糾錯了. 1.3.2 量化處理 在本文的語音隱藏過程中,秘密語音信息的嵌入,實際上是通過對使用變換的變換域系數(shù)進行量化來實現(xiàn)的.為此,假定原來變換域的系數(shù)可以用g來表示,則執(zhí)行變換后的系數(shù)變?yōu)間'.量化步長采取?駐來表示,這個步長越大,則抗攻擊能力好,但是量化對于原始語音信息的影響比較大;這個步長越小,量化精度會提高,但是抗攻擊能力會削弱.因此,選擇合理的量化步長是本文在量化處理工作中的難點.為此,本文采取如下的量化過程: (1)對變換域的系數(shù)g沿軸線進行分割,效果如圖3所示.經(jīng)過這一步處理,g軸被劃分成A、B區(qū)域間隔的形狀. (2)當執(zhí)行計算操作時,坐標軸上的坐標就代表真實的數(shù)據(jù);當執(zhí)行語音信息隱藏時,A、B區(qū)域內(nèi)的坐標就代表隱藏處理后的二進制序列. (3)量化操作的具體數(shù)學公式如下所示: n=gmod?駐,r=r-n?駐. ?(13) 這里,n和r分別代表模和余數(shù). (4)二進制秘密語音信息執(zhí)行嵌入處理的時候,其bit信息w要和g共同作為參考,使得量化結(jié)果盡可能接近A、B兩個區(qū)域的中心點數(shù)值,這又分為以下4種情況. (a)當g≥0并且w=1的時候,按照下面的公式處理: 2 仿真實驗與測試 2.1 實驗流程設(shè)計 前面提出了一種基于混沌糾錯交織編碼的語音隱藏方法.為了驗證這種方法的性能,下面展開測試性實驗.在實驗中,載體語音是一段單聲道的流行音樂,其采樣頻率為44kHz,并經(jīng)過16bit量化;秘密語音也是單聲道語音信息,采樣頻率為1kHz,也經(jīng)過16bit量化.下面,按照基于混沌糾錯交織編碼的語音隱藏方法,分別給出語音的嵌入流程和提取流程. 2.1.1 語音嵌入流程設(shè)計 語音嵌入流程共分為9個步驟,具體操作如下: 第一步,執(zhí)行離散小波變換處理.采用db1作為小波變換的基函數(shù),對載體語音信息執(zhí)行3個層次的小波分解處理,這樣可以得到表征細節(jié)的小波信息CD1、CD2、CD3以及原始語音信息的近似表征分量信息CA3,然后把這些信息放在集合E中進行排隊處理,其數(shù)學形式如公式(18)所示. E=CA3?茌CD3?茌CD2?茌CD1. ?(18) 第二步,執(zhí)行離散余弦變換處理.這里,對于第3層的小波變換系數(shù)中的低頻信息CA3執(zhí)行此操作,其數(shù)學形式如公式(219)所示. CA3dct=DCT(CA3). ?(19) 第三步,執(zhí)行混沌加密處理.這一操作是針對秘密語音展開的,這里采用的混沌映射是Logistic混沌映射,混沌初始狀態(tài)給定x0=0.7和?滋=2. 第四步,執(zhí)行糾錯編碼處理.這里采用BCH碼,并和其他兩種編碼進行比較,處理對象是經(jīng)過混沌映射變換的秘密語音信息. 第五步,執(zhí)行交織處理.這里交織的深度為3,處理對象是經(jīng)過糾錯編碼處理的秘密語音信息. 第六步,執(zhí)行量化嵌入處理.這里采用的是雙極性嵌入,量化步長選擇?駐=0.0005,量化后的秘密語音信息變換為CA3'dct. 第七步,執(zhí)行離散余弦變換的反變換處理.這一步處理的對象,主要是針對量化后秘密語音信息CA3'dct,其數(shù)學描述如公式(20)所示. CA3'=IDCT(CA3dct). ?(20) 第八步,執(zhí)行小波重構(gòu)處理.這一步的操作相當于用CA3'代替CA3.執(zhí)行重構(gòu)后的小波全新表達如公式(21)所示. E=CA3'?茌CD3?茌CD2?茌CD1. ?(21) 第九步,執(zhí)行離散小波反變換處理.通過這一步處理,可以獲得含有秘密語音信息的公開語音信息,其數(shù)學形式如公式(22)所示. S'=IDWT(E). ? (22) 2.1.2 語音提取流程設(shè)計 語音嵌入流程共分為6個步驟,具體操作如下: 第一步,執(zhí)行離散小波變換處理.仍然選擇db1作為小波變換的基函數(shù),這一波的操作對象是含有秘密語音信息并通過通信信道傳輸過來的公開語音信息S'. 第二步,執(zhí)行離散余弦變換處理.這里針對CA3執(zhí)行離散余弦變換處理,相應的數(shù)學描述如公式(23)所示. CA3dct=DCT(CA3). ?(23) 第三步,執(zhí)行量化提取的操作.這里要根據(jù)量化操作時的基本方法,位于A區(qū)域的,表明其隱藏信息為1;位于B區(qū)域的,表明其隱藏信息為0. 第四步,執(zhí)行解交織處理.根據(jù)解交織的過程執(zhí)行相應處理,最終用于恢復出執(zhí)行交織前的信息. 第五步,執(zhí)行糾錯編碼的解碼處理.此步驟用于檢測出現(xiàn)誤碼的位置,并對誤碼進行糾錯處理. 第六步,執(zhí)行混沌解密處理.通過將混沌映射和第五步得到的數(shù)據(jù)進行異或處理,從而得到秘密語音信息. 2.2 實驗結(jié)果與分析 2.2.1 基本測試實驗 基本測試實驗的結(jié)果如圖4、圖5、圖6、圖7所示.從圖4和圖5的比對結(jié)果來看,嵌入秘密語音的公開語音和載體語音波形幾乎沒有差別.從圖6和圖7的比對結(jié)果來看,秘密語音能比較準確地提取. 2.2.2 魯棒性測試實驗 為了驗證本文設(shè)計的加密方法對于攻擊的抵御能力,以普遍存在的噪聲影響測試其魯棒性.分別用s和s'表達沒有噪聲干擾的公開語音信息和經(jīng)過噪聲干擾的公開語音信息,同時用p表達噪聲強度,用z表示噪聲信息,則經(jīng)過噪聲干擾的公開語音信息如公式(24)所示. s'=s+p×z. ? (24) 在測試實驗中,給定噪聲強度為0.01,噪聲為隨機噪聲,其均值為0. 如圖8所示,是沒有經(jīng)過糾錯編碼提取的秘密語音信息;如圖9所示,是經(jīng)過BCH糾錯編碼和交織處理提取的秘密語音信息. 從兩組圖像的對比結(jié)果可以看出,沒有經(jīng)過糾錯編碼提取的秘密語音和真實秘密語音相比,波形上出現(xiàn)很多毛刺.而經(jīng)過BCH糾錯編碼提取的秘密語音,這種錯誤則很少.進一步計算兩種情況的誤碼率,不經(jīng)糾錯編碼直接提取秘密語音的誤碼率為0.091%,經(jīng)糾錯編碼提取秘密語音的誤碼率為0.008%.實際上,我們還比對了其他編碼技術(shù)的糾錯能力,對于本文的實驗語音數(shù)據(jù),漢明碼糾錯的誤碼率為0.021%,格雷碼的誤碼率為0.017%.從這幾種方法之間的比對可以看出,本文采用的BCH糾錯編碼性能最佳. 2.2.3 安全性測試實驗 隱藏語音對于秘鑰的敏感性,能在很大程度上反映出語音加密方法的安全性能.在本文的隱藏方法中,采用了初始狀態(tài)為x0=0.7和?滋=2Logistic混沌映射.只有在解密端采用和加密端完全相同的密鑰,才能獲得準確的秘密語音信息. 為了測試本文方法的安全性,測試密鑰信息發(fā)生微小改變是對解密造成的影響.如圖10所示,是密鑰信息完全正確時的解密結(jié)果;如圖11所示,是密鑰信息發(fā)生微小錯誤(即合真實密鑰相差0.001)時的解密結(jié)果. 從圖10和圖11的比較結(jié)果可以看出,雖然密鑰僅僅存在0.001的差異,仍然無法在接收端獲得準確的秘密語音信息,這充分驗證了本文方法的保密性能,即便密鑰信息有微小錯誤也不能獲得正確的解密結(jié)果.這表明,本文構(gòu)建的基于混沌糾錯交織的語音隱藏技術(shù)具有極高的安全性. 以上對基于混沌糾錯交織編碼的語音隱藏方法進行了性能測試.首先,設(shè)計了詳細的語音信息嵌入和語音提取流程.之后,分別針對具體的秘密語音和載體語音,執(zhí)行基本的性能測試實驗、魯棒性測試實驗和安全性測試實驗.實驗結(jié)果證實了本文方法有效. 3 結(jié)論 語音信息隱藏技術(shù),是語音通信領(lǐng)域的重要研究課題.對現(xiàn)有語音隱藏方法進行改進,進一步改善語音信息隱藏的效果,增強語音信息文件反破解和防攻擊的能力,對于語音信息隱藏技術(shù)在網(wǎng)絡信息通信、網(wǎng)絡安全保護、國防軍事信息安全等領(lǐng)域都具有重要的理論意義和實用價值. 本文以混沌糾錯交織編碼語音信息隱藏技術(shù)為核心研究內(nèi)容,取得的主要研究成果如下: (1)分析了語音信息的基本參數(shù)、數(shù)字化處理、存取方式和常見的時域、頻域分析方法;信息隱藏技術(shù)的基本屬性、時域分析方法和頻域分析方法,尤其重點研究了最小有效位法和回聲法;深入分析了信息隱藏效果的定性評價方法和定量評價方法. (2)提出一種基于混沌糾錯交織編碼的語音信息隱藏方法.此方法分別對載體語音和秘密語音進行變換加密處理,對于載體語音,分別執(zhí)行離散小波變換和離散余弦變換;對于秘密語音,分別執(zhí)行Logistic混沌映射、BCH編碼糾錯、交織和量化處理. (3)對基于混沌糾錯交織編碼的語音信息隱藏方法進行實驗驗證.實驗結(jié)果表明此方法加密和解密流程可行,具有高抗噪能力的魯棒性和安全性,當密鑰僅僅有0.001的變化時也無法破譯加密的語音信息. 參考文獻: 〔1〕張敏瑞,易克初.倒譜域音頻與圖像水印算法[J].西安電子科技大學學報:自然科學版,2010,30(06):730-733. 〔2〕趙艷明,黃永峰.基于VoIP隱蔽通信的實現(xiàn)方法[J].數(shù)據(jù)通信,2009,30(06):16-19. 〔3〕賈艷陽,楊震.語音信息隱藏技術(shù)及應用[J].南京郵電學院學報,2004,6(02):53-56. 〔4〕胡金艷,張?zhí)^,陸從德,等.一種基于神經(jīng)網(wǎng)絡的小波域音頻水印算法[J].西安交通大學學報,2013,37(04):355-356. 〔5〕同鳴,郝重陽,劉曉軍,等.一種基于固定附加相位修正的音頻信息隱藏方法[J].計算機工程,2012,32(01):213-214. 〔6〕殷雄,張曉明.回聲隱藏技術(shù)的應用研究[J].北京石油化工學院學報,2005,13(04):61-64. 〔7〕王秋生,孫圣和.一種在數(shù)字音頻信號中嵌入水印的新算法[J].聲學學報,2011,26(05):37-42. 〔8〕陳琦,王炳錫.一種用于版權(quán)保護的音頻數(shù)字算法[J].電聲技術(shù),2002,36(01):48-50. 〔9〕孫銳,孫洪,姚天任.基于量化的小波域數(shù)字音頻水印算法[J].華中科技大學學報(自然科學報),2012,30(05):48-49. 〔10〕尹忠,段柳云,王瑩,宗節(jié)寶,成鴻飛.語音通信中傳輸隱藏數(shù)據(jù)的技術(shù)研究與系統(tǒng)設(shè)計[J].電子設(shè)計工程,2010,18(07):4-7.