《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式系統(tǒng)的混沌數(shù)字圖像加密研究
基于嵌入式系統(tǒng)的混沌數(shù)字圖像加密研究
來(lái)源:電子技術(shù)應(yīng)用2012年第3期
凌大旺,禹思敏
廣東工業(yè)大學(xué) 自動(dòng)化學(xué)院,廣東 廣州510006
摘要: 常用的PC級(jí)加密算法運(yùn)算量過(guò)大,不適合在嵌入式設(shè)備上運(yùn)行。為了使嵌入式設(shè)備的數(shù)據(jù)存儲(chǔ)及傳輸能夠安全地進(jìn)行,利用混沌信號(hào)對(duì)數(shù)據(jù)進(jìn)行加密以提高嵌入式設(shè)備數(shù)據(jù)的安全性。在ARM2440+Linux平臺(tái)上實(shí)現(xiàn)了混沌信號(hào)生成功能并利用混沌信號(hào)對(duì)數(shù)字圖像進(jìn)行加密的實(shí)驗(yàn),最終生成加密后的一份密文信息。
中圖分類號(hào): TP751
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2012)03-0020-03
Research on chaotic encryption of digital image based on embedded systems
Ling Dawang,Yu Simin
Faculty of Automation, Guangdong University of Technology, Guangzhou 510006,China
Abstract: The ordinary encryption algorithm based on the computer is not suitable for the embedded devices due to considerable computation. But in order to protect the data in embedded system when saving or transmitting, encrypt the data with chaotic characteristic as well as porting it in the embedded devices improves the security of data transmission. Do some experiment which include chaotic signals and encrypt the data with chaotic signals in the ARM2440 + Linux platform, at last create an encrypt file.
Key words : chaotic encryption;embedded system;ARM;image encryption;Linux

    隨著信息技術(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.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。