基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

混沌現(xiàn)象是非線性系統(tǒng)的一種內(nèi)在類似隨機(jī)過程的表現(xiàn),混沌系統(tǒng)產(chǎn)生的混沌信號(hào)具有類似噪聲、結(jié)構(gòu)復(fù)雜以及對(duì)初始條件極端敏感的特性。因此,利用它可以得到具有很好的健壯性和安全性的數(shù)字圖像加密算法?;贚orenz混沌系統(tǒng)的數(shù)字圖像加密算法,應(yīng)用該方法能夠得到較好的加密效果,但由于該方法的加密過程只是在時(shí)域上對(duì)圖像像素進(jìn)行置換加密,因此其安全性還有待于進(jìn)一步改進(jìn)。

本文在已有的數(shù)字圖像加密算法的基礎(chǔ)上,結(jié)合圖像的DCT變換,給出了一種基于頻域加密的數(shù)字圖像加密算法,該方法能有效抵抗已知明文攻擊。實(shí)驗(yàn)結(jié)果表明,該方法具有較好的效率和安全性。

一、加密算法原理

首先給出本文中用到的兩種混沌系統(tǒng):Hyperhenon混沌系統(tǒng)和Logisitc混沌系統(tǒng)。

(1)Hyperhenon混沌系統(tǒng)

給系統(tǒng)表達(dá)式如下:

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

式中:a= 1.76,b=0.1時(shí),該系統(tǒng)處于超混沌狀態(tài),Hyperhenon映射本身就是一種超混沌序列。這里取X0∈(O,1)。

(2)Logistic混沌系統(tǒng)

該系統(tǒng)表達(dá)式如下:

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

式中:3.57<μ<4時(shí),該系統(tǒng)處于混沌狀態(tài),0∈(O,1),這樣Logistic映射可以定義在(o,1)上。

1、圖像預(yù)處理

數(shù)字圖像由圖像像素的灰度值來描述,對(duì)圖像在時(shí)域中進(jìn)行加密,就通過對(duì)像素位置置亂或灰度值的置換來實(shí)現(xiàn)的。為了增強(qiáng)本文所給加密算法的安全性,我們應(yīng)用混沌序列先對(duì)原始圖像進(jìn)行預(yù)處理。這里我們利用Hyperhenon映射產(chǎn)生三維混沌序列,設(shè)原始圖像大小為MxN,相應(yīng)的預(yù)處理算法描述如下:

加密算法1:預(yù)處理算法

步驟1設(shè)定Hyperhenon的初始值x0,y0,z0,系統(tǒng)每次迭代產(chǎn)生3個(gè)混沌值;

步驟2提取3個(gè)混沌值的小數(shù)部分,將每個(gè)小數(shù)的第3位放在一起,組成一個(gè)新的整數(shù)I;

步驟3對(duì)I做取模運(yùn)算,并將結(jié)果轉(zhuǎn)化為二進(jìn)制序列;

步驟4將原始圖像像素值也轉(zhuǎn)化成二進(jìn)制序列,并與步驟3得到的二進(jìn)制序列做異或運(yùn)算;

步驟5將所得的結(jié)果再轉(zhuǎn)化成十進(jìn)制,就完成了圖像的預(yù)處理加密。

由以上方法得到的加密圖像,其根本原理還是通過做異或運(yùn)算來置換像素值,這種加密方法安全性不高,很難抵抗已知明文攻擊。因此,我們需要在圖像離散余弦變換(DCT)域中對(duì)其進(jìn)一步加密。與時(shí)域加密相比,頻域上的加密更具安全性。

2、圖像加密算法

在以上預(yù)處理基礎(chǔ)上,我們利用式(2)產(chǎn)生一維混沌序列L=(l1,l2,l3,…lm×n),該序列用來產(chǎn)生置亂矩陣。相應(yīng)的頻域加密算法描述如下:

算法2:DCT域加密算法

步驟1先對(duì)預(yù)處理后的圖像做DCT變換,設(shè)其DCT系數(shù)矩陣為Am×n。

步驟2給定一個(gè)自然數(shù)序列C={c1,c2,c3,…,cm×n},初始值為{1,2,3--,MxN};

步驟3設(shè)當(dāng)前待處理的位置為C序列中的Ci,初始化為Cm×n,用來替換Ci的C序列中的位置Cj為:j= [lixMxN],交換Ci和Cj的位置;

步驟4重復(fù)步驟3,直到置亂完成整個(gè)序列;

步驟5將得到的序列按行排列成為矩陣,即為所求的魔方矩陣,用此矩陣對(duì)預(yù)處理圖像的DCT系數(shù)矩陣進(jìn)行置亂,從而完成圖像頻域的加密。

