GSM手機端到端安全加密通信系統
令分組長(cháng)度為T(mén),那么時(shí)域語(yǔ)音幀置亂的加密強度(密鑰空間)為T(mén)!。由于我們采用的是兩級加密技術(shù),結合前面頻域置亂,整個(gè)加密算法的加密強度(密鑰空間)為M*f(M)*T!。
3.4 算法參數選擇
通過(guò)大量實(shí)驗研究,發(fā)現對測試結果有較大影響的因素有兩個(gè):語(yǔ)音分解幀尺寸和分組長(cháng)度。我們主要選擇語(yǔ)音分解幀長(cháng)為5ms、10ms、20ms、分組長(cháng)度為15幀、20幀、25幀共九種情況進(jìn)行了研究分析。
通過(guò)測試和比較,發(fā)現以20ms作為語(yǔ)音分解幀長(cháng),加密語(yǔ)音可以基本解密恢復,而且所恢復的語(yǔ)音可以很好地滿(mǎn)足人耳的可懂度要求。同時(shí)根據聲碼器的編解碼原理,20ms作為單位幀長(cháng)能保持信號的語(yǔ)音特性。因此本方案將選擇20ms作為語(yǔ)音分解幀長(cháng)。
對于分組長(cháng)度(用n表示),從整個(gè)加密算法的加密強度公式,可以發(fā)現n越大,算法的加密強度就越大,但考慮整個(gè)加解密系統的延時(shí)等因素,n必須取一個(gè)合適的值。通過(guò)大量仿真測試結果發(fā)現,分組長(cháng)度取20或25可以在這對矛盾間取得一個(gè)好的平衡。
總之,本算法結合了語(yǔ)音信號處理和分組密碼加密運算的特點(diǎn),具有對RPE-LTP壓縮編碼很好的恢復性,其加密強度也可滿(mǎn)足需求。
4 同步算法研究
對于一個(gè)通信系統而言,接收端的同步是一個(gè)必須考慮的問(wèn)題;對于語(yǔ)音加解密系統而言,它將會(huì )直接關(guān)系到接收端解密的準確性。
要精確完成同步,考慮在語(yǔ)音幀中插入同步幀,對于同步幀有以下幾點(diǎn)要求:
1)要求同步幀能順利通過(guò)GSM的語(yǔ)音編碼器,并且經(jīng)過(guò)聲碼器后還能順利被檢測出來(lái)。
2)同步幀是插在數據幀中的,并不用于攜帶話(huà)音信息,所以如果同步幀取得較長(cháng),將會(huì )帶來(lái)較大延時(shí),影響通信系統的性能。因此在確保精確同步的情況下,同步幀應取的盡量短。
3)同步幀的波形經(jīng)自相關(guān)運算后的峰值須足夠高,以便和普通語(yǔ)音信號區別出來(lái),否則會(huì )影響同步位置的判決,造成誤判。
鑒于以上三點(diǎn)考慮,選擇正弦波序列作為同步幀。正弦波序列能夠順利通過(guò)GSM系統的聲碼器不發(fā)生大的波形畸變。此外,正弦波序列的自相關(guān)函數峰值等參數符合作為同步幀的要求,能夠在較短的長(cháng)度內完成精確同步。對于同步幀的插入位置,采用在算法中固定下來(lái)的方式,在每個(gè)置亂單元的起始位置插入同步幀,較之隨機插入的方法,簡(jiǎn)單但同樣有效。
5 系統實(shí)現
系統具體實(shí)現分硬件和軟件兩部分,具體架構如圖5.1所示:
圖5.1 系統具體架構
為了實(shí)現全雙工通信,我們設計并制作了一塊拓展電路板,通過(guò)開(kāi)發(fā)板拓展槽插口實(shí)現連接。兩路語(yǔ)音通道均使用McBSP傳輸ADDA數據,開(kāi)發(fā)板上語(yǔ)音芯片使用I2C總線(xiàn)初化,拓展板上的語(yǔ)音芯片采用McBSP時(shí)鐘停止模式下的SPI總線(xiàn)進(jìn)行初始化。
圖5.2拓展板上AIC23B的接口示意圖
圖5.3 拓展音頻模塊實(shí)物圖
此外,為了實(shí)現作品能夠通過(guò)手機的語(yǔ)音接口實(shí)現即插即用,我們對手機配件的耳麥線(xiàn)路進(jìn)行了改造。
整個(gè)語(yǔ)音加解密軟件包括語(yǔ)音分解算法模塊,語(yǔ)音加解密算法模塊,類(lèi)語(yǔ)音合成算法模塊三部分。其中語(yǔ)音分解幀大小為20ms,加解密處理幀數為28,最后實(shí)現抗RPE-LTP壓縮的語(yǔ)音加解密。語(yǔ)音信號同步模塊用于為加密后的語(yǔ)音提供同步。我們選取一幀正弦波序列作為同步頭,每196幀數據插入一幀同步頭序列,在接收端用相同正弦波序列進(jìn)行檢測。
此外,我們通過(guò)減小加解密算法的復雜度并采用DMA技術(shù)以減小通話(huà)時(shí)延?;芈曇种坪妥赃m應同步檢測算法的應用可以提高通話(huà)語(yǔ)音的質(zhì)量。
6 結果與測試
本作品測試時(shí)需兩部手機,測試地點(diǎn)需有中國移動(dòng)或中國聯(lián)通的信號覆蓋。測試工具為Cool Edit軟件以及matlab軟件,前者主要用于錄音及時(shí)域分析,后者則用于頻域分析。
測試點(diǎn)位置參見(jiàn)圖6.1。其中的語(yǔ)音加密模塊包含了語(yǔ)音分解、加密和合成算法。我們對抽樣量化后的語(yǔ)音A、加密后的語(yǔ)音B、經(jīng)RPE-LTP編解碼后的語(yǔ)音C,以及解密后的語(yǔ)音D分別進(jìn)行了測試比較。
評論