IDEA加密算法在智能傳感器中的應用
隨著現(xiàn)代社會信息化程度的不斷提高,信息的安全保障問題日益引起人們的關注。將信息加密后再進行存儲、傳輸?shù)忍幚?,可以有效地防止信息被竊取、篡改和偽造,從而保證信息的機密性、完整性,可獲取性和真實性。那么我們今天就來給大家講一下IDEA加密算法在智能傳感器中是如何應用的。
一、IDEA加密算法
IDEA是由瑞士聯(lián)邦理工學院的Xuejia Lai和James Massey在1990年設計并在以后得到增強,目前它已被isonE.c等組織列為登記的加密算法。它是近幾年提出的各種分組密碼中很成功的一個方案,能抵抗差分分析和相關分析,窮舉搜索破譯要求進行2的128次方≈10的38次方次試探,每秒鐘完成10億次試探要1022年,目前尚無對它攻擊成功的報道。在網(wǎng)上廣泛應用的如PGP、SSL等軟件中都有實現(xiàn)IDEA的模塊。
IDEA加密算法的加密和解密過程中,明文和密文是按64比特的塊來處理的,密鑰長度是128比特。加密和解密是依賴于異或、模加、模乘三種代數(shù)群的運算的恰當結合,每個代數(shù)群都是16比特數(shù)的運算。

IDEA加密算法結構框圖如圖1所示。加密過程和解密過程的算法相同,所不同的是采用不同的子密鑰塊,這個特性也被稱為加密和解密的相似性.從圖1中可看出,8輪變換之后,緊接著是一個輸出變換,它們級聯(lián)起來完成一次完整的加密。
64位的明文被分為4個16比特的子塊,第f個子塊被命名為Xi(i=1,2.3, 4)。這四個子塊被52個16比特的子密鑰轉換為4個16比特的密文子塊Yi(i=1,2,3,4)。每輪變換使用6個子密鑰,第r(r=1,…,8)輪使用的密鑰為Z1(r),…,Z6(r)。最后一輪用四個密鑰,標記為Z1(9),…,Z4(9)。用于加密和解密的52個子密鑰是由用戶提供的128位密鑰產(chǎn)生的,加密子密鑰是按移位產(chǎn)生,解密子密鑰是由移位和模逆運算產(chǎn)生.在每一輪的核心中,包含有兩個模乘運算和兩個模加運算,這種結構被稱為乘加(MA)結構,即圖1中陰影部分,它是IDEA加密算法實現(xiàn)中的關鍵非線性構件。研究表明,8輪迭代后能達到雪崩性的擴散和混淆,因而它能抵抗差分分析。
二、智能傳感器系統(tǒng)
智能傳感器是應現(xiàn)代自動化系統(tǒng)發(fā)展的需要而提出來的,是傳感技術向前發(fā)展的必然趨勢,所謂智能傳感器,就是一種帶有微處理器兼有檢測信息和信息處理功能的傳感器。目前,智能傳感器實現(xiàn)的途徑有三條:非集成化實現(xiàn)、集成化實現(xiàn)、混合實現(xiàn)。
非集成化智能傳感器是將傳統(tǒng)的經(jīng)典傳感器,信號調(diào)理電路、帶數(shù)字總線接口的微處理器組合為一整體而構成的一個智能傳感器系統(tǒng).其框圖如圖2所示。這是一種實現(xiàn)智能傳感器系統(tǒng)最快的途徑與方式。

集成化智能傳感器系統(tǒng)是采用微機械加工技術和大規(guī)模集成電路工藝技術,利用硅作為基本材料來制作敏感元件,信號調(diào)理電路、微處理器單元,并把它們集成在一塊芯片上而構成的。
混合實現(xiàn)是將系統(tǒng)中敏感元件、信號調(diào)理電路、微處理器單元、數(shù)字總線接口,以不同的組合方式集成在兩塊或三塊芯片上,并裝在一個外殼里。
智能傳感器的發(fā)展使得在傳感器級進行數(shù)據(jù)加密成為可能,尤其是在非集成化智能傳感器系統(tǒng)中,將數(shù)據(jù)加密模塊嵌入到微處理器單元,與其它處理(如數(shù)據(jù)壓縮等)一起完成,實現(xiàn)傳感器級數(shù)據(jù)文件加密,可以更好地保證效據(jù)的安全存儲和傳輸。
1、傳感器級數(shù)據(jù)文件加密的設計方案
本文以無人值守遠程監(jiān)測系統(tǒng)中的圖像傳感器為具體實驗對象,對于其它如壓力、震動等類型的傳感器,同樣是適用的。

