吳天釩 WU Tian-fan;周磊 ZHOU Lei;趙棟 ZHAO Dong
(①南通中學(xué),南通 226001;②南通大學(xué)信息科學(xué)技術(shù)學(xué)院,南通 226019)
隨著互聯(lián)網(wǎng)的迅猛發(fā)展,大量的數(shù)字圖像信息通過網(wǎng)絡(luò)進(jìn)行傳輸,數(shù)字圖像的安全性問題逐漸引起了人們的關(guān)注?;煦缦到y(tǒng)由于其優(yōu)良特性,已被引入至密碼學(xué)領(lǐng)域。自英國數(shù)學(xué)家Matthews提出混沌加密的思想以來[1],現(xiàn)已提出了多種混沌圖像加密算法,主要為圖像位置置亂[2,3]、圖像像素擴(kuò)散[4],以及位置置亂與像素擴(kuò)散相結(jié)合[5]的三大類圖像加密算法,但研究發(fā)現(xiàn)現(xiàn)有算法還有待提高:采用的混沌系統(tǒng)維數(shù)較低而造成的安全性欠缺、難以抵抗惡意窮舉攻擊;圖像位置置亂與像素擴(kuò)散兩個過程完全獨(dú)立,沒有相互耦合嵌套;現(xiàn)有的位置置亂與像素擴(kuò)散過程通常僅依賴混沌信號,沒有建立與原始圖像特征值的關(guān)聯(lián),從而導(dǎo)致混沌圖像加密算法有待進(jìn)一步深入研究。
本文利用混沌信號的優(yōu)良性能,研究提出了一種新的彩色圖像混沌加密算法,通過算法測試和性能分析發(fā)現(xiàn),所提算法在直方圖、密鑰空間、密鑰敏感性和相關(guān)性方面具有較強(qiáng)的保密性。
算法采用圖像位置置亂(圖像像素抽取、填放)與像素擴(kuò)散相互嵌套的結(jié)構(gòu):首先將原始圖像分解為R、G、B三基色;然后利用外部加密密鑰以及原始圖像的特征值,根據(jù)自定義抽取規(guī)則進(jìn)行數(shù)據(jù)抽?。ㄖ脕y),分別得到R、G、B基色像素序列;隨后建立原始圖像(內(nèi)部密鑰)與系統(tǒng)初值的關(guān)系,利用超混沌系統(tǒng)產(chǎn)生混沌信號,進(jìn)行像素擴(kuò)散運(yùn)算;再將擴(kuò)散后圖像R、G、B基色的像素值,根據(jù)自定義填放規(guī)則進(jìn)行數(shù)據(jù)填放(置亂),得到三基色像素矩陣;最后將R、G、B基色像素矩陣組合得到密文圖像。
統(tǒng)一混沌系統(tǒng)是Lorenz系統(tǒng)、Chen’s系統(tǒng)和Lü系統(tǒng)的統(tǒng)一體,同時引入非線性控制器x4和非線性時滯項函數(shù),得到一個新型的統(tǒng)一超混沌系統(tǒng),以產(chǎn)生混沌加密密鑰流,其形式表示如式(1):
其中a,b,c和τ是系統(tǒng)參數(shù),當(dāng)a=0.9,b=0.3,c=3.1,τ=0.01時,系統(tǒng)具有混沌特性,其混沌吸引子見圖1。其中,初值(x0,y0,z0,w0)和系統(tǒng)參數(shù)(a,b,c,τ)可選作為混沌加密密鑰。
圖1 混沌吸引子
為了不失普遍性,假設(shè)原始彩色圖像P的大小為m×n,其加密算法如下。
①將彩色圖像P分解為R、G、B三基色,表示為三基色矩陣PR、PG、PB,并建立原始圖像特征值(SUMR、SUMG、SUMB),即內(nèi)部加密密鑰,其中,
②給定外部加密密鑰—系統(tǒng)初值(x0,y0,z0,w0)和參數(shù)(a,b,c,τ),根據(jù)原始圖像特征值對初值進(jìn)行微調(diào),
利用微調(diào)后的系統(tǒng)初值(x0,y0,z0,w0)、系統(tǒng)參數(shù)(a,b,c,τ),以及迭代步長為ΔT,對如公式(1)所示的統(tǒng)一超混沌系統(tǒng)進(jìn)行離散化迭代,得到混沌序列x{x0,x1,x2,…,xi,…}、y={y0,y1,y2,…,yi,…},z={z0,z1,z2,…,zi,…}和w={w0,w1,w2,…,wk,…}。
③給定外部加密密鑰—置亂初值P_key,令P_tmp=P_key+SUMR+SUMG+SUMB,根據(jù)自定義的抽取規(guī)則:當(dāng)mod(P_tmp,4)=0時,從左上角按照順時針方向進(jìn)行數(shù)據(jù)抽取;當(dāng)mod(P_tmp,4)=1時,從右上角按照逆時針方向進(jìn)行數(shù)據(jù)抽取;當(dāng)mod(P_tmp,4)=2時,從左下角按照順時針方向進(jìn)行數(shù)據(jù)抽?。划?dāng)mod(P_tmp,4)=3時,從右下角按照逆時針方向進(jìn)行數(shù)據(jù)抽取;得到R、G、B三基色的像素序列SR、SG、SB。
④給定外部加密密鑰—擴(kuò)散初值C_tmp,像素序列SR、SG、SB中元素并行逐個進(jìn)行如下擴(kuò)散加密。
首先,將4個混沌序列中混沌信號(x1234+k,y1234+k,z1234+k,w1234+k)進(jìn)行降序排列,得到排序后的混沌信號,同時進(jìn)行整數(shù)化處理,得到{X0,X1,X2,…}、{Y0,Y1,Y2,…}、{Z0,Z1,Z2,…}。
然后,將R、G、B三基色的像素序列進(jìn)行如式(2)的加密運(yùn)算。
最后,對C_tmp進(jìn)行更新,即C_tmp=CC3k,循環(huán)上述過程直至完成所有像素的擴(kuò)散運(yùn)算,從而得到擴(kuò)散加密后的圖像加密序列CC={CC1,CC2CC3,…,CC3mn-2,CC3mn-1CC3mn}。
⑤自定義數(shù)據(jù)填放規(guī)則,即從左上角位置開始按照“Z”順序進(jìn)行數(shù)據(jù)填放,得到三基色拼接的密文矩陣[R,G,B],其大小為m×3n,從而得到密文圖像C。
彩色圖像解密是“圖像像素抽取—圖像像素擴(kuò)散—圖像像素填放”這一圖像加密的逆過程。
密文圖像的直方圖應(yīng)呈均勻分布,以防止攻擊者從中獲取相關(guān)圖像信息。由圖2可以看出,加密后的密文圖像呈現(xiàn)出雜亂無章的特點(diǎn),且其R、G、B三基色直方圖分布均勻,攻擊者無法從中統(tǒng)計出任何有用信息;解密后可恢復(fù)原始圖像。
圖2 原始圖像、密文圖像和解密圖像的直方圖
圖像加密密鑰主要包括統(tǒng)一超混沌系統(tǒng)的初值(x0,y0,z0,w0)、參數(shù)(a,b,c,τ)、迭代步長為ΔT、置亂初值P_key以及擴(kuò)散初值C_tmp。按計算精度為10-16,那么密鑰空間至少達(dá)到1024×10-16×8,足以抵抗惡意窮舉攻擊。
仍以Pallon圖像為例,當(dāng)僅改變單個加密密鑰,進(jìn)行圖像混沌加密得到密文圖像,并與圖2(b)對比,得到誤差圖像分別為圖3(a)、圖3(b),可見算法對加密密鑰的敏感性很高;如圖3(c)、圖3(d)所示,當(dāng)加、解密密鑰不一致時,即使是細(xì)微差別,解密圖像為雜亂無章的圖片信息。
圖3 密鑰敏感性分析圖
表1給出了原始圖像和加密圖像分別在水平、垂直、對角線、反對角線方向相鄰像素點(diǎn)的相關(guān)系數(shù),可見,經(jīng)圖像加密后,密文圖像中相鄰像素之間的相關(guān)性大大降低,具有抗統(tǒng)計攻擊性能。
表1 原始圖像、密文圖像相鄰像素點(diǎn)的相關(guān)系數(shù)
混沌圖像加密技術(shù)是一種有效的圖像數(shù)據(jù)安全傳輸?shù)姆椒?,在網(wǎng)絡(luò)信息安全領(lǐng)域得到廣泛研究。本文基于新型的統(tǒng)一超混沌系統(tǒng),采用“圖像像素抽取—圖像像素擴(kuò)散—圖像像素填放”的加密方案,提出了一種新的彩色圖像混沌加密算法,通過算法性能分析發(fā)現(xiàn),所提算法在直方圖、密鑰空間、密鑰敏感性和相關(guān)性方面具有較強(qiáng)的保密性。