張錯玲,韋良芬
(安徽三聯(lián)學(xué)院計算機(jī)工程學(xué)院,安徽 合肥,230601)
?
基于Lorenz超混沌理論的數(shù)字圖像加密算法研究
張錯玲,韋良芬
(安徽三聯(lián)學(xué)院計算機(jī)工程學(xué)院,安徽 合肥,230601)
在經(jīng)典的Lorenz混沌系統(tǒng)基礎(chǔ)上經(jīng)過一定的變換得到Lorenz 4D超混沌系統(tǒng),接著描述Lorenz 4D超混沌系統(tǒng)的加密算法,并給出了仿真實驗結(jié)果及對結(jié)果的安全性分析.
混沌;Lorenz系統(tǒng);圖像加密;4D超混沌系統(tǒng)
隨著計算機(jī)技術(shù)、信息技術(shù)和網(wǎng)絡(luò)通信技術(shù)的迅速發(fā)展,利用網(wǎng)絡(luò)來傳輸數(shù)字化的信息已經(jīng)變得越來越普遍,這些信息不僅包括文本類信息,還包括聲音、視頻、圖像等多媒體信息.然而,圖像的信息量大、冗余度高等特點又給其加密帶來了一定的困難,因此,傳統(tǒng)的加密方式已不適合數(shù)字圖像加密;而混沌系統(tǒng)的偽隨機(jī)性、長期的不可預(yù)測性及對初值的極端敏感性等特點,使其非常適合于數(shù)字圖像的加密[1].
目前關(guān)于Lorenz混沌系統(tǒng)的數(shù)字圖像加密算法的研究基本上都是三維的,基于超混沌系統(tǒng)的圖像加密算法的研究還相對較少,而本文中研究的內(nèi)容就是基于4D超混沌系統(tǒng)的數(shù)字圖像加密算法,該加密系統(tǒng)是在Lorenz系統(tǒng)中第二個線性方程中又加入一個控制器.這樣的超混沌系統(tǒng)實際上是利用線性控制Lorenz[2]系統(tǒng).在此加密算法中,一個來自外部的128 bit的密鑰作為映射系統(tǒng)的參數(shù),這些參數(shù)是產(chǎn)生混亂的二進(jìn)制序列矩陣.此外,前一個子圖像塊的加密結(jié)果將被應(yīng)用到下一個子圖像塊加密過程中.通過計算機(jī)的仿真結(jié)果表明,下面描述的算法具有一定的優(yōu)越性和可取性,其可以實現(xiàn)一個較好的安全加密效果.
經(jīng)典的Lorenz系統(tǒng)是洛茲在1963年提出的第一個混沌模型,Lorenz系統(tǒng)的線性方程描述如下[3]:
(1)
其中a,b,c是控制參數(shù),且當(dāng)a=10,b=8/3,c=28時,系統(tǒng)處于混沌狀態(tài).但為了獲得超混沌狀態(tài),還要考慮一下兩個重要條件[6]:
i) 嵌入一個超混沌吸引子相空間的最小尺寸應(yīng)該至少有4個,這就明表最低需要4個一階耦合自治的常微分方程.
ii) 引起不穩(wěn)定耦合方程的數(shù)目應(yīng)該至少有兩個,其中至少有一個是非線性的.
通過引入公式(1)中第二個方程的非線性反饋控制系統(tǒng),得到了以下的四維超混沌系統(tǒng):
(2)
上式中k是一個待定常數(shù).為了簡化,在下面的內(nèi)容中將式(2)稱為4D超混沌Lorenz系統(tǒng).試驗的數(shù)值表明,當(dāng)a=10,b=8/3,c=28時,4D系統(tǒng)具有兩個正Lyapunov指數(shù)的混沌吸引子:λLE1=0.399 7,λLE2=0.311 3(另外兩個是λLE3=0,λLE4=-14.3776).另外,實驗結(jié)果還表明,當(dāng)k∈[0,16.6]時,該系統(tǒng)是超混沌狀態(tài)且有兩個Lyapunov指數(shù);而當(dāng)k∈(16.6,21.75]時,該系統(tǒng)只是混沌系統(tǒng)且只有一個正的Lyapunov指數(shù)[4].由此可知,通過一些簡單的控制輸入,4D系統(tǒng)具有很強(qiáng)的產(chǎn)生復(fù)雜混沌與超混沌吸引子的能力,使系統(tǒng)具有更好的安全性.
圖1 經(jīng)典Lorenz系統(tǒng)的混沌吸引
在本節(jié)中提出的加密算法是基于Lorenz超混沌系統(tǒng)的,為了使算法的描述更容易理解,下面列出其中的一些數(shù)學(xué)符號及其含義:
K1,K2,…,K16:是128bit的密鑰;iw,ih:分別表示圖像的寬和高;
S>>α:表示S循環(huán)右移α位;K1?K2:表示K1和K2的異或運(yùn)算.
具體算法描述如下:
Step1. 輸入一個128 bit的原始圖像和密鑰,通過以下計算過程得到算法中的4個參數(shù):
Step2. 通過以下方法確定(公式2)中的初始條件(x0,y0,z0,u0),控制參數(shù)k及迭代次數(shù)N的值:
依據(jù)龍格-庫塔方法[5],讓系統(tǒng)(式2)中從初始條件(x0,y0,z0,u0)開始遍歷N次.為了避免瞬態(tài)效應(yīng),這里迭代從200次以后開始.
Step3. 讓(xN,yN,zN,uN)表示系統(tǒng)(式2)中的N次迭代,使xN=0.b1(x)b2(x)…bi(x)…,且bi(x)表示如下:
Step4. 加密第i個原子圖像塊mib的公式如下:
Step5.
如果所有的原子圖像塊都被加密,則算法結(jié)束,輸出加密圖像;否則,繼續(xù)執(zhí)行Step3到Step5.
對于以上的加密過程有以下幾點說明:
① 控制參數(shù)k的取值范圍為k∈[0,16.6],以確保在超混沌狀態(tài)下有兩個正的Lyapunov指數(shù).
③ 很顯然,生成的密鑰流eib是依賴于密碼體制和明文的,且在Step5的反饋機(jī)制中,流密碼是更復(fù)雜和難以預(yù)測的.這就加強(qiáng)了密碼系統(tǒng)的安全性.
對于圖像加密來說,一個有效的加密算法應(yīng)該具有抵御多種已知攻擊的能力.下面針對提出的算法進(jìn)行敏感性、密鑰空間、直方圖、信息熵和差分攻擊幾個方面做安全性分析[6]并給出相應(yīng)仿真實驗結(jié)果.
3.1 敏感性分析 對敏感度分析,主要是從密鑰和被加密的明文兩個方面來進(jìn)行試驗的.
假設(shè)原始圖像“tree.jpg”的尺寸大小為256×256,取密鑰K1=“Kab4547MN78xy”,K2=“Jab4547MN78xy”,圖2則是基于此算法的實驗結(jié)果.從結(jié)果可以看出:分別使用密鑰K1和K2時,得到的加密圖像(b)和(c)明顯不同.將原圖(a)中坐標(biāo)為(50,50)的像素灰度值微小改變,而密鑰依然為K1時,得到的加密圖像為圖(d),顯然圖(b)和圖(d)也是完全不同的.由此可以看出,該算法對密鑰的敏感度比較高.3.2 密鑰空間分析 密鑰空間安全性分析使用的是窮舉法,也就是對所有可能的密碼進(jìn)行逐一推測、驗證和排除,直到找到正確的密碼為止.因此,為了抵御窮舉法對密碼的破譯,加密的密鑰空間必須要足夠大.本文中所提出的基于4D Lorenz超混沌算法中加密密鑰Ki依賴的參數(shù)有{a,b,c,x0,y0,z0,u0,k,N},而現(xiàn)代計算機(jī)的計算精度一般都可以達(dá)到15位有效數(shù)字,即使進(jìn)行一次迭代,則密鑰空間也可以達(dá)到1075.因此,此算法密鑰空間足夠大,使用窮舉破譯根本不可能實現(xiàn).
3.3 直方圖分析 圖3為原始圖像和加密后圖像及各自對應(yīng)的灰度直方圖.由此可以看出加密后圖像的直方圖呈均勻分布,掩蓋了原有圖像的分布規(guī)律,說明此算法的加密效果是非常成功的.
圖3 圖像加密前后灰度直方
3.4 信息熵分析 眾所周知,明文m的信息熵H(m)可以通過以下的公式得出:
(3)
其中p(mi)表示信息mi在圖像中出現(xiàn)的概率,n的值取256.對于一個具有256級的灰度圖像,如果每一個灰度值的概率是相等的,則信息熵為8,說明該圖像是隨機(jī)性較好.如果信息熵小于8時,說明該圖像存在一定程度上的可預(yù)見性,則威脅圖像的加密效果.因此,加密圖像的信息熵越接近理想值,則越能抵御熵收到的攻擊.
表1 原始圖像與對應(yīng)加密圖像的信息熵
表1顯示了4個不同原始圖像和對應(yīng)加密圖像的信息熵計算結(jié)果,從結(jié)果不難發(fā)現(xiàn):所有原始圖像的信息熵都小于理想值,這說明實用信息源很難具有隨機(jī)性;但每個加密后圖像的熵非常接近于理想值,表示前面描述的加密算法是足夠安全的,可以抗擊熵的攻擊.
3.5 差分攻擊 為了檢測原始圖像中任一像素的變化對加密后整個圖像的影響,通常采用兩種測試方法,即NPCR(像素數(shù)量變化率)和UACI(統(tǒng)一平均變化強(qiáng)度)[7].NPCR測試的是兩副圖像之間像素數(shù)的不同,而UACI測量的是兩副圖像之間平均強(qiáng)度的差異,其分別定義如下:
(4)
(5)
其中,E1(i,j)和E2(i,j)分別表示兩個加密圖像在點(i,j)處的灰度值,W和H分別表示圖像的寬度和高度.取一個與E1(i,j)和E2(i,j)同樣大小的陣列D(i,j),如果E1(i,j)=E2(i,j),則D(i,j)=1;否則D(i,j)=0.
隨機(jī)對原始圖像上的一個像素值作微小變動,對修改后的圖像加密,計算NPCR和UACI的值.取多次試驗的平均值得到NPCR=99.2%、UACI=34.3%.實驗結(jié)果表明,原始圖像的任何一點改變都將會導(dǎo)致加密圖像的巨大變化,所以說該加密方案具有非常優(yōu)良的抵抗差分攻擊的能力.
目前,混沌技術(shù)應(yīng)用于數(shù)字圖像加密領(lǐng)域還有很多問題亟待解決,要實現(xiàn)其廣泛的應(yīng)用還有很長的路要走.筆者擬在以下幾個方面繼續(xù)進(jìn)行研究:
1)當(dāng)前,利用混沌來構(gòu)造公開密鑰密碼的研究成果還較少,筆者認(rèn)為對此方向的研究應(yīng)該具有一定的現(xiàn)實意義.
2)如何實現(xiàn)混沌加密技術(shù)和數(shù)字圖像壓縮技術(shù)的完美融合.由于數(shù)據(jù)量大、冗余度高的特點使得直接添加壓縮功能的圖像加密非常誘人.如能實現(xiàn)兩者的有機(jī)結(jié)合,則數(shù)字圖像加密一定會有一個美好的前景.
[1] 秦明甫.基于混沌理論的數(shù)字圖像加密研究[D].重慶:重慶大學(xué)計算機(jī)學(xué)院,2009.
[2] 王光義,鄭艷,劉敬彪. 一個超混沌Lorenz吸引子及其電路實現(xiàn)[J].物理學(xué)報,2007(6):3113-3120.
[3] 劉式達(dá),梁福明,劉式適,等.自然科學(xué)中的混沌與分形[M].北京:北京大學(xué)出版社,2003.
[4] 梁美靈,王則柯.混沌與均衡縱橫談[M].大連:大連理工大學(xué)出版社,2008.
[5] 禹思敏,林清華,丘水生.四維系統(tǒng)中多渦卷混沌與超混沌吸引子的仿真研究[J].物理學(xué)報,2003,52(1):25-33.
[6] Wong Wai-Kit ,Lee Lap-Piu, Wong Kwork-Wo.A modified chaotic cryptographic method[J].Computer Physics Communications,2001,138(3):234-236.
[7] Chen G,Mao Y,Chui C.Symmetric image encryption scheme based in 3D chaotic cat ps[J]. Chaos,Solitons & Fractals,2004,21(3):749-761
[8] 廖建華.基于混沌理論的數(shù)字圖像加密技術(shù)研究[D].湖南:中南大學(xué),2010.
[9] Somaya Al-Maadeed,Afnan Al-Ali,Turki Abdalla,et al.A new chaos-based image-encryption and compression algorithm[J]. Journal of Electrical and Computer Engineering,2012.
[10] 譚琳.基于DNA序列和混沌的圖像加密算法[J].信息系統(tǒng)工程,2014(11):90-92.
[11] 蔡俊,陳昕,向旭東.一種基于混沌的代換-置換結(jié)構(gòu)圖像加密算法[J].計算機(jī)科學(xué),2014(09):158-164.
(責(zé)任編輯 江津)
Research on digital image encryption algorithm base on Lorenz hyper chaos
ZHANG Cuoling,WEI Liangfen
(Department of Computer Science,College of Anhui Sanlian,Hefei 230601,China)
On the basis of classic Lorenz chaos system, we obtained the Lorenz 4D hyper chaos system by the certain transform,then described the Lorenz hyperchaos system of 4D encryption algorithm,and gave the simulation experiment results and security analysis.
chaos; Lorenz system;image encryption; 4D hyper chotic system
2016-02-18
安徽省教育廳自然科學(xué)重點項目(KJ2016A252)資助
張錯玲(1982-),女,碩士,講師;韋良芬,通信作者,副教授
1000-2375(2016)06-0551-06
O211.4
A
10.3969/j.issn.1000-2375.2016.06.014