雙混沌系統(tǒng)圖像加密方案
隨著計(jì)算機(jī)技術(shù)迅速發(fā)展,Internet已經(jīng)作為人們或單位之間進(jìn)行信息交流的主要渠道,網(wǎng)上傳輸?shù)姆奖阈圆蝗葜靡?,但由于因特網(wǎng)的基礎(chǔ)協(xié)議TCP/iP不是一種安全的協(xié)議,現(xiàn)代高性能的計(jì)算機(jī),運(yùn)行自動(dòng)分析和截獲程序每秒可搜索數(shù)百萬(wàn)個(gè)底碼,因此當(dāng)未經(jīng)特別加密的圖像信息在網(wǎng)絡(luò)上傳送時(shí)就會(huì)面臨極大的安全威脅。在國(guó)家安全方面,軍用衛(wèi)星所拍攝的圖片、軍用設(shè)施圖紙、新型武器圖等;在遠(yuǎn)程醫(yī)療系統(tǒng)中,醫(yī)院中患者的病歷(其中包括患者的圖像),市場(chǎng)競(jìng)爭(zhēng)中,作為公司機(jī)密的,電子設(shè)計(jì)、機(jī)械設(shè)計(jì)、金融機(jī)構(gòu)的建筑圖紙等,都足以大量的技術(shù)圖紙形式保存的。這些圖像的傳輸如果希望享受到網(wǎng)絡(luò)傳輸?shù)姆奖?、快捷,又要考慮信息的安全與保密,那么不論出于法律規(guī)定,還是個(gè)人利益的需要,必須要加密后方可在網(wǎng)絡(luò)上傳輸。
現(xiàn)代密碼體制可分為兩大類:一類是私鑰密碼體制,如DES、IDEA、Blowf18h,CAST-256.Mars等;另一類是公鑰密碼體制,如RSA,EIGrunal等。這兩類加密算法有—個(gè)共同特點(diǎn)是:它們都是針對(duì)加密文本數(shù)據(jù)設(shè)計(jì)的,雖然在理論上講,數(shù)字圖像信息也可以應(yīng)用這類密碼系統(tǒng)來(lái)進(jìn)行加密,但這并不是—個(gè)明智的選擇。數(shù)字圖像數(shù)據(jù)量一般都非常大,而且數(shù)字圖像信息是允許一定的圖像失真度的,這種圖像失真只要控制在人的視覺(jué)不能覺(jué)察到時(shí)是完全可以接受的。有時(shí)為了初略瀏覽,甚至視覺(jué)上覺(jué)察到—定的失真也是完全可以的,有鑒于此,對(duì)于數(shù)字圖像信息加密,需要重新設(shè)計(jì)一類適合數(shù)字圖像數(shù)據(jù)特點(diǎn)的圖像加密算法。由于混沌加密特有的優(yōu)勢(shì),應(yīng)用混沌加密成為一新的發(fā)展動(dòng)態(tài),基于混沌理論的圖像加密方法大量出現(xiàn)。
一、混沌動(dòng)力系統(tǒng)
混沌(chaos)一詞在1975年由李天巖和約克(James A.Yorke)首先提出,混沌是具有偽隨機(jī)性的確定性系統(tǒng)。它對(duì)系統(tǒng)的參數(shù)和初始條件極端敏感,給定—個(gè)離散混沌系統(tǒng)2個(gè)非常接近的初始值,經(jīng)過(guò)幾次迭代后,輸出的結(jié)果可以完全不相關(guān)。同時(shí),它又具有確定性,其輸出值由非線性系統(tǒng)的方程、參數(shù)和初始條件完全決定。只要系統(tǒng)參數(shù)及初始條件相同,就可以重構(gòu)混沌信號(hào)?;煦绲倪@些特點(diǎn)使得它在密碼學(xué)的應(yīng)用具有天然優(yōu)勢(shì),20世紀(jì)80年代末期,英國(guó)數(shù)學(xué)家Matthews首先提出混沌序列在密碼學(xué)方面的應(yīng)用。 現(xiàn)今的混沌動(dòng)力系統(tǒng)有很多,如Logistic系統(tǒng)、Lorenz系統(tǒng)、Chua系統(tǒng)、Henon系統(tǒng)、Chen系統(tǒng)和一階時(shí)延模型等等,該文中采用的是Logistic系統(tǒng)與Lorenz系統(tǒng)。
1、Logistic系統(tǒng)
Logistic系統(tǒng)的動(dòng)力學(xué)模型的方程如下:
![]()
Logistic映射由生物學(xué)家吁1976提出來(lái)的,方程的形式是完全確定的,是最簡(jiǎn)單的非線性函數(shù),當(dāng)3.5699456--≤μ≤4時(shí),系統(tǒng)的動(dòng)力學(xué)形態(tài)十分復(fù)雜,系統(tǒng)由倍周期通向混沌,將區(qū)間[o,1]非線性映射到自身。
2、Lorenz系統(tǒng)
Lorenz系統(tǒng)的動(dòng)力學(xué)模型的方程如下:

