結(jié)合二維混沌映射與小波變換的圖像文件加密方案
由于一維混沌映射有可能退化為周期以及密鑰空間相對太小等缺點。現(xiàn)結(jié)合一次耦合形式的二維Logistic混沌映射,由此映射生成混沌序列,在空域上對圖像文件進行加密,然后對其加密后的圖像進行小波分解,對其小波系數(shù)進行混沌映射變換,從而在小波域上進行置亂加密。
一、二維Logistic混沌映射系統(tǒng)
1、混沌的定義
設(shè)(x,p)是一緊致的度量空間,f:X→X是連續(xù)映射,稱f在x上是混沌的,如果:(1)f具有初值敏感依賴性;(2)f在x上拓撲傳遞;(3)f的周期點在x中稠密。
由于非線性動力學(xué)系統(tǒng)的混沌具有不可預(yù)測性、不可分解性和具有規(guī)律行為等特性,非線性系統(tǒng)隨時間的演變將趨向于維數(shù)比原來相空間低的極限集合,即吸引子。隨著控制參數(shù)的變化,簡單吸引子發(fā)展為奇怪吸引子,此時系統(tǒng)是混沌的。由于二維Logistic混沌點集不存在有效的無誤差構(gòu)造形式,比一維Logistic映射有更安全的加密效果。因此研究選用二維Logistic混沌映射生成的混沌序列對圖像進行加密。
2、二維Logistic混沌映射
由一維Logistic映射,可以定義二維Logistic混沌映射如:
![]()
其中g(shù)1和g2是耦合項,可以取兩種情況:即:g1=γyn和g2=γxn的一次耦合項,或者g1=g2=λxnyn的對稱二次耦合項。采用一次耦合項形式的二維Logistic映射產(chǎn)生混沌序列,映射的形式為:
![]()
混沌序列的產(chǎn)生可以由控制參數(shù)μ1、μ2和γ決定。
3、控制參數(shù)的確定
混沌系統(tǒng)在相空間中的行為是通過奇怪吸引子描述的,為了定量描述吸引子的行為,引入了Lyapunov指數(shù),其大小表明相空間中的相近軌道的平均收斂或發(fā)散的指數(shù)率。在多維的混沌系統(tǒng)中,Lyapunov指數(shù)與系統(tǒng)維數(shù)的數(shù)目相等,這時稱Lyapunov譜。在Lyapunov譜中,不必計算全部的Lyapunov指數(shù),只要最大的Lyapunov指數(shù)大于零,系統(tǒng)即是混沌的。最大的Lyapunov指數(shù)計算公式:
![]()
式子中Ji是混沌系統(tǒng)的f階雅可比矩陣。當(dāng)γ=0.1,μ1=μ2= 0.9時,經(jīng)計算得到的二維Lyapunov映射的最大Lyapunov指數(shù)λ= 0.11>0,表明此時處于混沌狀態(tài),與計算機模擬的系統(tǒng)相圖是一致的。
二、圖像加密算法和解密算法
1、加密過程
圖像文件加密模型如圖1所示。

采用具有一次耦合項的二維Logistic映射產(chǎn)生混沌序列,給定二維Logistic映射的系統(tǒng)初值xo和yo,設(shè)原圖像,的大小為mxn,算法的具體過程描述如下:
步驟1取原始圖像J的所有像素灰度值的異或B,即:
![]()
若令k= B/256,則尼即為所得的輔助密鑰;
步驟2用輔助密鑰k修改混沌系統(tǒng)的初始值:
![]()
修正后的x1,y1,作為二維Logistic混沌系統(tǒng)新的初始值;
步驟3選擇控制參數(shù)γ=0.1,μ1=μ2=0.9,再由式(2)構(gòu)造(mxn+100)對值為0-1的混沌序列值,舍去前100對值,取第101—第(mxn+100)的共mxn對值,分別存儲于數(shù)組{x(i)}與{y(i)}中。i=1,2,…,mxn;
步驟4混沌序列k(i)的生成,按順序取圖像中的一點(設(shè)點的序號為f),具體方案如表1;

