, ,,,
(南京師范大學(xué)南瑞電氣與自動(dòng)化學(xué)院,江蘇 南京 210046)
隨著通訊技術(shù)的飛速發(fā)展,信息傳輸過程中的保密性逐漸受到重視。近年來,應(yīng)用混沌系統(tǒng)進(jìn)行圖像加密逐漸成為一個(gè)熱門的研究方向。文獻(xiàn)[1]提出了基于統(tǒng)一混沌和Logistic系統(tǒng)的圖像加密算法;文獻(xiàn)[2]使用MD5算法獲得混沌序列的初值,利用了3種混沌系統(tǒng)進(jìn)行加密;文獻(xiàn)[3]提出了基于六維超混沌映射的加密算法,實(shí)現(xiàn)了對(duì)像素的置亂和擴(kuò)散;文獻(xiàn)[4]對(duì)3個(gè)顏色部分同時(shí)加密,減少了R、G、B3個(gè)通道間的相關(guān)性;文獻(xiàn)[5]提出了一種新的四維磁控憶阻模型,并將其應(yīng)用到灰色圖像加密。然而,與灰色圖像相比,彩色圖像能夠表達(dá)更多的信息,將憶阻系統(tǒng)應(yīng)用于彩色圖像加密的研究也不多。
Python是一種解釋性的、具備動(dòng)態(tài)語義的高層語言。它入門容易,語法簡(jiǎn)單,并且在工程和科研領(lǐng)域得到廣泛應(yīng)用。與常用的MATLAB軟件相比,Python在圖像處理方面存在諸多優(yōu)勢(shì)[6]:Python軟件體積小,安裝速度快,且完全免費(fèi);Python語言更加簡(jiǎn)潔易學(xué),可讀性較強(qiáng);Python擁有眾多種類的擴(kuò)展庫,這些擴(kuò)展庫更加輕便,且運(yùn)算速度快,可以滿足圖像加密解密處理的需要;另外,Python語言環(huán)境在網(wǎng)絡(luò)通訊方面功能強(qiáng)大,能夠方便地將加密后的圖片進(jìn)行網(wǎng)絡(luò)傳輸,從而實(shí)現(xiàn)保密通信。
本文利用Python環(huán)境進(jìn)行編程,實(shí)現(xiàn)了一種基于文獻(xiàn)[5]提出的憶阻模型的彩色圖像加密。首先提出了一種較易實(shí)現(xiàn)的加密算法。其次,由于憶阻系統(tǒng)對(duì)初始值的極度敏感性,分析了該系統(tǒng)的多穩(wěn)態(tài)特性。然后,以此為基礎(chǔ)比較不同穩(wěn)定狀態(tài)下生成的密鑰的加密效果,像素直方圖和相鄰像素相關(guān)性等分析表明憶阻系統(tǒng)混沌態(tài)的加密性能要優(yōu)于其周期態(tài)。
基于混沌系統(tǒng)的圖像加密主要指利用混沌系統(tǒng)生成的隨機(jī)序列對(duì)圖像的像素點(diǎn)進(jìn)行某種變換,使得變換后的圖像失去原圖的視覺特征,從而實(shí)現(xiàn)加密。加密算法是研究混沌加密的關(guān)鍵步驟之一。優(yōu)秀的加密算法不僅要具有顯著的加密效果,而且要具有一定的抗攻擊能力。文獻(xiàn)[7]分析了一種一維Logistic混沌圖像加密算法,并將其應(yīng)用于黑白圖像加密。本文選用新型磁控憶阻混沌系統(tǒng),將文獻(xiàn)[7]算法進(jìn)行改進(jìn),并將其應(yīng)用于彩色圖像加密。該加密算法主要由以下4個(gè)步驟構(gòu)成:
1)三基色拆分。對(duì)要加密的圖像的每一個(gè)像素的R、G、B分量進(jìn)行拆分,獲得三基色矩陣IR、IG和IB。
2)密鑰生成。選擇合適的初值x0、y0和z0產(chǎn)生混沌序列xn、yn和zn。將產(chǎn)生的3個(gè)混沌序列的各元素值使用公式(1)轉(zhuǎn)換到0-255之間,組成3個(gè)新的序列Gx、Gy和Gz,用于混沌加密。
(1)
其中round(t)函數(shù)返回將t四舍五入到整數(shù)后的結(jié)果。
3)像素置換。運(yùn)用灰度矩陣Gx、Gy和Gz將三基色矩陣IR、IG和IB按位異或運(yùn)算,完成圖像各點(diǎn)的像素值的置換過程,得到密文矩陣Cx、Cy和Cz。
(2)
其中bitxor(p,q)函數(shù)返回p和q按位異或運(yùn)算后的結(jié)果。應(yīng)注意的是,該函數(shù)在Python中并未直接給出,需要自己編寫。
4)三基色合并。重新合并3個(gè)密文矩陣Cx、Cy和Cz,得到彩色密文圖像。
解密是加密的逆過程。首先拆分密文圖像的R、G、B分量,得到3個(gè)密文矩陣Cx、Cy和Cz。使用與加密過程完全相同的系統(tǒng)和初值x0、y0和z0產(chǎn)生混沌序列xn、yn和zn并使用公式(1)轉(zhuǎn)換到0-255之間,得到序列Gx、Gy和Gz。將Gx、Gy和Gz與Cx、Cy和Cz按位異或得到原來的三基色矩陣IR、IG和IB。最后將解密獲得的三基色矩陣合并,得到原來的明文圖像。
混沌是指非線性動(dòng)力學(xué)系統(tǒng)展現(xiàn)出的類似隨機(jī)的運(yùn)動(dòng)。其具有的確定性、有界不收斂性、非周期性、類隨機(jī)性、初值敏感性等特點(diǎn)[8],可以用于信息安全加密;它能夠通過對(duì)初值的設(shè)置正確完成信號(hào)的還原,因而可以用于對(duì)數(shù)據(jù)的正確解密。和一般的混沌系統(tǒng)相比,憶阻系統(tǒng)擁有更復(fù)雜的動(dòng)力學(xué)行為、更強(qiáng)的類似噪聲,其對(duì)初值的敏感性也更高[9-10],因而抗破譯能力也更好,對(duì)它的研究具備重要的應(yīng)用價(jià)值。
本文選用文獻(xiàn)[5]提出的四維磁控憶阻模型(式(3))來產(chǎn)生密鑰序列進(jìn)行加密操作。
(3)
其中,W(w)=a+3bw2為憶阻的憶導(dǎo),a=-0.4,b=0.8,α=4,β=0.7和ξ=0.1。其中,a和b為憶阻模型參數(shù),他們的取值決定了憶阻模型的有源與無源特性。α、β和ξ由電路模型推導(dǎo)而出。
選擇初始條件(x,y,z,w)=(0.01,0,0,0),該系統(tǒng)能夠產(chǎn)生雙渦卷混沌吸引子,如圖1所示??梢钥闯觯撓到y(tǒng)的混沌吸引子軌跡在特定的吸引域中是遍歷的。
圖1 不同平面上的相圖Fig.1 Phase diagrams on different planes
多穩(wěn)態(tài)是指相同參數(shù)下系統(tǒng)擁有的不同穩(wěn)定運(yùn)行狀態(tài),其軌跡不僅是漸近穩(wěn)定、單一的周期或混沌運(yùn)動(dòng),而是大量不同軌跡共存的特殊形式,系統(tǒng)初始值將決定系統(tǒng)最終處于何種狀態(tài)。由于憶阻系統(tǒng)對(duì)初值極為敏感,本文選擇初始條件的第四項(xiàng)w作為變量,并利用李氏指數(shù)和分岔圖分析當(dāng)初值w變化時(shí),系統(tǒng)的不同運(yùn)行狀態(tài)。
當(dāng)初始條件w∈-1.6,1.6時(shí),系統(tǒng)的李氏指數(shù)譜和xt的分岔圖如圖2所示。當(dāng)w在區(qū)間-1.43,-1.1、-0.57,-0.29、-0.194,0.199和1.09,1.43變化時(shí),系統(tǒng)處于混沌態(tài),此時(shí)最大的李氏指數(shù)大于零;當(dāng)w在區(qū)間-1.09,-0.97、-0.73,-0.58、-0.28,-0.195、0.2,0.393、0.96,1.087和1.44,1.52時(shí),系統(tǒng)處于周期運(yùn)動(dòng)狀態(tài);當(dāng)w在-0.96,-0.74和0.394,0.955變化時(shí),系統(tǒng)為不動(dòng)點(diǎn);當(dāng)w∈-1.6,-1.44∪1.53,1.6時(shí),系統(tǒng)是發(fā)散的。
圖2 初始值w變化的Lyapunov指數(shù)譜和分岔圖Fig.2 Dynamic behaviors with W.R.T. w
從圖3可以看出憶阻系統(tǒng)對(duì)初值的變化極為敏感,并且系統(tǒng)將有無數(shù)種穩(wěn)定運(yùn)行狀態(tài)。為了清晰地觀察系統(tǒng)的多穩(wěn)態(tài),隨機(jī)選擇部分?jǐn)?shù)值進(jìn)行相平面分析。圖3a展示的是5種混沌狀態(tài)共存的現(xiàn)象,黑色單渦卷對(duì)應(yīng)的是w=-1.4,紅色單渦卷對(duì)應(yīng)的是w=-0.35,綠色單渦卷對(duì)應(yīng)的是w=-0.1,紫紅色單渦卷對(duì)應(yīng)的是w=0.15,藍(lán)色單渦卷對(duì)應(yīng)的是w=0;圖3b展示的周期三、周期二、周期一、不動(dòng)點(diǎn)4種狀態(tài)共存的現(xiàn)象,黑色對(duì)應(yīng)的是w=1.075時(shí)的周期三狀態(tài),紅色對(duì)應(yīng)的是w=1.066時(shí)的周期二狀態(tài),綠色對(duì)應(yīng)的是w=0.3時(shí)的周期一狀態(tài),紫紅色對(duì)應(yīng)的是w=0.8時(shí)的不動(dòng)點(diǎn)。
圖3 初始值w變化的共存相圖Fig.3 Coexistence phase diagrams with different initial values of w
彩色圖像由于鮮艷生動(dòng)的特點(diǎn),已經(jīng)成為了人們溝通和交流的重要信息之一。隨著網(wǎng)絡(luò)通信技術(shù)的快速發(fā)展,彩色圖像在存儲(chǔ)和傳輸過程中的安全需求越來越高。如圖4所示,以256×256像素的彩色Lena圖為例分別測(cè)試憶阻系統(tǒng)在周期態(tài)和混沌態(tài)的加密效果,周期態(tài)加密選用初值(x,y,z,w)=(0.01,0,0,0.3),混沌態(tài)選用初值(x,y,z,w)=(0.01,0,0,0)。重點(diǎn)分析密文圖像的像素直方圖和相鄰像素相關(guān)性。從圖4中可直觀地看出,使用周期態(tài)序列加密形成的密文圖像色塊分布不均,仍然保留了部分原圖的特征。而使用周期態(tài)序列加密形成的密文色塊分布均勻,具有明顯的類似隨機(jī)噪聲的特點(diǎn),完全無法分辨出原圖的特征,加密效果良好。
圖4 加密前后對(duì)比Fig.4 Before and after encryption
像素直方圖能夠反映圖像中對(duì)于給定像素值,其像素點(diǎn)的個(gè)數(shù)。像素直方圖分析也是評(píng)判算法加密效果的方法之一。原圖與加密后圖像的像素直方圖如圖5所示。容易看出,原圖的像素直方圖有明顯的分布不均,使用周期態(tài)序列加密形成的密文圖像在R、G、B3個(gè)通道的像素直方圖雖都類似均勻分布,但仍然出現(xiàn)了幾個(gè)較大的峰值。使用混沌態(tài)序列加密形成的密文圖像,其像素直方圖分布更加均勻,各通道均無法統(tǒng)計(jì)出有效的信息。且與原圖相比,密文圖像的像素直方圖發(fā)生了顯著變化,它遮蓋了原本的分布規(guī)律。因此可以說明本文提出的算法能夠抵御較強(qiáng)的統(tǒng)計(jì)分析。
相鄰像素相關(guān)性分析是指運(yùn)用統(tǒng)計(jì)學(xué)的計(jì)算方法對(duì)加密算法的擴(kuò)散性進(jìn)行分析。相關(guān)系數(shù)ρx,y可以利用公式(4)定量計(jì)算,其計(jì)算方法[11]為
圖5 加密前后像素直方圖對(duì)比Fig.5 Comparison of pixel histogram before and after encryption
(4)
相關(guān)系數(shù)ρx,y通常在-1到1之間,其值越接近0,數(shù)據(jù)間的相關(guān)性就越小。
分別選取明文和兩種穩(wěn)態(tài)下的密文圖像R、G、B3個(gè)通道中的點(diǎn)進(jìn)行相鄰像素相關(guān)性計(jì)算后取平均值,結(jié)果如表1所示。從表1看出,原圖的相關(guān)系數(shù)近似為1,像素之間有較大的相關(guān)性,使用憶阻周期態(tài)加密形成的密文圖像相鄰像素相關(guān)性雖然有所改善,卻不如混沌態(tài)序列效果好。憶阻混沌態(tài)加密后密文圖像相鄰像素相關(guān)性幾乎為0,相鄰像素間已基本不存在任何聯(lián)系??梢哉f明混沌態(tài)序列能使原圖像的統(tǒng)計(jì)特征更隨機(jī)地、均勻地?cái)U(kuò)散到密文圖像中,具有更好的加密效果。
以剪切攻擊為例,分析上述加密算法的抗攻擊能力。將使用混沌態(tài)序列加密后的密文圖像右下角切去一塊寬高為均為64像素的正方形,如圖6a所示。觀察圖像解密效果,可以發(fā)現(xiàn),解密后的圖像,在右下方仍保留了一塊無法被識(shí)別的區(qū)域。分析加密算法,不難得知,明文圖像與密文圖像在像素點(diǎn)的空間位置上是一一對(duì)應(yīng)的,這一特性在使用周期態(tài)序列加密時(shí)也并未改變,這使得密文圖像遭遇剪切攻擊后對(duì)解密效果影響較大。經(jīng)過分析,本算法無法抵抗最常見的剪切攻擊,為提高該能力,可以考慮添加混沌置亂的算法,將加密后圖像的每一個(gè)像素點(diǎn)進(jìn)行置亂,以分散剪切攻擊對(duì)圖片局部造成的影響。
圖6 解密前后對(duì)比Fig.6 Before and after decryption
圖7 兩種狀態(tài)解密后對(duì)比Fig.7 Before and after decryption
初值敏感性是混沌系統(tǒng)的重要特性之一,該特性為混沌系統(tǒng)提供了巨大的密鑰空間。解密時(shí)分別對(duì)周期態(tài)和混沌態(tài)的初值中w項(xiàng)增加10-6,即周期態(tài)解密選用初值(x,y,z,w)=(0.01,0,0,0.3+10-6),混沌態(tài)解密選用初值(x,y,z,w)=(0.01,0,0,10-6),解密效果如圖7所示??梢园l(fā)現(xiàn),周期態(tài)解密后除極少數(shù)像素點(diǎn)外,基本還原出了原圖的特征,密鑰敏感性較差,而混沌態(tài)解密后的圖像仍具有隨機(jī)噪聲的特點(diǎn),無法辨認(rèn)出原圖特征,密鑰敏感性較好。
本文利用Python編程環(huán)境,實(shí)現(xiàn)了一種基于四維磁控憶阻模型的圖像加密。首先提出了一種在Python下較易實(shí)現(xiàn)的加密算法。其次,由于憶阻系統(tǒng)對(duì)初始值的極度敏感性,分析了該系統(tǒng)的多穩(wěn)態(tài)特性。然后,以此為基礎(chǔ)比較不同穩(wěn)定狀態(tài)下生成的密鑰的加密效果,重點(diǎn)分析了相鄰像素相關(guān)性、像素直方圖、抗攻擊能力和密鑰敏感性??梢钥闯霾煌姆€(wěn)定狀態(tài)會(huì)產(chǎn)生不同的加密效果,混沌序列加密效果更好,此特性的分析為選擇適合的密鑰提供了方法和支持。此外,憶阻混沌系統(tǒng)加密性能良好,可見其在保密通信中的應(yīng)用前景廣闊。