許 冰,孫永維,李 洋,王英雙
(1.空軍航空大學(xué) 飛行訓(xùn)練基地,長春 130062;2.長春吉聯(lián)科技集團有限公司,長春 130062)
基于高維混沌系統(tǒng)的圖像加密改進算法
許 冰1,孫永維1,李 洋1,王英雙2
(1.空軍航空大學(xué) 飛行訓(xùn)練基地,長春 130062;2.長春吉聯(lián)科技集團有限公司,長春 130062)
為保證數(shù)字圖像在傳輸過程中的安全問題,通過分析傳統(tǒng)的基于高維混沌系統(tǒng)的圖像加密算法,提出了一種圖像加密改進算法。將位置置亂和像素替換加入到每次迭代中,并使加密數(shù)據(jù)流與明文信息相關(guān),彌補了傳統(tǒng)算法在應(yīng)用中的漏洞和不足。理論分析和仿真實驗表明,該算法具有良好的保密性和加密效果,密文對明文或初始密鑰的任何微小變化具有強烈敏感性,相鄰像素滿足零相關(guān)性,具有較強的安全性和可操作性。
圖像加密;混沌技術(shù);圖像置亂
隨著多媒體技術(shù)的迅猛發(fā)展和網(wǎng)絡(luò)的日益普及,越來越多的信息將通過互聯(lián)網(wǎng)傳播,安全高效的保密通信方式已成為研究熱點[1]。圖像作為一種表現(xiàn)直觀、涵蓋信息量大的數(shù)字化信息,在網(wǎng)絡(luò)存儲和傳輸過程中的安全保密問題也因此越來越受到人們的重視[2]。圖像加密技術(shù)已成為網(wǎng)絡(luò)信息安全研究領(lǐng)域的重要分支[3]。
近年來,混沌系統(tǒng)因其具有許多優(yōu)良特性,如,敏感依賴于初始條件和系統(tǒng)參數(shù),各態(tài)歷經(jīng)的遍歷性及混合擴散(伸展和折疊)特性等。這些特性正好符合密碼系統(tǒng)對混亂和散布特性的要求,因此,混沌系統(tǒng)成為構(gòu)造密碼系統(tǒng)的理想選擇[4]。
現(xiàn)有的圖像混沌加密算法主要利用混沌序列對初值的敏感性、不可預(yù)測性、非周期性和偽隨機性,將混沌序列作密鑰流與原始明文序列進行逐位相加(異或)而得到加密密文;解密則是加密的逆向過程[5-8]。針對數(shù)字圖像的加密,文獻[5]提出了一種基于高維混沌系統(tǒng)的圖像加密算法。該算法采用比例-微分圖像加密模型,同時,利用了二維Arnold映射進行圖像像素值的置亂,并應(yīng)用三維Lorenz混沌系統(tǒng)進行像素值的替換。筆者提出了一種基于高維混沌系統(tǒng)的圖像加密改進算法,針對文獻[5]提出的算法在應(yīng)用中存在的幾個漏洞進行有效改進,彌補了傳統(tǒng)算法在抵御明文攻擊時的缺陷和加密迭代次數(shù)過多的不足,增強了抗破譯攻擊能力,提高了圖像信息傳輸?shù)陌踩浴?/p>
支撐網(wǎng)是電信網(wǎng)中重要的邏輯網(wǎng)絡(luò)層面。它支持電信網(wǎng)的正常工作,提供保證網(wǎng)絡(luò)正常運行的控制和管理的功能。計費系統(tǒng)是支撐網(wǎng)絡(luò)的重要組成部分,完成電信網(wǎng)中各種業(yè)務(wù)使用的計費功能。
文獻[5]中提出的基于高維混沌系統(tǒng)的圖像加密算法(以下稱之為原算法),其過程包括以下兩個步驟:
1)利用Arnold映射對圖像的像素進行置亂。假設(shè)圖像的大小為N×N,所對應(yīng)的坐標(biāo)位置為W={(x,y)|x,y=0,1,…,N-1},則應(yīng)用到圖像加密的廣義 Arnold映射可定義為
其中p、q和迭代數(shù)M(加密算法循環(huán)次數(shù))作為密鑰進行控制,當(dāng)進行足夠多輪的迭代后,圖像將具有很好的置亂效果。
2)利用混沌Lorenz系統(tǒng)進行圖像像素值的替代。典型的Lorenz系統(tǒng)可描述為
1)(0,0)像素位置沒能被改變,位置置亂和像素替換之間缺少聯(lián)系。在Arnold映射中,如果(x0,y0)=(0,0),經(jīng)過n輪迭代,(,)=(0,0),即原算法無論經(jīng)過多少輪的迭代,原圖像的(0,0)像素位置始終沒能改變。同時,原算法中位置的置亂和像素的替換是逐個像素單獨進行,像素彼此之間缺少關(guān)聯(lián),從而帶來一定的不安全性,攻擊者可以利用一些特殊的圖像(例如兩幅僅有一個像素不同的圖像)進行算法分析,從而找出該圖像加密算法中像素置亂的規(guī)則[9]。
2)加密結(jié)果僅依賴于Lorenz混沌系統(tǒng)的初值而與明文無關(guān)聯(lián)。原算法的Lorenz混沌系統(tǒng)的初始條件沒有改變的情況下,其對應(yīng)的加密數(shù)據(jù)流{bx,by,bz}也不會發(fā)生變化,這對于對抗已知明文攻擊來說,是非常脆弱的。當(dāng)兩幅圖像用相同的密鑰進行加密時,可以充分利用其中一副圖像的明文和密文對異或后的數(shù)據(jù)流(相當(dāng)于原算法的密鑰)by⊕bx,bz⊕by,bx⊕bz恢復(fù)另一幅明文圖像[10]。圖1給出了利用選擇明文攻擊的例子,如果從一幅圖像中得到了數(shù)據(jù)流by⊕bx,bz⊕by,bx⊕bz,則另一幅圖像即可完全恢復(fù)。
3)原算法的置亂效果只依賴于置亂階段,而擴散效果只依賴于擴散階段。在原算法中,置亂和擴散效果是分開的,互不干涉,為取得較為滿意的置亂和擴散效果,則需要進行多輪(輪數(shù)n>42)的加密,這顯然不符合實際應(yīng)用的需要。
圖1 選擇明文攻擊的例子Fig.1Demonstration of known plaintext attack
為了克服原算法在應(yīng)用中的缺陷,提出以下幾點改進方法。
1)針對Arnold映射在圖像置亂中對(0,0)位置上的像素不起作用的問題,可以將(0,0)位置上的像素和一個固定位置(i,j)的像素在每輪迭代后進行交換[11],這樣前一輪(0,0)位置的像素就可以在下一輪迭代中被置亂。(i,j)可以被看做密鑰進行控制。
2)針對原算法中像素位置置亂和像素值替換之間缺少關(guān)聯(lián)的問題,可以對原算法中兩個加密步驟統(tǒng)一進行多輪迭代,即每輪迭代都會進行位置置亂和像素值的替代。同時,加密數(shù)據(jù)流的產(chǎn)生應(yīng)該以一個鏈?zhǔn)浇Y(jié)構(gòu)遞推進行,即在任意兩個像素之間都應(yīng)該有關(guān)聯(lián)。
3)針對原算法中加密結(jié)果僅依賴于Lorenz混沌系統(tǒng)初值的問題[12],可使數(shù)據(jù)流不但依賴于Lorenz混沌系統(tǒng),同時也應(yīng)與明文相關(guān)。
4)針對原算法中迭代輪數(shù)過多的問題,可以在算法框架中添加兩個簡單的異或操作,分別加在置亂階段前面和后面,這樣在置亂階段,像素位置的置亂和像素值的替換是同時進行的。同樣,在擴散階段,像素位置的變換也增加了置亂的效果。從而達到在較少的迭代輪數(shù)就能取得令人滿意的加密效果,縮短加密時間。
設(shè)計改進算法加密結(jié)構(gòu)如圖2所示。
圖2 改進算法加密結(jié)構(gòu)Fig.2Architecture of the proposed improvement scheme
Step1 輸入原始圖像K(N×N)和密鑰,并進行XOR運算;
Step2 將變換后的圖像運用Arnold映射進行一次置亂,并交換(0,0)和(i,j)位置的像素;
Step3 再次進行XOR運算,得到圖像G;
Step4 將圖像G分解成一維向量Z={Z1,Z2,Z3,…,ZN×N},其中每個元素代表像素值;
Step5 連續(xù)迭代Lorenz混沌系統(tǒng),得到3個運算值xi,yi,zi,i=1,2,…,然后結(jié)合向量Z求得加密數(shù)據(jù)流{bx,by,bz}。
則所得加密數(shù)據(jù)流不僅依賴于Lorenz混沌系統(tǒng),而且還與圖像G有關(guān)。其中abs()代表取絕對值,round()代表四舍五入進行取整,mod()為取模運算。
Step6 圖像G與加密數(shù)據(jù)流{bx,by,bz}按式(4)進行異或運算,其中i=1,2,…,代表對Lorenz混沌系統(tǒng)進行第i次迭代,從而得到對應(yīng)的密文向量c={c1,c2,c3,…,cN×N}
Step7 重復(fù)Step1至Step6,直到迭代輪數(shù)達到M為止,此時所輸出的圖像就是密文圖像。
解密過程即為加密過程的逆過程,首先將密文圖像轉(zhuǎn)為一維向量,然后利用連續(xù)迭代Lorenz混沌系統(tǒng)恢復(fù)原始向量Z={Z1,Z2,Z3,…,ZN×N},過程如下
最后進行反向的兩個XOR運算和置亂運算,即可得到最終的明文圖像。
采用 Matlab軟件進行數(shù)據(jù)仿真試驗,密鑰分別為:p=25,q=5,x0=1.184 0,y0=1.362 7,z0=1.251 9,(i,j)=(N,N)和 M=7。結(jié)果如圖3所示。
圖3 明文像及解密圖像Fig.3Plain-image and decrypted-image
可以看出,加密圖像與原始明文圖像的無關(guān)度很高,而解密圖像也和明文圖像保持一致。
4.2.1 相關(guān)性分析
經(jīng)測試,明文圖像和密文圖像的兩個水平像素、兩個垂直像素以及兩個對角像素之間的相關(guān)性如表1所示。
表1 明文圖像和密文圖像相關(guān)系數(shù)比較Tab.1Correlation coefficient of two adjacent pixels in plain-image and ciphered-image
4.2.2 性能分析
1)密鑰敏感性分析。將其中一個密鑰的數(shù)值進行細微的改動,如,對x0進行改動,使x0=1.184 000 000 000 001,其他密鑰不變,圖3中加密圖像的解密結(jié)果如圖4所示。從圖4可以看出,當(dāng)某個密鑰有一點微小的改動后,解密結(jié)果會完全不同,說明改進算法能抵抗各種基于密鑰敏感性的攻擊。
圖4 密鑰敏感性測試及其解密結(jié)果Fig.4The sensitivity to the secret key and the corresponding test result
2)抵抗選擇明文攻擊和已知明文攻擊。改進算法解決了第3節(jié)中所提出的原算法的漏洞。首先,針對原算法無法實現(xiàn)(0,0)位置像素的位置變換,改進算法通過在Arnold映射之后進行(0,0)和(i,j)的交換,解決了此缺點。其次,原算法中的位置置亂和像素替換是單獨進行的,改進算法中每輪迭代都進行位置置亂和像素替換,起到很好的擴散效果。第3,改進算法中的加密數(shù)據(jù)流不僅與Lorenz混沌系統(tǒng)的初值有關(guān),還與明文有聯(lián)系,這樣便可有效抵抗選擇明文和已知明文攻擊。
基于高維混沌系統(tǒng)的圖像加密改進算法是在傳統(tǒng)混沌加密算法的基礎(chǔ)上,將位置置亂和像素替換加入到每次迭代中,并使加密數(shù)據(jù)流與明文信息相關(guān)。分析和仿真實驗表明,該算法修正了原算法的安全漏洞,減少了迭代次數(shù),具有較高的加密效率。該算法可對諸如軍事衛(wèi)星圖片、商業(yè)機密圖紙等需要保密通信的場合有廣泛的應(yīng)用前景[13]。
[1]廖雪峰.基于混沌映射組合的高效圖像加密新算法[J].溫州大學(xué)學(xué)報:自然科學(xué)版,2010,31(1):33-40.
LIAO Xue-feng.New Efficient Algorithm of Image Encryption Based on Combined Chaotic Maps[J].Journal of Wenzhou University:Natural Sciences,2010,31(1):33-40.
[2]林純,盛蘇英,陸國平.基于混沌序列的彩色數(shù)字圖像加密設(shè)計[J].南通大學(xué)學(xué)報:自然科學(xué)版,2010,9(1):1-4.
LIN Chun,SHENG Su-ying,LU Guo-ping.Design of Color Digital Image Encryption Based on Chaotic Sequence[J].Journal of Nantong University:Natural Science Edition,2010,9(1):1-4.
[3]聶海英,朱燦焰,周悅.一種混沌圖像加密算法的改進[J].蘇州大學(xué)學(xué)報:自然科學(xué)版,2006,22(2):38-42.
NIE Hai-ying,ZHU Can-yan,ZHOU Yue.An Improvement to an Chaotic Image Encryption[J].Journal of Suzhou University:Natural Science Edition,2006,22(2):38-42.
[4]PAREEK N K,PATIDAR V,SUD K K.Discrete Chaotic Cryptography Using External Key[J].Physics Letters A,2003,309(1/2):75-82.
[5]SUN Fu-yan,LIU Shu-tang.Image Encryption Using High-Dimension Chaotic System [J].Chinese Physics,2007,16(12):3616-3623.
[6]龔巖琳,陳善學(xué).圖像加密方法的分析[J].數(shù)字通信,2009,6(3):66-69.
GONG Yan-lin,CHEN Shan-xue.Analysis of Image Encryption Method[J].Digital Communication,2009,6(3):66-69.
[7]賀超.基于混沌的圖像加密研究與實現(xiàn)[D].長春:長春理工大學(xué)計算機科學(xué)技術(shù)學(xué)院,2008.
HE-Chao.A Research and Realization of Image Enciphering Based on Chaos[D].Changchun:School of Computer Science and Technology,Changchun University of Science and Technology,2008.
[8]劉金梅,丘水生,劉偉平.基于超混沌系統(tǒng)的圖像加密算法的安全性分析[J].計算機應(yīng)用研究,2010,27(3):1042-1044.
LIU Jin-mei,QIU Shui-sheng,LIU Wei-ping.Cryptanalysis of Image Encryption Algorithm Based on Hyper-Chaotic System [J].Application Research of Computers,2010,27(3):042-1044.
[9]趙亮,廖曉峰,向濤,等.對高維混沌系統(tǒng)的圖像加密算法安全性和效率的改進[J].計算機應(yīng)用,2009,29(7):1775-1781.
ZHAO Liang,LIAO Xiao-feng,XIANG Tao,et al.Security and Efficiency Improvement for Image Encryption Algorithm Based on High-Dimension Chaotic System [J].Journal of Computer Applications,2009,29(7):1775-1781.
[10]趙亮.數(shù)字混沌圖像加密算法的分析與設(shè)計[D].重慶:重慶大學(xué)計算機學(xué)院,2009.
ZHAO Liang.Analysis and Design of Image Encryption Algorithms Based on Digitalized Chaos[D].Chongqing:College of Computer Science,Chongqing University,2009.
[11]郭琳琴,張新榮.基于二維 Arnold變換的圖像雙置亂算法[J].計算機應(yīng)用與軟件,2010,27(4):264-266.
GUO Lin-qin,ZHANG Xin-rong.Image Twice Scrambling Algorithm Based on Two Dimensional Arnold Transforms[J].Computer Applications and Software,2010,27(4):264-266.
[12]王英,鄭德玲,鞠磊.基于Lorenz混沌系統(tǒng)的數(shù)字圖像加密算法[J].北京科技大學(xué)學(xué)報,2004,26(6):678-682.
WANG Ying,ZHENG De-ling,JU Lei.Digital Image Encryption Algorithm Based on Three-Dimension Lorenz Chaos System [J].Journal of University of Science and Technology Beijing,2004,26(6):678-682.
[13]張蓓,王順宏,馬紅光.基于混沌的變參數(shù)數(shù)字圖像加密方法[J].計算機測量與控制,2007,15(6):28-30.
ZHANG Bei,WANG Shun-hong,MA Hong-guang.Changing Parameter Encryption Method Based on Chaos[J].Computer Measurement & Control,2007,15(6):28-30.
Improved Image Encryption Algorithm Based on High-Dimension Chaotic System
XU Bing1,SUN Yong-wei1,LI Yang1,WANG Ying-shuang2
(1.Base of Flight Training,Aviation University of Air Force,Changchun 130062,China;2.Changchun Jilian Technology Group Company Limited,Changchun 130062,China)
In order to solve the security problem during the transmission of digital image,according to the analysis of traditional image encryption using high-dimension chaotic system,an improved algorithm of image encryption is given.It combines the methods of position shuffling and pixel value substituting in iterations,and makes the encrypted datastream having relation to the plaintext.It resolved the bugs of traditional algorithm in application.The results of theoretical analysis and simulated experiment show that the algorithm guarantees the security of encryption effectively and excellent effect of encryption,the encrypted result varies sensitively with any minimal changes of the initial secret key and the plaintext,the value of adjacent pixels satisfy zero correlation,showing that the algorithm is feasible,security and easy to operate.
image encryption;chaotic technology;image scrambling
TP309.7
A
1671-5896(2012)01-0012-06
2011-09-06
許冰(1982—),男,河北永年人,空軍航空大學(xué)工程師,碩士,主要從事虛擬現(xiàn)實、網(wǎng)絡(luò)安全研究,(Tel)86-18686620424(E-mail)ice.xu@sina.com;孫永維(1964—),男,長春人,空軍航空大學(xué)教授,主要從事虛擬現(xiàn)實、信息網(wǎng)絡(luò)的研究,(Tel)86-13134463355(E-mail)sunyongw@sohu.com。
(責(zé)任編輯:劉俏亮)