基于圖像傳感器的數(shù)據(jù)文件加密總體設計方案框圖如圖3所示。從圖像傳感器得到的數(shù)據(jù),經(jīng)過采集控制、信號預處理,送入DSP芯片,即圖3中的陰影部分。在DSP中實現(xiàn)圖像壓縮和數(shù)據(jù)文件加密兩部分,既可以充分、高效地利用DSP資源,又提高了系統(tǒng)的性能和可靠性。經(jīng)加密處理過的數(shù)據(jù)文件再送入通訊系統(tǒng),實現(xiàn)與遠程監(jiān)控中心的通信。最后在終端對接收到的數(shù)據(jù)文件進行解密。
其中圖像壓縮采用的是JPEG2000靜態(tài)圖像壓縮算法,數(shù)據(jù)文件加密采用的是IDEA加密算法。
2、IDEA加密算法的實現(xiàn)
IDEA加密算法所采用的編程環(huán)境是Ti公司提供的Code Composer Studio (CCS),利用CCS進行DSP編程有3種模式:(1)C語言編程模式;(2)線性匯編;(3)DSP指令集編程。本設計中所有的程序代碼是用C語言描述的,以Ti公司的TMS320VC5416芯片為算法實現(xiàn)載體。C語言編程開發(fā)周期短,而且便于不同系列DSP芯片間的移植,適用性強。
依據(jù)功能將IDEA算法系統(tǒng)劃分成四個相對獨立的子模塊:輸入接口模塊,控制模塊,加密和解密運算模塊,密鑰擴展模塊。如圖4所示。

輸入接口模塊的主要任務是:將外部的控制信號傳送到控制模塊、將數(shù)據(jù)傳送到加/解密運算模塊,將外部輸入的密鑰傳送到密鑰擴展模塊。控制模塊的主要任務是實現(xiàn)加密和解密運算模塊和密鑰擴展模塊工作的啟動。加密和解密運算模塊是本設計的主要部分,它的功能是將64位的數(shù)據(jù)分組按輸入的密鑰進行加密或解密。密鑰擴展模塊用來生成加密和解密運算模塊需要的所有子密鑰。
如前所述,在加密算法的基本結構(即加密和解密運算模塊)中包括異或,模加和模乘三種基本運算。其中最難實現(xiàn)的部分是模(2的16次方+1)乘法運算,應用方程(1)可以簡化模運算的復雜性,而且保證了其實現(xiàn)的高效性。

3、加密模塊的性能評估
IDEA加密算法可以使用四種標準的工作模式:電子密碼本模式(Electronic Codc Book,ECB)、密碼分組鏈接模式(Cipher Block Chaining,CBC)、密碼反饋模式(Ciphertext Feedback.CFB)、輸出反饋模式(Output Fccdback,OFB)。
在應用中,可根據(jù)數(shù)據(jù)的特點,選用合適的工作模式。當DSP主頻IOOMHz時,通過對大小約IOK字節(jié)的圖像數(shù)據(jù)在TMS320VC5416芯片上進行加密,分別對這四種工作模式的加密速率進行了評估,見表1。加密速率是根據(jù)式(2)計算得出。
![]()

本實驗是以圖像傳感器來進行實驗的,針對圖像數(shù)據(jù)的特點,選用CBC工作模式,得到了較好的圖像加密效果。加密、解密前后的圖像如圖5所示。加密模塊針對的數(shù)據(jù)是二進制數(shù)據(jù)類型,具有通用性,所以對其它如壓力,震動等類型的傳感器,在傳感器級進行硬件加密,同樣是適用的。

小知識之DSP
數(shù)字信號處理是將信號以數(shù)字方式表示并處理的理論和技術。數(shù)字信號處理與模擬信號處理是信號處理的子集。










