彩色圖像小波域加密算法中三維Lorenz混沌系統(tǒng)的應(yīng)用

由于高維混沌系統(tǒng)具有更高的安全性,且密鑰空間更大,我們提出一種基于三維Lorenz混沌系統(tǒng)的彩色圖像小波域加密算法,該加密軟件首先對圖像進(jìn)行小波處理,對得到的小波域系數(shù)矩陣進(jìn)行多次分塊置亂,以提高置亂效率;然后采用擴(kuò)散和置亂同時進(jìn)行的方式減少算法的遍歷次數(shù)。

一、Lorenz混沌映射

混沌現(xiàn)象是出現(xiàn)在非線性動力系統(tǒng)中的確定性的、類似隨機(jī)的過程,這種過程既非周期性的又不收斂,并且對初始值有極其敏感的依賴性。通過自身對初始值和結(jié)構(gòu)參數(shù)的敏感依賴性,系統(tǒng)可以提供數(shù)量眾多、非相關(guān)、類隨機(jī)而又確定可再生的信號.由于上述特點(diǎn),混沌已廣泛應(yīng)用于保密通訊中,同時也可以作為加密序列。

Lorenz混沌具有很好的隨機(jī)性,基于此混沌序列的加密系統(tǒng)可以獲得更好的安全性。由Lorenz混沌系統(tǒng)生成的混沌序列具有以下優(yōu)點(diǎn):

(1)系統(tǒng)結(jié)構(gòu)較低維系統(tǒng)復(fù)雜,系統(tǒng)變量的實(shí)數(shù)值序列更不可測;

(2)通過對系統(tǒng)輸出的實(shí)數(shù)值混沌序列進(jìn)行處理,可以產(chǎn)生單變量或多變量組合的加密混沌序列,使得加密序列的設(shè)計(jì)非常靈活;

(3)系統(tǒng)的初值和系統(tǒng)參數(shù)均可以作為生成加密混沌的種子密鑰,若設(shè)計(jì)過程中再加入部分控制變量,加密算法的密鑰空間將大大高于低維混沌系統(tǒng)。

Lorenz混沌映射由美國氣象學(xué)家Lorenz在實(shí)驗(yàn)過程中提煉得出,當(dāng)參數(shù)σ、r和b分別取10、28和8/3時,Lorenz混沌映射模型處于典型的混沌狀態(tài)?;诔跏紬l件,通過四階Runge-Kutta迭代作用可以產(chǎn)生三維混沌序列x(i)、y(i)和z(i),該序列是非周期性的,且對初值非常敏感。

二、加密方案設(shè)計(jì)

1、加密算法原理

基于頻域的圖像加密原理首先對彩色圖像進(jìn)行R、G和B三基色分離,然后對轉(zhuǎn)換成的二維灰度圖像進(jìn)行小波變換,得到小波域系數(shù);再把混沌系統(tǒng)的初始值和參數(shù)作為密鑰,將密鑰帶入混沌系統(tǒng)使之產(chǎn)生無序?qū)崝?shù)序列,并對實(shí)數(shù)序列進(jìn)行預(yù)處理;用所得的無序?qū)崝?shù)序列根據(jù)一定的規(guī)則對小波域系數(shù)進(jìn)行置亂,接著對置亂后的數(shù)據(jù)矩陣進(jìn)行異或運(yùn)算,最終得到加密圖像。

2、彩色圖像分離

為了降低算法的計(jì)算強(qiáng)度和空間需求,可把三維彩色圖像轉(zhuǎn)化為二維空間的灰度圖像進(jìn)行處理。將輸入的Pm×n×3原三維彩色圖像分離成R、G和B三基色分量PR、PG和PB。

3、小波域系數(shù)獲取

應(yīng)用于數(shù)字圖像的離散小波變換(DiscreteWavelet Transform,DWT)可以視為利用低通濾波器和高通濾波器將數(shù)字圖像在頻域上分解為低頻和高頻兩類系數(shù)。低頻類系數(shù)包含了圖像的大部分信息,能量較為集中,對這一部分系數(shù)進(jìn)行加密即可得到較好的圖像加密效果。

輸入PR、PG和PB共3個灰度圖像矩陣,分別對其進(jìn)行db1一級小波分解.將所得小波域系數(shù)的低頻系數(shù)矩陣進(jìn)行置亂加密,而高頻系數(shù)則不做改變。

設(shè)產(chǎn)生的低頻系數(shù)矩陣為DR(l,k),DG(l,k)和DB(l,k),為了計(jì)算方便,本研究將這3個矩陣轉(zhuǎn)化為一維序列DR(i),DG(i)和DB(i),其中i=/xk。

4、混沌序列的預(yù)處理

采用上文中提到的Loenz混沌映射產(chǎn)生所需的實(shí)數(shù)序列{x(i)、y(i)和z(i)},該序列易受線性預(yù)測攻擊,且序列間的相關(guān)特性較高,故在對圖像進(jìn)行加密前需要對產(chǎn)生的原始序列進(jìn)行置亂預(yù)處理。

置亂預(yù)處理的具體步驟為:

(1)將序列值同時擴(kuò)大10的m次方倍,m≥6。

(2)利用round函數(shù)求取步驟(1)中產(chǎn)生的每個數(shù)值的最近整數(shù),與原數(shù)值作差,得出值域在(-0.5,0.5)之間的新序列。

數(shù)學(xué)計(jì)算模型為,根據(jù)式(2)產(chǎn)生的值作如下處理,使其成為適合異或的操作數(shù),得到擴(kuò)散預(yù)處理的計(jì)算模型式(3)中:mod函數(shù)是取模運(yùn)算,得出序列{cx(i),cy(i),cz(i)},用于下文中的異或操作。

