跳頻通信加密方法

跳頻通信技術(shù)因?yàn)榫哂休^好的抗干擾和低截獲性能,在軍事通信中占有重要的地位,因此提高系統(tǒng)的保密性有著很重要的意義。為了提高保密性,提出了兩種提高系統(tǒng)保密性的方法,其核心思想是將加密算法應(yīng)用到跳頻系統(tǒng),分別在跳頻通信系統(tǒng)發(fā)送端和接收端進(jìn)行加密和解密。

一、系統(tǒng)模型分析

跳頻通信實(shí)際上是一種擴(kuò)頻通信,通俗地講,就是在不同時(shí)刻利用不同的頻率傳送信息,以達(dá)到抗干擾抗截獲的目的。它的基本結(jié)構(gòu)是在發(fā)送端首先進(jìn)行MFSK(M進(jìn)制頻移鍵控)信息調(diào)制,然后進(jìn)行跳頻調(diào)制,經(jīng)過信道后,接收端按照相同的跳頻頻率表來(lái)進(jìn)行解跳,而后進(jìn)行信息解調(diào),如圖1所示,本文采用4FSK進(jìn)行信息調(diào)制,眺頻調(diào)制主要體現(xiàn)在跳頻碼的選擇上,這里采用RS碼。

跳頻通信加密方法

在域GF上,其中為大于2的正整數(shù),碼長(zhǎng)的本原BCH碼稱為RS碼。在RS碼中,當(dāng)時(shí),碼字不會(huì)重復(fù)出現(xiàn),這種情況下,可以得到有最大跳頻增益的跳頻圖案;當(dāng)時(shí),它不再是非重復(fù)碼,這就會(huì)導(dǎo)致部分頻率重復(fù)出現(xiàn),而部分頻率不出現(xiàn),這樣跳頻增益會(huì)明顯下降,所以RS碼作為跳頻碼的性能最好,圖2為基于(63,2) RS碼的一種跳頻圖案。

跳頻通信加密方法

二、加密算法

1、DES算法

DES是最常用的加密算法之一,自誕生至今一直被廣泛應(yīng)用于各個(gè)行業(yè)領(lǐng)域,由于DES算法保密性強(qiáng),DES得到了廣泛的應(yīng)用。

(1)DES加密過程

DES加密算法是16輪的Feistel模型,輸入64位的明文和64位的密鑰信息(每個(gè)第八位是奇偶校驗(yàn)位,實(shí)際有效密鑰是56位),其加密過程如圖3所示。

跳頻通信加密方法

加密步驟如下:

1)將需要進(jìn)行加密的64位信息數(shù)據(jù)進(jìn)行初始置換;

2)將置換后的數(shù)據(jù)分為各32位的左右兩半部分;

3)進(jìn)行16輪迭代.在每一輪中,右半部分在子密鑰的作用下進(jìn)行變換,得到的32位數(shù)據(jù)與左半部分按位異或,產(chǎn)生的32位數(shù)據(jù)作為下一輪迭代的右半部分,原右半部分直接作為下一輪迭代的左半部分,但第16輪(最后一輪)不進(jìn)行左右互換。

4)對(duì)經(jīng)過16輪迭代后的64位數(shù)據(jù)進(jìn)行逆初始置換,所得結(jié)果即為密文。

(2)DES解密過程

DES算法的解密算法與加密算法相同,只是各子密鑰的順序相反,即為K16,K15,…,K1,解密時(shí)把64位密文當(dāng)作明文輸入,而且第1次解密迭代使用子密鑰K16,第2次解密迭代使用K15,……,第16次解密迭代使用K1,最后的輸出便是64位明文。

2、AES加密算法

(1)AES的加密

AES算法屬于分組密碼算法,AES與DES的結(jié)構(gòu)不同,不是采用Feistel結(jié)構(gòu),而是進(jìn)行了多輪的替換,行移位,列混合和密鑰加操作。AES的明文分組大小為128 bit,密鑰長(zhǎng)度是不惟一的,支持128、192、256比特的三種密鑰長(zhǎng)度。

