GSM手機(jī)端到端安全加密通信系統(tǒng)(08-100)
3.2 頻域置亂
本文引用地址:http://m.butianyuan.cn/article/91758.htm在時(shí)域加密置亂之前加上一步頻域置亂,可以提高整個(gè)加密算法的強(qiáng)度。本設(shè)計(jì)具體的做法是:首先對(duì)一定長(zhǎng)度語(yǔ)音數(shù)據(jù)作N點(diǎn)FFT(N可以取2的冪次以提高運(yùn)算速度),得到一個(gè)頻譜序列,取在語(yǔ)音頻率范圍(300~3400Hz)內(nèi)的M點(diǎn),組成M行×1列的矩陣x,然后對(duì)這個(gè)序列進(jìn)行置亂,這相當(dāng)于乘上一個(gè)M行×M列的置亂矩陣P,那么置亂后的序列為Px,最后對(duì)此序列求IFFT,即從頻域返回到時(shí)域。
令M為明文信息,k1、r為算法密鑰,由k1、r產(chǎn)生的加密矩陣為Pk1、r,Qk1、r為解密矩陣(即Pk1、r-1),C為密文,則有:
置亂矩陣P的選取有以下幾點(diǎn)限制:1)保證置亂后的序列再求IFFT得到的是實(shí)序列;2)保證只對(duì)300~3400 Hz范圍內(nèi)的點(diǎn)進(jìn)行置亂;3)保證最后得到的語(yǔ)音的剩余可懂度很小。
滿足上述限制條件的矩陣有很多,其中有一種比較簡(jiǎn)單的形式是這樣的[4]:
M=N*(3400-300) / fs =3100N / fs(fs是采樣頻率),表示頻率在300~3400Hz內(nèi)的點(diǎn)數(shù),稱(chēng)為有效FFT點(diǎn)數(shù)。k1和r都是密鑰,k1可以取與M互質(zhì)并且小于M的自然數(shù),r可以取小于M的自然數(shù)。
這樣頻域置亂的加密強(qiáng)度(本文中指密鑰空間)就是M*f(M)(f(M)表示滿足條件的k1的個(gè)數(shù))。由此可見(jiàn),采樣頻率一定,N的大小會(huì)影響該算法的加密強(qiáng)度,所以N的選取應(yīng)該同時(shí)考慮運(yùn)算速度和加密強(qiáng)度兩方面的因素。
3.3 語(yǔ)音幀置亂
令M為明文信息,k2為算法密鑰,由k2產(chǎn)生的加密矩陣為Pk2’, Qk2’為解密矩陣(即Pk2’-1),C為密文,則有:
令分組長(zhǎng)度為T(mén),那么時(shí)域語(yǔ)音幀置亂的加密強(qiáng)度(密鑰空間)為T(mén)!。由于我們采用的是兩級(jí)加密技術(shù),結(jié)合前面頻域置亂,整個(gè)加密算法的加密強(qiáng)度(密鑰空間)為M*f(M)*T!。
3.4 算法參數(shù)選擇
通過(guò)大量實(shí)驗(yàn)研究,發(fā)現(xiàn)對(duì)測(cè)試結(jié)果有較大影響的因素有兩個(gè):語(yǔ)音分解幀尺寸和分組長(zhǎng)度。我們主要選擇語(yǔ)音分解幀長(zhǎng)為5ms、10ms、20ms、分組長(zhǎng)度為15幀、20幀、25幀共九種情況進(jìn)行了研究分析。
通過(guò)測(cè)試和比較,發(fā)現(xiàn)以20ms作為語(yǔ)音分解幀長(zhǎng),加密語(yǔ)音可以基本解密恢復(fù),而且所恢復(fù)的語(yǔ)音可以很好地滿足人耳的可懂度要求。同時(shí)根據(jù)聲碼器的編解碼原理,20ms作為單位幀長(zhǎng)能保持信號(hào)的語(yǔ)音特性。因此本方案將選擇20ms作為語(yǔ)音分解幀長(zhǎng)。
對(duì)于分組長(zhǎng)度(用n表示),從整個(gè)加密算法的加密強(qiáng)度公式,可以發(fā)現(xiàn)n越大,算法的加密強(qiáng)度就越大,但考慮整個(gè)加解密系統(tǒng)的延時(shí)等因素,n必須取一個(gè)合適的值。通過(guò)大量仿真測(cè)試結(jié)果發(fā)現(xiàn),分組長(zhǎng)度取20或25可以在這對(duì)矛盾間取得一個(gè)好的平衡。
總之,本算法結(jié)合了語(yǔ)音信號(hào)處理和分組密碼加密運(yùn)算的特點(diǎn),具有對(duì)RPE-LTP壓縮編碼很好的恢復(fù)性,其加密強(qiáng)度也可滿足需求。
評(píng)論