1963年美國(guó)著名氣象學(xué)家洛倫茲在研究天氣預(yù)報(bào)問(wèn)題時(shí),首先發(fā)現(xiàn)確定性方程中會(huì)出現(xiàn)混沌現(xiàn)象,他將所研究的對(duì)流模型簡(jiǎn)化后,當(dāng)參數(shù)在標(biāo)準(zhǔn)情形(即參數(shù)σ=10,b=8/3,r=28)下,此系統(tǒng)具有—個(gè)典型混沌吸引子。
3、混沌序列的產(chǎn)生
(1)實(shí)值序列 Log18tic系統(tǒng)中的{ln,n=1,2,3,…}。以及應(yīng)用數(shù)值解法得到的Lorenz系統(tǒng)的離散數(shù)值解{xn,yn,zn。n=1,2,3,…}。
(2)[1,N]之間的整數(shù)序列 實(shí)值序列中每個(gè)值取小數(shù)點(diǎn)后4、5、6位構(gòu)成整數(shù),對(duì)N求余數(shù)后加1。
(3)[a、b)之間的實(shí)值序列 實(shí)值序列中每個(gè)值對(duì)b-a求余數(shù)后加a。
二、基于混沌序列的圖像置亂算法
理論上,混沌的周期是無(wú)窮的,但由于混沌系統(tǒng)在加密時(shí),會(huì)遇到動(dòng)力學(xué)特性退化的問(wèn)題,以及在計(jì)算機(jī)上實(shí)現(xiàn)混沌序列的時(shí)候,受到計(jì)算機(jī)精度的限制,周期本質(zhì)上是有限的,這在對(duì)大幅圖像進(jìn)行加密時(shí),所需混沌序列過(guò)長(zhǎng),單一混沌系統(tǒng)極易退化,加大了被破澤的可能性,因此提出的算法通過(guò)對(duì)圖像分塊,分別加密,將Logistic映射和Lorenz方程進(jìn)行有機(jī)結(jié)合,縮短單個(gè)加密序列的長(zhǎng)度,降低了退化引起的風(fēng)險(xiǎn),從而提高了加密算法的安全性。
1、加密矩陣的產(chǎn)生
設(shè)密鑰為(x0,μ,xta,yta,zta,σ,r,b)。設(shè)將圖像共分成了K個(gè) 8x8小塊。
(1)將(xo,p)代入式(1)生成長(zhǎng)度為2K的區(qū)間[1,8]上的整數(shù)序列,由該序列按行順序構(gòu)成2xK矩陣,記為L(zhǎng)ogij,i= 1,2,j=1,2,…,Ko。
(2)將(x0,μ,xta,yta,zta,σ,r,b)代入式(2)生成3個(gè)長(zhǎng)度為2K的序列,其中x1,x2,…,xk是(0.1)之間的實(shí)值序列;y1,y2,…,yk是(3.569 945 6,4)之間的實(shí)值序列;z1,z2,…,zk[l,8]之間的整數(shù)序列是分別轉(zhuǎn)化為(0,1)之間的實(shí)值序列;xk+1,xk+2,…,X2X;yX+1,Yx+2,…,y2k;Zk+1,Zk+2,…,z2k是[1.4]上的整數(shù)序列,定義矩陣LOR yx使得LOR7xkX使得:

(3)令xo=LORlk,μ=LORzk代入式(1),生成長(zhǎng)度為64的[0,256]上的整數(shù)序列,再由該序列按行順序構(gòu)成8x8異或矩陣,記為L(zhǎng)k,k=1,2,…,K。
2、Baker映射
該文算法采用Baker映射來(lái)完成圖像置亂。離散Baker映射最先是由Pichler和Scharinger引入到圖像加密中之后Fridrich在此基礎(chǔ)上進(jìn)行了改進(jìn)。根據(jù)密鑰的不同,離散Baker映射分為Version A和Version B兩種情況。

