王曉飛,王光義
(杭州電子科技大學(xué)電子信息學(xué)院,浙江杭州310018)
隨著以計(jì)算機(jī)和網(wǎng)絡(luò)通信技術(shù)為代表的信息技術(shù)的不斷發(fā)展和飛速普及,信息安全已經(jīng)成為阻礙經(jīng)濟(jì)持續(xù)穩(wěn)定發(fā)展和威脅國(guó)家安全的一個(gè)重要問(wèn)題,對(duì)信息進(jìn)行加密是用來(lái)保證信息安全的一種必要手段[1,2]。近年來(lái)的研究表明,利用混沌信號(hào)可以構(gòu)造出優(yōu)良的加密系統(tǒng)。但是以往的混沌加密技術(shù)大都基于低維混沌系統(tǒng),而低維混沌加密系統(tǒng)存在參數(shù)和變量少,密鑰空間小,抗破譯能力差,安全性不高的缺點(diǎn)。進(jìn)幾年,不斷有研究學(xué)者提出來(lái)新的五維混沌系統(tǒng),基于五維混沌系統(tǒng)的圖像加密算法,目前還比較少,文獻(xiàn)3中提出來(lái)一種行列置亂和象素加密的五維超混沌系統(tǒng)加密算法。而本文采用全局置亂和分塊象素加密的方法,具有更高的算法復(fù)雜度,實(shí)驗(yàn)表明該算法具有良好的加密效果,密鑰空間大,抗攻擊力強(qiáng),加密圖像象素值分布隨機(jī),具有較高的安全性。
文獻(xiàn)4提出了五維混沌系統(tǒng):
當(dāng) k1= -1,當(dāng) k2= -2 時(shí)系統(tǒng)的 Lyapunov指數(shù)分別為 λ1=1.276 95,λ2=0,λ3= -0.984 16,λ4=-2.596 86,λ5=-19.697 8,式1有一個(gè)正的Lyapunov指數(shù),因此該五維系統(tǒng)是一個(gè)混沌系統(tǒng)。
假設(shè)原始圖像大小為M×N,設(shè)計(jì)如下加密算法,由置亂和替代兩個(gè)階段完成。
(1)產(chǎn)生混沌序列。給定五維混映射的初值,迭代時(shí)間步長(zhǎng),采用四階五階Runge-Kutta算法解式1得到5個(gè)長(zhǎng)度為M×N的混沌序列X(i)。
(2)從上述五維混沌序列中選取其中的一維混沌序列X(i),將X(i)按照從大到小的順序排列成有序列E(i),由于混沌序列的無(wú)周期性,可知X(i)中的任一元素Xi與E(i)中唯一的元素Ei對(duì)應(yīng),可以用另一索引矩陣H(i)記錄Ei在X(i)序列中的位置i,如圖1所示。
圖1 索引矩陣生成示意圖
(3)將原始二維明文圖像轉(zhuǎn)化成一維。可按照典型的二維行程編碼排列方式將原始明文二維圖像轉(zhuǎn)化成為一維數(shù)組N1。
(4)對(duì)照索引矩陣H(i)和下式將N1中的元素映射到一維矩陣N2中,完成對(duì)一維數(shù)組N1的置亂。
(5)按照步驟2的逆過(guò)程,將N2由一維轉(zhuǎn)化成二維,生成新的置亂后的圖像I。
(1)在另外4個(gè)長(zhǎng)度為M×N的混沌序列分別取出長(zhǎng)度為(M×N)/4的Y(i),Z(i),U(i),V(i)序列,其中 i=1,2,3,…,(M ×N)/4。取 Y(i),Z(i),U(i),V(i)序列中的每個(gè)元素進(jìn)行變換如:
式中,f()表示向0取整,abs()表示求絕對(duì)值,mod()表示求余數(shù),新生成的矩陣Y(i)即為加密序列。
可以取出序列中每個(gè)元素小數(shù)點(diǎn)后的3位數(shù)字組成整數(shù)。將該整數(shù)與256的余數(shù)覆蓋原來(lái)序列中該位置的數(shù)據(jù)如:
至此上述四個(gè)序列中的元素值都介于[0,255]之間。
(2)按照置亂算法中步驟2的逆過(guò)程,將得到的新的Y(i),Z(i),U(i),V(i)序列轉(zhuǎn)化成二維的矩陣 Y,Z,U,V。
(3)將置亂后的圖像 I平均劃分成4塊I1,I2,I3,I4,如圖2所示:
圖2 置亂后圖像I的分割方法
(4)將I1,I2,I3,I4中的元素值與Y,Z,U,V中相同位置元素進(jìn)行異或運(yùn)算,對(duì)象素值進(jìn)行替代加密如:
式中,I'(x,y)表示加密后的密文象素值,I(x,y)表示置亂后第一塊區(qū)域象素值,⊕表示異或運(yùn)算。
(5)將進(jìn)行異或得到的圖像重新拼接成完整的密文圖像,至此完成加密的全過(guò)程。
圖像的解密算法是加密算法的逆過(guò)程,在確定系統(tǒng)初值和積分步長(zhǎng)后,按照加密算法的逆過(guò)程即可解密,在此不再詳述。
利用Matlab7.0平臺(tái),圖像大小為256×256,灰度級(jí)L=256的Lena圖像進(jìn)行實(shí)驗(yàn)(M=256,N=256),取五維混沌系統(tǒng)的初值分別為 x0=0.835 462,y0=1.752 356,z0=0.643 875,u0=0.957 612,v0=0.417 893,積分步長(zhǎng)為0.001,采用四階五階Runge-Kutta算法解微分式1,按照加密步驟進(jìn)行加密,結(jié)果如圖3所示。
圖3 加解密前后對(duì)比
由圖3(c)、(e)可知,加密后的圖像完全看不出原始明文圖像的輪廓,而正確解密的圖像與明文圖像沒(méi)有差別,由此可知圖像的加解密效果良好。由圖3(b)、(d)加密前明文圖像的象素值分布數(shù)目不均勻,而加密后密文的象素值均勻分布在[0,255]范圍內(nèi),所以明文的統(tǒng)計(jì)特性擴(kuò)散到了密文的均勻分布中,大大降低了明文象素值之間的相關(guān)性,能夠良好的抵抗統(tǒng)計(jì)分析。
本文提出的解密方案對(duì)初始參數(shù)的敏感性,以及這些參數(shù)可以用來(lái)作為密鑰的假設(shè),都得到了驗(yàn)證,如圖4所示:
圖4(a)是將解密方案中的五維混沌系統(tǒng)初值x0=0.835 462改為x0=0.835 462 000 001,而其余參數(shù)均保持不變的情況下得到的解密圖像,圖4(b)是其對(duì)應(yīng)的灰度直方圖。
圖4 密鑰敏感性測(cè)試
本文提出來(lái)一種新的基于五維混沌系統(tǒng)序列的圖像加密算法,該算法中的圖像全局置亂和分塊加密均基于五維混沌系統(tǒng)。仿真實(shí)驗(yàn)和分析表明,該算法密鑰空間大,抗攻擊力強(qiáng),密文圖像象素值分布隨機(jī),可以有效的抵御統(tǒng)計(jì)分析攻擊,具有較高的安全性。
[1] Cheng Howard,Li Xiaobo.Patial encryption of compressed images and vides[J].IEEE Transcations on Signal Processing,2000,48(8):2 439 -2 551.
[2] Dang P P,Chan P M.Image encryption for secure Internet multimedia applications[J].IEEE Transcations on Consumer E-lectronics,2000,46(3):395 -403.
[3] 王玉惠,陳哨東.基于五維超混沌系統(tǒng)的全球信息柵格圖像加密算法[J].吉林大學(xué)學(xué)報(bào),2010,29(1):51-56.
[4] 韓峰,唐駕時(shí).一個(gè)五維受控混沌系統(tǒng)的動(dòng)力學(xué)行為[J].動(dòng)力學(xué)與控制學(xué)報(bào),2010,8(3):205-209.
[5] 李鵬,田東平.基于超混沌序列的數(shù)字圖像加密算法[J].微電子學(xué)與計(jì)算機(jī),2008,25(3):4-7.