文獻標識碼: A
文章編號: 0258-7998(2012)03-0020-03
隨著信息技術的飛速發展,人們使用手機、PDA處理電子商務、金融證券的網上交易、手機銀行和平板電腦進行數據傳輸的頻率也在不斷地提高。但是用戶的個人重要信息(如密碼、身份認證、交易信息等)并沒有得到很好的保護,信息一旦被非法入侵者竊取,就有可能造成巨大的損失。因此,信息安全對這類設備來說極其重要,這就要求此類的嵌入式系統設備應該具有很好的數據保密功能。但是目前很多加密算法都是針對PC級的并不適合在嵌入式設備中運行[1]。
混沌信號對初始條件高度敏感,即使是兩個完全相同的混沌系統從幾乎相同的初始條件開始演化,而它們的軌道將很快變得互不相關,這使混沌信號具有長期不可預測性和抗截獲能力。同時混沌系統本身又是確定性的,完全由非線性系統的方程、參數和初始條件所決定,因此又使混沌信號易于產生和復制。混沌信號的隱蔽性、不可預測性、高復雜度和易于實現等特性都特別適用于保密通信[2]。而且混沌具有的初值敏感、參數可控性和偽隨機性的特性,正好吻合數據加密的兩條原則:擴散和混亂。故混沌算法很適合用來進行數據加密[3]。
1 嵌入式系統圖像混沌加密實現原理[4]
1.1 混沌加密原理
混沌信號用于數據保密通信中有多種形式,混沌保密是利用混沌信號的各種特性來實現的。在數據的發送端將其作為密鑰明文信息和混沌信號經加密變換后形成密文,然后在信道中傳送,在接收端知道解密密鑰和解密變換的合法用戶,能夠得到正確的明文。這種加密原理主要是源于傳統的對稱密鑰加密算法。
混沌加密中一個重要的因素是混沌同步,其決定混沌信號能不能運用到加密中,用能夠同步的混沌信號加密才能正確解密。所謂混沌同步是指一個系統的混沌動力學軌道收斂于另一個系統的混沌動力學軌道,以致兩個系統在以后的時間里始終保持步調的一致。目前常用的混沌同步方法主要有以下幾種:驅動-響應同步及串聯同步法、主動-被動同步法、互耦合混沌同步法、自適應同步方法和神經網絡同步方法等[5]。本文所用的Chen系統是使用系統中的X作為驅動變量來實現驅動-響應同步。下面以Chen系統為例對系統進行研究。
2 ARM 嵌入式Linux系統的軟硬件平臺
2.1 系統的硬件平臺
加密系統平臺采用三星公司的32 bit微處理器S3C2440A。該處理器內部集成了ARM920T內核,能夠實現MMU、AMBA、BUS和Harvard高速緩沖體系結構。帶有獨立的16 KB指令Cache和16 KB數據Cache,并且集成了很多外圍設備接口,如RAM控制器、Nand Flash控制器、10/100 M以太網接口、LCD控制器、并行I/O口,主頻最高可達533 MHz[6]。
硬件平臺配置了256 MB 8 bit NAND Flash、64 MB 32 bit的SDRAM。通過以太網控制器芯片DM9000擴展了一個網口、一個SD卡接口、I/O擴展接口、觸摸屏接口、RS-232串行通信接口。另外,硬件平臺上還有一些擴展模塊:一個I/O擴展電路接口,用于現場數據的采集;GPRS模塊接口,用于發送和接收加密后的數據。主板也可以通過以太網接口與外界通信,在實驗中主要是通過以太網以NFS來掛載加密系統在平臺上運行。系統硬件結構圖如圖2所示。
2.2 嵌入式Linux系統
目前市面上很多嵌入式設備特別是消費類產品都移植了嵌入式Linux系統。因為Linux系統是開源的,運用到商業中不需要支付龐大的版權費,而且Linux系統的可靠性高。因此,本實驗中的平臺移植的是嵌入式Linux系統[7]。
整個系統的架構如圖3所示:最底層是引導加載Linux內核程序的bootloader,系統中采用的是三星公司自行研發的Supervivi;中間的是Linux 2.6.32.2 版本的內核,在移植Linux系統時考慮到暫時不需要使用太多的資源,同時為減少CPU資源的開銷,將內核做了充分的裁剪,在內核中包含了初始化平臺的各個函數、串口終端、LCD、以太網及相關的設備驅動等;根文件系統也是嵌入式Linux中不可缺少的一部分,這一層中包涵了嵌入式平臺的必不可少的bin文件;最頂層是用戶應用程序,用于產生混沌信號,加解密程序都放在其中。
3 數字圖像混沌加解密系統的設計
混沌加密系統中,混沌加密算法的設計至關重要,它決定了混沌加密系統的安全性以及執行效率。實驗中設計的加密算法采用傳統的置亂算法和混沌加密相結合的方法,傳統的置亂加密并不能改變圖像的灰度統計特性,而在置亂的同時如果加上混沌加密就能夠很好地改變圖像的灰度統計特性。混沌加密所需的密碼流是采用Chen系統產生的混沌序列。
3.1 加密算法的設計
根據參考文獻[3]提出的思想,結合傳統加密技術,本文提出的實現算法是基于傳統置亂與混沌加密相結合的方法,其加密原理框圖如圖4所示。
使得各分量的灰度值遍歷整個灰度空間,使混沌的擴散現象在加密中得到充分的體現,滿足了加密文件的安全性能要求。正是由于混沌的這種特性使得入侵者很難通過加密圖像的灰度值統計特性破譯文件,從而增加了密文圖像的安全性。
實驗中設計了一種在嵌入式Linux系統上實現對BMP圖像進行混沌加密與傳統加密相結合的算法并且在MINI2440平臺上實現。實驗結果達到了設定的目標,加密性能滿足實際應用中的標準。將該算法移植到嵌入式系統設備中運行,可使用戶的數據得到較好的保護。下一步還需要對該算法進行改進,同時利用更為復雜的混沌系統作為密碼流對信息進行加密,使得該算法在嵌入式設備加密的速度更高,達到實時的效果。
參考文獻
[1] 張慧源,禹思敏.基于混沌加密的嵌入式通信系統的研究[J].微計算機信息,2005,21(11):31-32.
[2] PECORA L M,CARROLL T L.Synchronization in chaotic systems[J].Physical Review Letters,1990,64(8):821-824.
[3] 禹思敏.混沌系統與混沌電路:原理、設計及其在通信中的應用[M].西安:西安電子科技大學出版社,2011.
[4] 王培榮,徐酷,付沖,等.復合混沌數字圖像加密算法[J]. 通信學報,2006,27(z1):285-289.
[5] 禹思敏,丘水生,羅偉民.混沌同步通信系統若干問題的實驗研究與分析[J].華南理工大學學報,2000,28(10):87-91.
[6] Samsung公司.S3C2440A user's manual revision 1.0.2004.
[7] 韋東山.嵌入式Linux應用開發完全手冊[M].北京:人民郵電出版社,2008.