圖像文件加密算法之離散傅里葉變換和雙混沌映射相融合加密

為了充分利用在圖像頻率域和空間域加密的優(yōu)勢(shì),進(jìn)一步提高圖像加密系統(tǒng)的安全性,我們提出了一種基于離散的傅里葉變換和雙混沌映射的圖像加密算法,同時(shí)對(duì)圖像的頻率域和空間域進(jìn)行加密。

一、二維離散的傅里葉變換

本文利用二維離散的傅里葉變換將圖像的灰度分布函數(shù)變換為圖像的頻率分布函數(shù),傅立葉逆變換將圖像的頻率分布函數(shù)變換為灰度分布函數(shù),并對(duì)圖像頻率域中的幅度和相位進(jìn)行移位處理。輸入一個(gè)矩形邊長(zhǎng)為M×N的圖像,并用二維離散傅里葉函數(shù)f(x,y)中的x、y設(shè)定圖像的空間域,F(xiàn)(u,v)中u、v設(shè)定圖像的頻率域。

其中,u、v為頻率變量(其中u=O,1,2,…,M-1;v=0,1,2,…,N-1);x、y為空間變量(其中x=0,1,2,…,M-1;y=0,1,2,…,N-1)。對(duì)式(1)進(jìn)行逆變換,可得二維離散傅里葉逆變換:

其中的x=0,1,2,…,M-1,y=0,1,2,…,N-1。另外,由式(1)可知,圖像經(jīng)傅里葉變換后得到的是復(fù)數(shù)形式,很難表示圖像的信息,因此分別用R(u,v)和I(u,v)來(lái)表示F(u,v)的實(shí)數(shù)部分和虛數(shù)部分,其中,幅度或頻率譜為式(3),相角或相位譜為式(4):

因此,根據(jù)二維傅里葉變換特性,通過(guò)式(2)、式(3)、式(4)就可以對(duì)頻率域u-v平面坐標(biāo)系的頻率點(diǎn)進(jìn)行處理,得到幅度譜和相位譜;通過(guò)式(1)、式(5)實(shí)現(xiàn)逆轉(zhuǎn)換處理,將頻率域轉(zhuǎn)換成空間域。

二、兩分段Tent映射

為了提高序列的偽隨機(jī)性能,本文采改進(jìn)的兩分段Tent映射來(lái)對(duì)圖像頻率域中的相位及幅度進(jìn)行置亂操作。

其中,a∈(O,1)為混沌映射參數(shù),晟為迭代次數(shù),y(k)是混沌序列x(k)的中間變量,并且給定的初始值x0、Yo必須滿(mǎn)足:XO∈(-0.5,0.5],Yo∈(O,1]。由式(6)經(jīng)K次迭代產(chǎn)生混沌序列{xk,k=l,2,…,K}。

由上可知,本文提出的兩分段Tent映射數(shù)學(xué)模型簡(jiǎn)單,很容易產(chǎn)生混沌序列。經(jīng)大量仿真實(shí)驗(yàn)表明,該映射法與一般的Tent映射相比,產(chǎn)生的擴(kuò)頻碼分布均勻,相關(guān)性也很好,并且Lyapunov指數(shù)更大、混沌程度更高。因此,該映射能夠獲得很好的加密效果,被廣泛應(yīng)用于保密通信和數(shù)據(jù)安全等領(lǐng)域中。

三、混沌Bernoulli移位映射

本文采用改進(jìn)的混沌Bernoulli移位映射來(lái)對(duì)圖像空間域中的灰度值進(jìn)行擴(kuò)散操作。

式中,b為Bemoum參數(shù),應(yīng)滿(mǎn)足條件1.4<b<2,此時(shí),Bemoulli移位映射具有混沌特性。由于混沌Bernoulli移位映射和混沌Tent映射一樣具有一致的密度分布函數(shù),具有較低的自相關(guān)性,較高的偽隨機(jī)性能以及較強(qiáng)的不可預(yù)測(cè)性,因此能夠很好地適應(yīng)密碼系統(tǒng)的要求。

