信息化彈藥引信裝定系統(tǒng)中加密算法的應(yīng)用

針對(duì)信息化彈藥引信裝定系統(tǒng)中數(shù)據(jù)的安全件問(wèn)題,通過(guò)對(duì)DES加密算法和SDES加密算法的分析,我們提出了采用SDES加密算法實(shí)現(xiàn)引信多數(shù)據(jù)裝定信息加密的方法,并設(shè)計(jì)出了引信多數(shù)據(jù)裝定芯片解密電路。

一、DES加密算法與SDES加密算法分析

要實(shí)現(xiàn)對(duì)數(shù)據(jù)的加密,常用的加密算法是數(shù)據(jù)加密標(biāo)準(zhǔn)( Data Encryption Standard) DES算法和簡(jiǎn)化數(shù)據(jù)加密標(biāo)準(zhǔn)(Sunplilied Data EncrypiionStanclard) SDES算法。

DES加密算法的入口參數(shù)有兩個(gè)64 bit明文和56 bit密鑰,其加密原理如圖1所示,64 bit明文通過(guò)初始置換邏輯后進(jìn)行16輪的加密,每次的加密都利用原始密切產(chǎn)牛各不相同的子密鑰,其加密邏輯中主要進(jìn)行了擴(kuò)展置位、異或、迭代選擇等操作,這些操作既可以使用軟件實(shí)現(xiàn),也可以用邏輯電路實(shí)現(xiàn)。

信息化彈藥引信裝定系統(tǒng)中加密算法的應(yīng)用

SDES算法是DES算法的一個(gè)簡(jiǎn)化版本,兩者的加密解密過(guò)程基本相同,只是SDES參數(shù)較小,圖2所示為一個(gè)密文為8 bit、密鑰為16 bit、循環(huán)次數(shù)為2次的SDES加密示意圖。

1

從上面的介紹中可以發(fā)現(xiàn),DES算法比SDES算法更為安全,但DES算法需要消耗的資源更多,對(duì)系統(tǒng)的要求更高。考慮到以下因素,本文采用SDES算法作為引信裝定技術(shù)的加密算法。

(l)引信裝定芯片成本較低、硬件規(guī)模?。?/p>

(2)引信裝定芯片采用無(wú)源裝定技術(shù),能量供應(yīng)有限;

(3)引信裝定信息傳輸信道相對(duì)比較封閉,本身的保密性較好,密文被竊聽(tīng)的可能較小。

二、引信裝定芯片的加密解密方案

圖3為采用SDES的引信加密系統(tǒng)設(shè)計(jì)辦案。從圖中可以看出裝定器內(nèi)部的加密算法采用軟件實(shí)現(xiàn),而引信裝定芯片用硬件電路實(shí)現(xiàn)解密算法。當(dāng)開(kāi)始裝定時(shí),裝定器先將16 bit的明文通過(guò)SDES算法進(jìn)行加密得到16 bit密文(利用裝定器上已有的微處理器通過(guò)軟件實(shí)現(xiàn)),然后將16 bit密文通過(guò)信道傳遞給引信,當(dāng)引信接收完畢,將此密文通過(guò)解密邏輯解密16 bit明文。在本設(shè)計(jì)中,將16 bit的明文按照高低位分為兩個(gè)8 bit的明文,然后通過(guò)SDES算法對(duì)分組的兩組8 bit 明文文進(jìn)行加密,加密后得到兩組8 bit的密文,再按照高低位分組的逆變化組合成一個(gè)16 bit的密文,解密過(guò)程如同加密過(guò)程,將16 bit的密義也按照高低位分為兩個(gè)8 bit的密文,然后通過(guò)SDES算法對(duì)分組的兩組8 bit密文進(jìn)行解密,解密后得到兩組8 bit的明文,然后再按照高低位分組的逆變換組合得到16 bit的明文。

1

從圖3也可以看出加密和解密的核心模塊是個(gè)可復(fù)用的SDES解密模塊,該模塊可以用l6 bit密鑰對(duì)8 bit數(shù)據(jù)進(jìn)行解密或者加密。

三、引信裝定芯片的加解密模塊設(shè)計(jì)

SDES的加密模塊和解密模塊本質(zhì)相同,只是加密和解密所用密鑰順序相反。本文以解密模塊為例進(jìn)行介紹。

圖4是SDES解密模塊邏輯框圖,SDES解密邏輯輸入是8 bit密文和16 bit密鑰。SDES解密模塊先將16 bit的密文分為兩個(gè)8 bit的密文分別進(jìn)行解密操作。將16 bit初始密鑰進(jìn)行置換選擇生成兩個(gè)8 bit的子密鑰Kl和K2,然后利用這兩個(gè)子密鑰對(duì)密文進(jìn)行兩次解密。解密完成后將兩個(gè)8bit明文重新組合成16 bit的明文。

1

解密時(shí),將8 bit密文經(jīng)過(guò)初始置換、兩輪解密和初始逆置換后得到8 bit明文。與解密模塊相比加密模塊只是第一輪加密時(shí)采用K2子密鑰,第二輪加密時(shí)采用k1子密鑰。

四、功能驗(yàn)證及性能仿真

本文用Verilog語(yǔ)言設(shè)計(jì)出8bit明文輸入、16bit密鑰輸入的SDES解密電路,并在工作站上進(jìn)行仿真,圖5是一個(gè)SDES加密算法的部分仿真結(jié)果(由于進(jìn)行了1OO%功能測(cè)試,波形文件較大,只抓取部分圖形說(shuō)明,詳細(xì)仿真結(jié)果請(qǐng)參見(jiàn)相關(guān)測(cè)試文件)。圖5中Plaintext為引信裝器輸入的8 bit明文,Key表示裝定器和引信芯片共有的16 bit初始密鑰,Ciphertext表示對(duì)Plaintext用Key作為密鑰進(jìn)行加密得到的8 bit密文,此結(jié)果作為引信裝定芯片的輸入,DeCiphertext為引信裝定芯片用密鑰Key對(duì)8 bit密文進(jìn)行解密得到的8 bit復(fù)原明文。

1

從圖中可以看出,在當(dāng)明文Text發(fā)生變化后,相應(yīng)的最終明文也發(fā)生變化,且變化結(jié)果相同。表明SDES解密電路設(shè)計(jì)正確,可以正確實(shí)現(xiàn)最終的解密過(guò)程。在驗(yàn)證設(shè)計(jì)結(jié)果的同時(shí)對(duì)該加密算法的雪崩效應(yīng)進(jìn)行了分析,以遞增的8 bit GRAY碼作為測(cè)試激勵(lì),對(duì)不同密鑰時(shí)雪崩效應(yīng)分別測(cè)試得到結(jié)果如表1所示。

1

從表1中可以看出,對(duì)于本文設(shè)計(jì)的SDES加密模塊,輸入明文有1 bit的變化時(shí),輸出密文平均會(huì)有3.33657bit變化量。

從上述測(cè)試結(jié)果可以看出,本文設(shè)計(jì)的引信裝定芯片SDES加密算法可以實(shí)現(xiàn)引信裝定信息的加密和解密。

小知識(shí)之GRAY碼

簡(jiǎn)稱(chēng)格雷碼,因1953年公開(kāi)的弗蘭克·格雷(Frank Gray,18870913-19690523)專(zhuān)利“Pulse Code Communication”而得名,當(dāng)初是為了通信,現(xiàn)在則常用于模擬-數(shù)字轉(zhuǎn)換和位置-數(shù)字轉(zhuǎn)換中。