以8x8的圖像為例,σ=(2,2,4)時(shí),任意的nk整除N,屬于Version A。如圖1(a);σ=(3.5)時(shí),nk不整除N,屬于VersionB。如圖1(b)。

但是不論Version A還是Version B,不管迭代多少次,Baker映射都將(0.0)映射到自身,這將有助于攻擊者對(duì)圖像的攻擊,故引入隨機(jī)坐標(biāo)(x,y),(x,y)可以是圖像內(nèi)任意一點(diǎn),原Baker映射將(r,s)映射到Ba(r,5)=(R,s),現(xiàn)改進(jìn)為將(r,s)映射到B8(r,s)=((R+s)mod 8,(S+y)mod 8),也就是說(shuō),原圖像的(O,O)映射到了(x,y)。而(x,y)將由混沌序列隨機(jī)給出。
3、加密算法
設(shè)原始圖像為IM*N,密鑰為(x0,μ,xta,yta,zta,σ,r,b)
步驟1 將IM*N分成8x8小塊,記為Dk,k=1,2,…,K,相鄰塊之間有部分重疊,第l塊不足8x8處由加密后的第1塊補(bǔ)齊;
步驟2 令k=l;
步驟3 加密D;
(l)由w:LORu,p=LOR,i生成異或矩陣lk,k=l,2,….64;
(2)將DK與LK對(duì)應(yīng)點(diǎn)進(jìn)行按位異或;
(3)令σ=(LOR3K,LOR4k,LOR5k,LOR6k),(x,y)=(Loglk,Logu),對(duì)DI做LOR7k次Baker映射;
(4)將dk中與dk+1,重疊部分的值賦給dk+1;
(5)k=k+1。
步驟4重復(fù)步驟3,直到所有塊加密完畢,第n塊加密后要將由第1塊補(bǔ)齊的像素還回;
步驟5執(zhí)行分塊的逆過(guò)程。
由于使用了類似CBC的模式,即當(dāng)前像素的加密要受到前—像素的影響,有效地實(shí)現(xiàn)了擴(kuò)散。
三、實(shí)驗(yàn)結(jié)果與分析
(1)加密實(shí)驗(yàn)
采用該文方法對(duì)圖像2(a)進(jìn)行加密實(shí)驗(yàn),設(shè)密鑰(x0,μ,xta,yta,zta,σ,r,b)為(0.723,3.731 482,2.0,12,7.03,10.28,2.67)。加密后得到圖像2(b),密鑰正確解密圖像為圖2(c),由于混沌序列對(duì)初始值非常敏感,即使密鑰值有微小的變化(密鑰其他部分不變,僅知增加10-16)也會(huì)得到完全不同的解密結(jié)果的,從而也就無(wú)法對(duì)圖像進(jìn)行解密,圖2(d)為錯(cuò)誤密鑰解密的圖像。

(2)直方圖
圖3(a),(b)分別是圖2(a)和加密后圖2(b)的直方圖,從圖上可以看出加密后的直方圖分布很均勻,且與原圖差別很大。這大大增強(qiáng)了圖像的安全性,具有良好的抵御統(tǒng)計(jì)攻擊能力。

(3)相鄰像素的相關(guān)系數(shù)
圖像加密后應(yīng)該去除原圖中的相關(guān)性,該文中分別從(水平、垂直、對(duì)角方向上)明文和密文隨機(jī)選取1 600對(duì)相鄰的像素,計(jì)算相關(guān)系數(shù),得到數(shù)據(jù)如表1。從中可以看到,加密后的圖像各個(gè)像素的相關(guān)性很小。因此,該加密方法可以非常有效抵御采用相關(guān)分析的攻擊。

(4)抗攻擊性
對(duì)于一定的信道噪聲攻擊和幾何攻擊而使加密圖像產(chǎn)生的失真,該算法均能正確解密并恢復(fù)原始圖像。圖4(a)、(b)分別是對(duì)密文疊加強(qiáng)度為2%的鹽椒噪聲和高斯噪聲后的解密圖,圖4(c)的幾何失真是把加密后圖像20%的一塊面積隨機(jī)地涂成白色后的解密圖,圖像仍然可辨。

小知識(shí)之矩陣在數(shù)學(xué)中,矩陣(Matrix)是指縱橫排列的二維數(shù)據(jù)表格,最早來(lái)自于方程組的系數(shù)及常數(shù)所構(gòu)成的方陣。這一概念由19世紀(jì)英國(guó)數(shù)學(xué)家凱利首先提出。