四、基于離散傅里葉變換和兩混沌映射的圖像加密算法研究

步驟1 對(duì)待加密的明文圖像進(jìn)行二維離散的傅里葉正變換。

(1)輸入一個(gè)矩形邊長(zhǎng)為M×N的圖像,用傅里葉函數(shù)f(x,y)來(lái)設(shè)定圖像的灰度值。

(2)經(jīng)傅里葉正變換,將圖像的灰度分布函數(shù)f(x,y)變換為圖像的頻率分布函數(shù)F(u,v),并獲得圖像頻率域中的幅度譜|F(u,v)|和相位譜φ(u,v)。

步驟2利用改進(jìn)的Tent映射對(duì)頻率幅值和相位進(jìn)行置亂操作。

(1)給定初始值(x0, Yo)和(x0',y0'),x0'作為密鑰,其中x0,x’o∈(-0.5,0.5];Yo,y'0∈(0,1],a∈(0,1)。

(2)利用改進(jìn)的Tent映射經(jīng)K次迭代產(chǎn)生混沌序列{Xk,k=1,2,…,K}及{X'k,k=l,2,…,K}。

(3)將上述產(chǎn)生的混沌序列分別對(duì)步驟1(2)獲得的圖像幅值和相位進(jìn)行置亂處理,從而獲得新的頻率幅值及新的相位。

其中Pij為新幅值,pi'j為原幅值,Xij為帳篷序列值,L為圖像的尺寸。

同理,新相位與原相位及帳篷序列值的關(guān)系式為:

其中Mij為新相位,Mij'為原相位,xij為帳篷序列值,L為圖像的尺寸。

步驟3進(jìn)行二維離散的傅里葉逆變換。將新的頻率幅值及相位進(jìn)行DCT操作,使圖像的F(u,v)變換為f(x,y),從而獲得置亂圖像。

步驟4利用改進(jìn)的Bernoulli映射對(duì)圖像進(jìn)行像素值替換操作。

(1)給定初始值x0'';b0作為密鑰Ⅱ,其中-1/2≤0''≤1/2,1.4<b<2。

(2)利用混沌Bernoulli移位映射迭代N次,產(chǎn)生混沌序列{x,n=l,2,…,N}。為了消除瞬態(tài)效應(yīng),去掉前面的K個(gè)值,將K+1以后的混沌序列產(chǎn)生一個(gè)(M+N)的混沌實(shí)值序列{xl,x2,…,XM+N}。

(3)用混沌序列{xl,x2,…,XM+N}對(duì)置亂后的圖像進(jìn)行灰度值替代操作,最終獲得密文圖像。

步驟5最后根據(jù)明文圖像的加密要求(包括抗窮舉攻擊、抗明文攻擊以及抗差分攻擊等),反復(fù)執(zhí)行上述所有的步驟。

解密過(guò)程為加密過(guò)程的逆過(guò)程。

五、仿真實(shí)驗(yàn)及結(jié)果分析

借助仿真實(shí)驗(yàn)對(duì)本文提出的基于傅里葉轉(zhuǎn)換和雙混沌映射的圖像加密新算法的安全性能進(jìn)行驗(yàn)證與分析。輸入一個(gè)256×256大小的明文圖像LEAK,色灰度256,在MTLAB軟件平臺(tái)上進(jìn)行仿真實(shí)驗(yàn)。文中分別給出了原始圖像,置亂圖像,和密文圖像以及各自對(duì)應(yīng)的直方圖。原始圖像直方圖波動(dòng)程度較大,其隨機(jī)性以及冗余性較低,很容易被攻擊者獲取圖像相關(guān)信息。而經(jīng)過(guò)本文提出的算法加密后的圖像灰度直方圖產(chǎn)生了顯著地變化。如圖3(c)所示,與前面(圖3(a)、(b))的分量直方圖相比,其灰度表現(xiàn)出均勻狀態(tài),擁有較高的圖像冗余性與偽隨機(jī)性。這顯示本文算法具有較好加密質(zhì)量,擴(kuò)散和混亂特性好,安全性高。

1、相鄰兩個(gè)像素點(diǎn)的相關(guān)性分析

相關(guān)實(shí)驗(yàn)表明,加密后圖像的兩個(gè)相鄰像素點(diǎn)的相關(guān)性越低,則表明安全性越好。本文任意擇取加密前與加密后的圖像中的1800對(duì)相鄰像素點(diǎn),根據(jù)式(10)求得相關(guān)系數(shù)rxy。

其中,菇和y代表的是圖像中相鄰的兩個(gè)像素點(diǎn)的灰度值,n為選取的相鄰點(diǎn)數(shù)量,E(x)為數(shù)學(xué)期望。

明文圖像的相鄰像素值變?yōu)橐粭l對(duì)角線,表明其具有較強(qiáng)的相關(guān)性;而經(jīng)過(guò)本文提出的圖像加密系統(tǒng)加密后,像素值均勻地布滿(mǎn)了整個(gè)灰度平面(,其相關(guān)性顯著降低。

其他兩個(gè)方向的測(cè)試結(jié)果如表1所示。從表1也可以看到,明文圖像具有較高的相關(guān)性,水平方向達(dá)到0.9418,其值很接近1,因此容易受到統(tǒng)計(jì)攻擊;而經(jīng)過(guò)本文提出的加密方法之后的密文圖像的水平方向相關(guān)性約為0.0064,幾乎接近于零,說(shuō)明任意兩個(gè)相鄰的像素點(diǎn)幾乎不相關(guān)。

因此,該研究結(jié)果表明,本文提出的加密方法能夠有效地消除圖像的相關(guān)性,使加密后的圖像具有良好的擴(kuò)散性及較強(qiáng)的抗統(tǒng)計(jì)攻擊能力。

2、密鑰空間分析

較大的密鑰空間能夠有效抵抗窮舉攻擊。因此加密系統(tǒng)的密鑰空間越大,其安全級(jí)別也就越高?;煦缧蛄挟a(chǎn)生過(guò)程中密鑰空間控制參數(shù)包含了初始值(x0,Yo),(x0',Yo'),x0'',以及參數(shù)ao,bo;根據(jù)本文算法描述可知,其密鑰空間包括密鑰,和密鑰Ⅱ。假設(shè)本文算法的計(jì)算精度確定到10-15;則密鑰,的空間大小為(1015)3×(1015)3 =1090,密鑰Ⅱ的空間大小為(1015)=1030。由于這兩個(gè)密鑰是獨(dú)立的,因此密鑰總空間為1090 x1030= 10120>>1060。另外,加之每次循環(huán)過(guò)程中的初始值不一樣,使得密鑰空間更大。如此巨大的密鑰空間足以抵抗窮舉強(qiáng)力攻擊。

3、信息熵

信息熵是衡量加密系統(tǒng)的顯著指標(biāo)之一。由于圖像像素值有28種可能,因此信息熵達(dá)到最大理想值為8。

其中,L為像素值,p( mi)為mi出現(xiàn)的概率。經(jīng)過(guò)本文加密后,通過(guò)式(11)計(jì)算得到圖像的H(m)=7. 99840該值非常接近8。表明本文算法在加密過(guò)程中基本沒(méi)有丟失信息,具有較強(qiáng)的抗熵攻擊性能。

4、密鑰敏感性測(cè)試分析

高效的加密系統(tǒng)應(yīng)該具有敏銳的密鑰敏感性。其中任何一個(gè)初值發(fā)生極其微小的變化(取△= 10-5),例如對(duì)Yo進(jìn)行微小的改動(dòng)后,其所產(chǎn)生的解密圖像與正確解密的密文圖像完全不同??梢?jiàn),該新算法具有敏銳的密鑰敏感性。

小知識(shí)之二維離散

設(shè)(ξ,η)為一個(gè)二維隨機(jī)變量。如果它可能取的值的全體是有限個(gè)或可數(shù)多個(gè)數(shù)組,則稱(chēng)(ξ,η)為二維離散型隨機(jī)變量,稱(chēng)它的分布為二維離散型分布。