本文中采用的算法是AES-128,迭代輪數(shù)是10輪,其核心是對(duì)State矩陣(AES的數(shù)據(jù)處理單位是字節(jié),128比特為16個(gè)字節(jié),按順序復(fù)制到4x4矩陣,該矩陣稱為State)進(jìn)行1O次輪操作,每次輪操作(除最后一輪外)都由字節(jié)代換( Sub Bytes)、行移位(ShiftRows)、列混淆(MixColumns)、輪密鑰加( AddRoundKey)四個(gè)運(yùn)算構(gòu)成,最后一輪不包含列混淆操作,如圖4所示。

跳頻通信加密方法

(2)AES的解密

由于AES算法沒有使用Feistel結(jié)構(gòu),因此AES的解密操作與DES算法不同,AES算法的解密需要使用相應(yīng)變換的逆向變換,并且各個(gè)變換的使用順序也不一樣,首先對(duì)密文進(jìn)行輪密鑰加,然后進(jìn)行第1輪的解密,分別為逆行移位,逆字節(jié)代換,輪密鑰加和逆列混合,直到倒數(shù)第2輪的解密,最后1輪操作只有3步:逆行位移,逆字節(jié)代換,輪密鑰加。

三、仿真與分析

1、采用DES對(duì)跳頻系統(tǒng)加密

本系統(tǒng)是基于超短波跳頻系統(tǒng)的仿真,根據(jù)GJB 2928—97規(guī)定,戰(zhàn)術(shù)超短波跳頻電臺(tái)頻率范圍是30—87.975MHz,戰(zhàn)術(shù)超短波跳頻電臺(tái)信道間隔是25kHz,本系統(tǒng)的跳頻頻率是:

跳頻通信加密方法

其中初始頻率Fi=30.OOOMHz,=1,2,…,64。

信息調(diào)制的頻率分別是f1=3kHz,f2=9kHz,f3=15kHz,f4 =21kHz。

如圖l所示,在信息(以下稱為明文)進(jìn)入跳頻系統(tǒng)之前對(duì)其加密成密文,通過跳頻系統(tǒng)傳輸,接收端進(jìn)行解跳、解調(diào)之后進(jìn)行解密,還原出明文。圖5為仿真結(jié)果。

跳頻通信加密方法

可以看出當(dāng)接收端使用與發(fā)送端同樣的密鑰1進(jìn)行解密,得到了正確的原始信息,而使用與發(fā)送端不相同的密鑰2是無(wú)法進(jìn)行解密的,誤碼率達(dá)到了46.88c70,圖6為不同密鑰對(duì)誤碼率的影響,第一個(gè)點(diǎn)是密鑰與發(fā)送端密鑰的第一位不同,第二個(gè)點(diǎn)是密鑰與發(fā)送端密鑰的第二位不同,……,第65個(gè)點(diǎn)是發(fā)送端密鑰,可見當(dāng)?shù)?位,第16位,第24位,第32位,第40位,第48位,第56位,第64位與發(fā)送端密鑰不同時(shí)也能正確接收到信息,這是因?yàn)镈ES密鑰輸入64位,但每個(gè)第8位用作奇偶校驗(yàn),所以密鑰的長(zhǎng)度實(shí)際是56位,其他情況接收端均不能正確還原出原始信息,從圖中可以看出,其誤碼率基本維持在較高的0.4—0.6之間,可見使用DES對(duì)跳頻系統(tǒng)加密可以提高跳頻系統(tǒng)的安全性。

跳頻通信加密方法

2、采用AES對(duì)跳頻系統(tǒng)加密

AES-128生成的跳頻序列可以是跳頻在128個(gè)頻率下跳頻,系統(tǒng)只有64個(gè)頻率,所以在跳頻頻率表中,AES碼中的O與64同時(shí)對(duì)應(yīng)Fi,l與65對(duì)應(yīng)F2,……,63與127對(duì)應(yīng)F64。