步驟5用原圖像I中的第i個像素點的灰度值與步驟4產(chǎn)生的混沌序列k(i)進行按二進制位異或操作,得到加密后的像素值,重復(fù)加密過程,直到所有的像素點加密完畢,即得到第一次加密的圖像T;
步驟6選擇小波函數(shù)對,進行R級小波分解,可得到一些分解系數(shù)矩陣,采用混沌置亂映射改變低頻系數(shù),這樣可以大大減小計算量,由于低頻系數(shù)對圖像視覺的影響起主要作用,因此選擇對低頻系數(shù)進行加密也是合理的,最后再由小波逆變換重構(gòu)所得的圖像即為密圖。
2、解密過程
由圖2,解密過程為:首先對加密圖像序列進行小波分解,利用密鑰對低頻系數(shù)矩陣進行混沌映射逆置亂,此時的低頻系數(shù)再與其余的中高頻系數(shù)進行重構(gòu)解密圖像1,由混沌序列生成的解密程序再加上密鑰對解密圖像1做相應(yīng)的解密,具體的解密程序是加密程序的逆過程,可參考加密中的步驟3、步驟4、步驟5。這樣就可以實現(xiàn)信息的解密,輸出原圖像。

三、仿真試驗結(jié)果及其分析
下面利用一幅256 x256的標準Lena圖像作為試驗圖像,采用一次耦合項形式的二維Logistic映射產(chǎn)生混沌序列對原圖像進行加密,該算法選擇Haar小波對第一次加密的密圖像進行小波分解,再對低頻系數(shù)進行混沌變換(此處選用的是Arnold變換)。圖像文件加密的安全性是評價一個圖像加密系統(tǒng)的最核心的標準。現(xiàn)從以下幾方面進行安全性的分析。
1、峰值信噪比的分析
在變換域的圖像文件加密中,均方誤差(MSE)或者峰值信噪比(PSNR)是評價圖像加密的一項重要指標,圖像的矩陣大小為mxn,量化級為0~255的原圖f(i,j),密圖為g(i,j)。其中:

若用峰值信噪比對解密圖像和原圖的一致性進行客觀評價,則可得到解密圖像與原圖的峰值信噪比PSNR=77.726l,由此可以看出,客觀評價與主觀評價結(jié)果一致,且性能很好。
2、密鑰敏感性分析
由圖3(a)為原圖,圖3(b)為加密之后的圖像,圖3(c)為正確解密的圖像,圖3(d)在微小偏差的情況下,即當(dāng)xo’=0.1000000000000001,y0’=O.11時,獲得的解密圖像,可以看出密圖對密鑰具有高度的敏感性。

3、信息熵的分析
信息熵H(m)是反映信源的平均信息量,公式為:
![]()
此處的P(mi)表示符號mi的概率,信息熵的單位為bit/符號。假設(shè)一個信源是所含28個符號是以等概率出現(xiàn)的,該信源的熵H(m)=8,也即是對應(yīng)于一個真正的隨機信源。事實上,一個具有實際意義的信源很少會產(chǎn)生隨機信息,一般的其熵值會小于理想值。然而當(dāng)信息被加密之后,它的熵理論上應(yīng)該是8,如果該值小于8,將會存在某種程度上的可預(yù)測性,危及安全。根據(jù)此分析計算密圖的熵:
![]()
該熵值幾乎接近理淪值8,即該加密系統(tǒng)在加密過程對信源的泄露是可以忽略的,因此可以有效抵御熵的攻擊。
4、密文分布特性分析
由圖4可知密文的灰度直方圖以及灰度三維圖幾乎趨于均勻分布,很好地掩蓋了明文的分布規(guī)律,可見明文像素的統(tǒng)計信息在密文中無法體現(xiàn),明密文之間統(tǒng)計上的相關(guān)性非常小,表明方案能夠有效抵御基于像素統(tǒng)計的攻擊。

5、相鄰像素的相關(guān)性
為檢驗密圖和原圖相鄰像素的相關(guān)性,現(xiàn)隨機從圖像中抽取1024對相鄰像素(水平、垂直或?qū)牵?。其公式計算相鄰像素相關(guān)系數(shù)為:
![]()
其中,x和y分別代表圖像中相鄰像素的灰度值,cov(x,y)為x與y的協(xié)方差,D(x)、D(y)分別為x,y的方差。
圖5分別表示了原圖和密圖的水平、垂直和對角方向相鄰像素的相關(guān)性。

