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