采用AES加密的仿真圖如圖7,可以看出只有用與發(fā)送端同樣的密鑰l進(jìn)行解密,才能得到正確的信息,而使用與發(fā)送端不相同的密鑰,即使是只有第一位密鑰不同的密鑰2,依然是無(wú)法進(jìn)行正確解密的,誤碼率達(dá)到了43.75%,接近50%,圖8為不同密鑰對(duì)誤碼率的影響,第一個(gè)點(diǎn)是密鑰與發(fā)送端密鑰的第一位不同,第二個(gè)點(diǎn)是密鑰與發(fā)送端密鑰的第二位不同……,第129個(gè)點(diǎn)是發(fā)送端密鑰,可見密鑰與發(fā)送端密鑰不同時(shí),無(wú)法正確接收到發(fā)送端的信息,其誤碼率也基本維持在較高的0.4—0.6之間,所以使用AES對(duì)跳頻系統(tǒng)加密提高了跳頻系統(tǒng)的安全性。

跳頻通信加密方法

 

跳頻通信加密方法

3、實(shí)時(shí)性安全性分析

用PC機(jī)(CPU:lntel( R) Pentium( R)Dual-Core E5700,內(nèi)存:3GB)測(cè)試兩種算法的實(shí)時(shí)性,運(yùn)行次數(shù)為100次,測(cè)試結(jié)果如表1所示。

跳頻通信加密方法

由表1可見,在軍事通信信息是少,實(shí)時(shí)性要求不高的情況下,兩種加密算法都可以應(yīng)用在這種場(chǎng)合。

對(duì)于DES密碼,R=256≈7×1016,如果使用運(yùn)算能力為每秒30億次的普通計(jì)算機(jī)來(lái)破譯DES密鑰,假設(shè)每次運(yùn)算能完成一次加密的情況,要完成一次DES密鑰的搜索破解過程,需要(256/(30×IOH))/(60×60×24)=278d,但如果用最新最怏的超級(jí)計(jì)算機(jī),則在幾個(gè)小時(shí)就可以破譯。

對(duì)于AES密碼,假如使用IBM的超級(jí)計(jì)算機(jī)藍(lán)色基因的運(yùn)算能力(每秒280.6萬(wàn)億次)來(lái)計(jì)算,假設(shè)每次運(yùn)算能完成一次加密的情況,要完成一次AES-128密鑰的搜索破解過程,需要(2128/(280.6×1012))1( 60×60×24×365)=3.845×1016a的時(shí)間,所以可以預(yù)見在未來(lái)很長(zhǎng)時(shí)間內(nèi),AES的算法依然安全。

通過以上的比較,可以看出,實(shí)時(shí)性和安全性往往是矛盾的,AES的密鑰更安全,但DES的實(shí)時(shí)性更好,在實(shí)際應(yīng)用中,要通過實(shí)際通信指標(biāo)的要求,選擇合理的加密方式。

小知識(shí)之跳頻技術(shù)

跳頻技術(shù) (Frequency-Hopping Spread Spectrum;FHSS)在同步、且同時(shí)的情況下,接收兩端以特定型式的窄頻載波來(lái)傳送訊號(hào),對(duì)于一個(gè)非特定的接受器,F(xiàn)HSS所產(chǎn)生的跳動(dòng)訊號(hào)對(duì)它而言,只算是脈沖噪聲。FHSS所展開的訊號(hào)可依特別設(shè)計(jì)來(lái)規(guī)避噪聲或One-to-Many的非重復(fù)的頻道,并且這些跳頻訊號(hào)必須遵守FCC的要求,使用75個(gè)以上的跳頻訊號(hào)、且跳頻至下一個(gè)頻率的最大時(shí)間間隔 (Dwell Time)為400ms。