通過對(duì)以上置亂矩陣生成算法分析可知,該算法的時(shí)間復(fù)雜度是線性的,所以具有較高的加密效率。該算法的解密過程與加密過程相似,只是在步驟3中應(yīng)該先從lMxN開始恢復(fù)。

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

為了驗(yàn)證以上算法的加密效果,本文在Pentium lV PC機(jī)上采用Matlab6.5平臺(tái)對(duì)其進(jìn)行仿真實(shí)驗(yàn)。

1、圖像加密效果評(píng)價(jià)方法

為了對(duì)圖像加密的效果進(jìn)行衡量,引入以下的評(píng)價(jià)指標(biāo)。設(shè)原始圖像表示為G,加密圖像表示為s,用si,Sj分別表示原始圖像和加密圖像的像素灰度值。

(1)信息熵:信息熵度量出圖像中灰度值的分布,灰度分布越均勻,圖像信息熵越大,反之信息熵越小。當(dāng)且僅當(dāng)所有像素值出現(xiàn)的概率相同時(shí),信息熵取得最大值。信息熵的表達(dá)式為:

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

式中:X——隨機(jī)變量,p(Xi) -xi出現(xiàn)的概率,在本文中表示像素灰度值。

(2)灰度變化平均值:圖像加密后,許多灰度值都發(fā)生變化,為了度量這種變化的程度,引入灰度變化平均值。對(duì)于一個(gè)加密圖像來說,并不是這個(gè)值越大越好或越小越好。當(dāng)兩個(gè)圖像的灰度值均勻變化時(shí),圖像的加密效果較好,安全性較高。最理想的情況是灰度變化平均值等于K/2暖為灰度圖像的灰度級(jí)數(shù)?;叶茸兓骄档谋磉_(dá)式為:

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

(3)相鄰像素相關(guān)性:圖像加密的目標(biāo)之一就是減小相鄰像素相關(guān)性,主要包括:水平像素、垂直像素和對(duì)角線像素間的相關(guān)性。顯然相關(guān)性越小,說明圖像加密效果越好,安全性越高。像素相關(guān)性計(jì)算方法如下:

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

其中:

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

2、仿真結(jié)果

以下仿真實(shí)驗(yàn)中,原始圖像大小為256x256,Hyperhenon混沌映射的初始條件為Xo=0.5286.yo=0.1234,z0=0.644;Logistic混沌映射初始條件為Xo=0.4157,μ=4。仿真結(jié)果如圖1~圖5所示。

基于Hyperhenon映射的數(shù)字圖像DCT域加密技術(shù)

3、加密效果分析

根據(jù)以上給出的加密評(píng)價(jià)指標(biāo):

(1)由式(3)計(jì)算出最終加密圖像的信息熵H=6.145513,這個(gè)值較接近該信息熵的理論最大值8(2a- 256級(jí)灰度值)。

(2)由式(4)計(jì)算出原始圖像與最終加密圖像的灰度變化平均值GAVE=90.400452,這個(gè)值較接近最理想的灰度變化平均值128 (/U2=128)。

(3)由式(5)、(6)計(jì)算出水平相鄰像素相關(guān)系數(shù)ph=0.143881,垂直相鄰像素相關(guān)系數(shù)pv=0.623232。兩種相關(guān)系數(shù)都較小,滿足一定的不相關(guān)性。尤其水平相關(guān)系數(shù),其值較接近零,說明水平像素間接近正交。

根據(jù)仿真實(shí)驗(yàn)結(jié)果可知,加密結(jié)果圖像的灰度分布均勻,灰度變化平均值較理想,相鄰像素相關(guān)性小。從能量分布的角度分析,頻域的加密擾亂了原始圖像的能量分布。圖3中白點(diǎn)即為圖像低頻區(qū)也是能量集中區(qū),圖4中,在置亂系數(shù)矩陣的情況下,白點(diǎn)分布變化為若干條帶狀分布,因此該算法的加密效果較好,安全性較高。

實(shí)驗(yàn)結(jié)果表明,在不知精確密鑰的情況下,無法解密出正確圖像。同時(shí),即使攻擊者解密了頻域圖像,也很難在時(shí)域中解密出原始圖像。這也是該算法的優(yōu)點(diǎn)之一。實(shí)驗(yàn)結(jié)果和評(píng)價(jià)數(shù)據(jù)表明,本文給出的加密方法是可行的,加密效果良好,密鑰空間大,安全性較高,能夠有效抵抗已知明文攻擊。

小知識(shí)之DCT變換

DCT變換的全稱是離散余弦變換(Discrete Cosine Transform),是指將一組光強(qiáng)數(shù)據(jù)轉(zhuǎn)換成頻率數(shù)據(jù),以便得知強(qiáng)度變化的情形。