5、加密模版

本研究采用小波域系數(shù)值置亂和擴(kuò)散同步進(jìn)行的方法,即每置亂1個系數(shù)后,就對該置亂系數(shù)進(jìn)行異或擴(kuò)散,置亂與擴(kuò)散的過程(僅用R分量舉例說明)為:

(1)設(shè)m為Dr(i)序列的長,k'=l,l’=log2(m)-1,n=l'。

(2)將Dr(i)序列分成2n×2n大小的序列段,每)個序列段用FR(i)來表示。

(3)將由式(2)所得的預(yù)處理過的三維實(shí)數(shù)序列{x(i)、y(i)和z(i)}從小到大進(jìn)行排序,在每個序列的排序過程中,根據(jù)其序列地址變化的映射生成一個由序列地址組成的序列Kx(i),將該序列作為
對步驟(2)中生成的小波域低頻系數(shù)序列段進(jìn)行置亂的置亂索引,即Dr(i)表示原低頻系數(shù)序列中第i段,則FR (Kx(i))表示置亂后的FR(i)。

(4)令這時程序回到步驟(2),進(jìn)行循環(huán)操作,直到k'≤l'。當(dāng)k'=l'時,F(xiàn)R(i)的大小為2×2。

(5)對分段置亂后的Dr(i)進(jìn)行整體置亂,每置亂一個系數(shù)值后即與式(3)中生成的操作數(shù)序列進(jìn)行異或操作。

(6)輸出合成彩色圖像,完成加密。

(7)解密算法為加密算法的逆過程。

該加密模版對小波域系數(shù)進(jìn)行了多次置亂,與單次置亂算法相比較,增大了解密的難度,且置亂時先對分成的序列段進(jìn)行置亂,節(jié)省了計(jì)算時間。最后擴(kuò)散與置亂同時進(jìn)行,減少了算法對加密圖像的遍歷次數(shù)。

三、加密算法仿真實(shí)驗(yàn)

1、實(shí)驗(yàn)過程

選用大小為256×256×3、灰度值為256色的Lena.jpg作為實(shí)驗(yàn)圖像,利用Matlab7.0為平臺進(jìn)行實(shí)驗(yàn),Lorenz混沌系統(tǒng)的3個初值分別取值為0.182 505 937 4、0.362 709 148 5和0.251940 736 8,參數(shù)取值為a=35,b=10,c=l,d=10和u=8,積分步長為0.001,采用四階Runge-Kutta算法解微分方程,本研究的最終加密效果如圖l所示,由圖1可見,算法已經(jīng)完全隱藏了原始圖像,看不出原始圖像的輪廓。

2、運(yùn)算時間

采用本研究提出的算法與之前提出的算法對同一彩色Lena圖像在同一設(shè)備上運(yùn)行計(jì)算,本研究提出的算法在運(yùn)行時間上比其他2種算法節(jié)省多于1.080 0 s的時間,達(dá)到了研究所期望的效果,提出的算法為直接在空域上對圖像進(jìn)行置亂和擴(kuò)散;提出的算法則是在對圖像進(jìn)行小波處理的基礎(chǔ)上,對小波域系數(shù)進(jìn)行置亂和擴(kuò)散,后2種算法采用了相同的置亂方法。

3、灰度直方圖分析

與分布不均勻的原始直方圖相比,加密后的直方圖平坦且灰度值呈均勻分布.這表明密文的像素值在0—255范圍內(nèi)的取值概率均等,即對整個密文空間呈均勻分布特性,攻擊者無法從灰度值的特征中獲取有效信息,因而可以有效地防止統(tǒng)計(jì)攻擊,加強(qiáng)了圖像的安全性。

4、密鑰敏感性測試

一個好的加密系統(tǒng)應(yīng)該有足夠大的密鑰空間來防止攻擊者暴力破解。本研究提出的算法中,密鑰包括了x(0)、y(0)和z(0),以及對序列預(yù)處理時的m值,任何一個值改變都不能正確解密圖像。

為了測試本研究的密鑰敏感性,采取2組密鑰對加密圖像進(jìn)行解密,圖4a為原始密鑰即x(0)=0.182 605 937 4,其他初始值不變時的解密圖像,圖4b為將x(0)的值改變?yōu)?.182 605 937 5,其他初始值不變時的解密圖像,可以看出,即使在密鑰發(fā)生微小改變時,也不能得到正確的解密圖像。

5、抗干擾測試

圖像在處理、保存和傳輸過程中經(jīng)常會受到噪聲的干擾,一個好的加密算法應(yīng)該具有良好的抗干擾能力。傳輸過程中在可能引入的隨機(jī)噪聲引起損失或加密圖像部分?jǐn)?shù)據(jù)缺損后,圖像應(yīng)均能正確解密,恢復(fù)出原圖像。從實(shí)驗(yàn)結(jié)果看,本研究算法具有較好的抗干擾能力。

圖5b為加密圖像被剪切24%后的解密圖像,圖像存在噪點(diǎn),但圖像特征與細(xì)節(jié)效果仍然很明顯,效果良好,圖5d為加密圖像被剪切50%后的解密圖像,圖像存在大量的噪點(diǎn),個別細(xì)節(jié)失真,但圖像特征依舊明顯。圖5f是受到5%高斯噪聲污染后的解密圖像,可以看出噪聲污染對原圖像幾乎沒有影響。

小知識之小波變換

小波變換是一種新的變換分析方法,它繼承和發(fā)展了短時傅立葉變換局部化的思想,同時又克服了窗口大小不隨頻率變化等缺點(diǎn),能夠提供一個隨頻率改變的“時間-頻率”窗口,是進(jìn)行信號時頻分析和處理的理想工具。