基于混沌的彩色圖像加密算法

對(duì)于彩色圖像,每個(gè)圖像的像素由是由R(紅色),G(綠色),B(藍(lán)色)三個(gè)顏色成分組成。與灰度圖像相比,彩色圖像提供更多信息,因此吸引了更多的關(guān)注。一般的彩色圖像加密算法只是把彩色圖像看成由三個(gè)灰度圖像組成,從而對(duì)于每一個(gè)灰度圖像分別進(jìn)行處理,這樣做很大的缺陷是忽略了R,G,B之間的關(guān)系,與灰度圖像加密沒(méi)什么大的區(qū)別。

鑒于此,我們?cè)O(shè)計(jì)了一種新型的彩色圖像加密算法,用混沌系統(tǒng)同時(shí)對(duì)三個(gè)顏色部分加密使得它們之間充分地相互影響,而且運(yùn)用聯(lián)合型的置亂和擴(kuò)散方法減少了R,G,B之間的相關(guān)性。仿真結(jié)果表明此方案能夠有效地給彩色圖像文件加密和抵抗不同類型經(jīng)典的攻擊。

一、混沌系統(tǒng)

一維Logistic系統(tǒng)因?yàn)楹?jiǎn)單且高效,故常用來(lái)產(chǎn)生密鑰流,然而密鑰空間太小,不能抵抗窮舉攻擊,因此安全性不是很好,本文采用CLM(耦合Logistic映射)來(lái)構(gòu)造密碼系統(tǒng):

基于混沌的彩色圖像加密

其中i=1,2,3為空間方向變量,n=1,2,3是時(shí)間方向變量;xni代表狀態(tài)變量,ε≡(0,1)是耦合系數(shù),g(x)是Logistic映射,如公式(2)所示。周期邊界條件xn0 =xn3。_CLM系統(tǒng)有兩個(gè)正的Lyaponuv指數(shù),因此它是混沌的。

基于混沌的彩色圖像加密算法

當(dāng)λ≡(3.57,4)時(shí),Logistic映射可通過(guò)倍周期分叉演進(jìn)至混沌狀態(tài)。

二、基于混沌的彩色圖像加密算法的設(shè)計(jì)與實(shí)現(xiàn)

Step1:準(zhǔn)備工作和密鑰產(chǎn)生。_首先明文圖像可表示成如下形式:

基于混沌的彩色圖像加密算法

其中每一個(gè)顏色分量R,G,B可變成一個(gè)向量,其元素值均在0~255之間。此處我們假設(shè)L=256×256,也就是圖像的大小尺寸均為256×256的大小,否則的話,可以對(duì)圖像做一些分割,最后不足的部分可以進(jìn)行添加。設(shè)定初始參數(shù)λ和初始密鑰值x10,x11_,x12,_迭代公式(1)和(2)l+h次,_而h>0是為了提高初始敏感性,從而獲得三個(gè)序列:

基于混沌的彩色圖像加密算法

可以統(tǒng)一寫成:

基于混沌的彩色圖像加密算法

Step2:初始單獨(dú)擴(kuò)散。

利用下式對(duì)原文進(jìn)行一個(gè)簡(jiǎn)單的擴(kuò)散:

基于混沌的彩色圖像加密算法

其中R0C,G0C,B0C為初始密鑰。最終向量,RnC,GnC,BnC(n=1,2,,....l), a變成三個(gè)矩陣R,G,B,其大小為256×256。

Step3:聯(lián)合置亂。

R⊙G≥B:意思是用R和G去置亂B,相應(yīng)的算法如下:

基于混沌的彩色圖像加密算法

按照以上類似方法再進(jìn)行R⊙G≥B,B⊙R≥G。

Step4:全局?jǐn)U散。

經(jīng)過(guò)Step_3之后,_矩陣R,G,B再次變?yōu)槿齻€(gè)向量,RnP,GnP,BnP然后合并成一個(gè)長(zhǎng)度為3L向量P。_擴(kuò)散方程式如下:

基于混沌的彩色圖像加密算法

Cnow是當(dāng)前的加密值,Pnow是當(dāng)前明文值,C pre是先前加密值,Ppre 是先前明文值,設(shè)置初始值P0=0,C0=0 =,Know為合并的一個(gè)長(zhǎng)度為3L的密鑰流。

最后,再次把圖像整理成R,G,B模式的彩色圖像。

再經(jīng)過(guò)以上四個(gè)步驟,一輪加密完成,根據(jù)時(shí)間安全需要,可以增加加密的輪數(shù),最終得到加密圖像。解密過(guò)程和加密過(guò)程相似,只不過(guò)逆過(guò)程而已。為了更加清楚地了解加密算法,流程圖如圖所示。

基于混沌的彩色圖像加密算法

本文基于耦合混沌產(chǎn)生隨機(jī)性更強(qiáng)的序列,從而設(shè)計(jì)出隨機(jī)性很強(qiáng)的密鑰流,對(duì)彩色圖像三個(gè)顏色組成部分R,G,B進(jìn)行加密,并且考慮它們之間的相關(guān)關(guān)系,然后設(shè)計(jì)了一種初始簡(jiǎn)單擴(kuò)散-聯(lián)合置亂-聯(lián)合擴(kuò)散的方法。

小知識(shí)之耦合

耦合是指兩個(gè)或兩個(gè)以上的電路元件或電網(wǎng)絡(luò)的輸入與輸出之間存在緊密配合與相互影響,并通過(guò)相互作用從一側(cè)向另一側(cè)傳輸能量的現(xiàn)象;概括的說(shuō)耦合就是指兩個(gè)或兩個(gè)以上的實(shí)體相互依賴于對(duì)方的一個(gè)量度。