表2則分別列出了按照3種方向計算所得到的相關(guān)系數(shù)。由仿真試驗可以看出,原圖的兩相鄰像素具有高度的相關(guān)性,相關(guān)系數(shù)接近于l。而密圖的兩相鄰像素的相關(guān)系數(shù)接近于0,相鄰像素已基本不相關(guān),說明原圖的統(tǒng)計特征已被擴散到隨機的密圖中。

由像素灰度直方圖和相鄰像素相關(guān)性的分析可知:明文統(tǒng)計結(jié)構(gòu)已經(jīng)擴散到密文中,說明該算法有很好的擴散性能。
6、差分攻擊分析
通常攻擊者會通過對密文微小改變(如一個像素)來觀察整體的改變結(jié)果,通過這種方法攻擊者可以找出明文和密文之間一些關(guān)系。假如對原圖做微小的改變,結(jié)果導(dǎo)致了密圖的巨大變化,說明密文具有很良好的混沌擴散性,這樣差分攻擊就會變得無效且無實際意義。
檢測一個像素的改變對密文的影響通常用如下兩種方法:像素數(shù)目的改變率NPCR和整體平均改變強度UACI。記兩密文圖像C1和C2分別對應(yīng)著僅有一個像素不同的兩明文,定義矩陣D與C1和C2具有相同大小,當(dāng)C1(i,j)=C2(i,j)時,D(i,j)=l;反之,D(i,j)=0。

其中W和H分別為矩陣D的長和寬。按照上面提出的方案來檢測一個像素的改變對整個圖像(256x256)中256個灰度級的影響??梢缘玫絅PCR =0.4403%和UACI=33.472%,這一結(jié)果表明對原始圖像進行微小的改變會導(dǎo)致加密圖像很大的變化,因為NPCR的值越小,改變的像素就越多,UACI的值越大,改變后的密圖與原密圖的像素值的平均改變程度就越大,故加密方案具有較強的抵抗差分攻擊能力。
7、密鑰空間分析
關(guān)于此加密算法的破解,由于算法的密鑰為K=(xo,yo,k,γ,μ1,μ2,w,R,c,N),w為選用的小波,R為小波分解級數(shù),c、N分別為低頻系數(shù)采用的混沌置亂處理方法和置亂次數(shù),現(xiàn)直接對圖像數(shù)據(jù)流進行解密,解密的過程根本無法實現(xiàn);如前面的加密算法步驟6中對加密圖像T的小波系數(shù)進行為止置亂,此時的破解若采用窮舉法,對于16×16的圖像運算次數(shù)為256!≈8.6×10506;對于256 x256的圖像,運算次數(shù)為65536!≈5.2×10287193。況且此加密算法首先采用了由二維Logistic混沌映射產(chǎn)生的混沌序列,對原圖進行空域上的加密,由于混沌系統(tǒng)具有較高的安全保密性能,密鑰空間為(0,1)之間的全體實數(shù),由此可見該加密算法的密鑰空間非常大,可以有效地抵御對密鑰的攻擊。
由以上的試驗分析可以知道安全性得到了很大的提高。仿真試驗還表明解密圖像與原圖像有很高的峰值信噪比,以及加密圖像的灰度直方圖幾乎接近均勻分布,此加密算法具有良好的擴散和擾亂性,符合現(xiàn)代密碼學(xué)的特點,而且還能抵御一些攻擊。另外由分析可知具有相當(dāng)高的加密強度,且加密算法簡單、易于實現(xiàn)、密鑰空間大、不易破解等特點且具有良好的實用性。
小知識之小波變換
小波變換是近年來在圖象處理中受到十分重視的新技術(shù),面向圖象壓縮、特征檢測以及紋理分析的許多新方法,如多分辨率分析、時頻域分析、金字塔算法等,都最終歸于小波變換(wavelet transforms)的范疇中。







