張玉明,劉家保
1.蕪湖職業(yè)技術學院電氣工程學院,蕪湖,241001;2.安徽建筑大學數理學院,合肥,230022
?
基于二次隱藏和復合混沌的圖像加密技術
張玉明1,劉家保2
1.蕪湖職業(yè)技術學院電氣工程學院,蕪湖,241001;2.安徽建筑大學數理學院,合肥,230022
首次提出了基于二次隱藏和復合混沌的圖像加密技術。該方法首先把明文圖像隱藏在一個像素是明文圖像8倍以上的載波圖像中,這是一次隱藏;然后,利用復合混沌將一次隱藏后的載波圖像進行置亂和置換,加密后的圖像再次隱藏在二個以上同樣像素的載波圖像中進行傳送。試驗和Matlab仿真表明:這種方法隱蔽性極高,魯棒性好,難以攻擊。
二次隱藏;復合混沌;圖像加密;置亂和置換
由于互聯網的快速發(fā)展,許多重要的機密信息(文字、圖像、視頻等)需要在網絡上進行傳輸[1-4],但這些信息尤其是涉及到國家安全和公司機密的信息很容易受到不法分子的攻擊,所以這些重要的信息在傳輸之前必須通過嚴格的、科學的、具有自主知識產權的加密處理。近年來,保密通信技術受到全世界許多學者的關注,許多學者把一生的精力投入到保密通信的科學研究中[5-7]。
本文首次提出了二次隱藏的概念和基于二次隱藏和復合混沌的圖像加密技術。二次隱藏是把明文圖像通過最低位或次低位異或運算第一次隱藏在一個像素是明文圖像8倍以上的載波圖像中,經過復合混沌的置亂和置換加密后,把密文圖像再次隱藏在二個以上同樣像素的載波圖像中在網絡上進行傳輸。由于混沌系統(tǒng)具有非線性的特點,初始條件或系統(tǒng)參數只要有微小的變化,都會產生不同的混沌序列,適合對圖像進行加密通信。復合混沌對初始系統(tǒng)參數具有極高的敏感性[8],初始參數設計為依賴于明文圖像的灰度信息,不同的明文具有不同的初始參數控制。用這樣的復合混沌產生的序列對明文圖像進行置亂和置換加密,加上使用二次隱藏技術,經過處理后的彩色圖像可以安全地在公開網絡中進行傳送。實驗和Matlab仿真表明,這種基于二次隱藏和復合混沌的圖像加密技術隱蔽性極高,魯棒性好,不易受到攻擊且極難破解。
復合混沌的復合方式有很多,本文用簡單的Logistic映射和Tent映射進行復合形成新的復合混沌映射,通過對Lyapunov指數的比較分析,新的復合混沌映射比簡單的Logistic映射或者Tent映射對初始條件的敏感性有所提高,且具有較高的復雜性。
2.1 復合混沌映射
Logistic映射定義為:
xn+1=μxn(1-xn),0
(1)
Tent映射定義為:
xn+1=1-2|xn|,-1
(2)
將(1)代入(2),形成復合混沌映射:
xn+1=2μ|xn|(1-2|xn|)
-1
(3)
2.2 復合混沌映射的參數控制
利用明文圖像的信息對復合混沌映射的參數進行控制,可以有效地抵御對已知明文圖像的攻擊,一幅圖像對應唯一的復合混沌映射參數,參數的值控制在合理的范圍內:
鞏俐是那種知道自己想要什么,就全力以赴去爭取的人,雖然是女兒身,但她一身骨氣,只要認定的事情,就算撞的頭破血流,也會堅持到底。相比接連失敗的藝考之路,鞏俐的出道之路則比較順利,第一部戲就遇到了當時國內比較熱的導演張藝謀。
(4)
式(4)中,b2d代表二進制數轉化為十進制數的運算,g(x,y)是已知明文圖像在(x,y)點處的灰度值,實際操作過程中可以取RGB值中的任何一個,參數μ的取值可以保證復合混沌映射處于混沌狀態(tài),并且依賴明文圖像信息。
2.3 復合混沌序列的生成
設一次隱藏的載波圖像也是BMP格式,尺寸為m×n×3,且m×n≥8×r×s。任意給定xn的初值x0,把μ和x0作為為密鑰代入式(3),迭代(M-1)次,得到混沌序列L1(x0,x1,…,xM-1);更換初值x0再次代入式(3),迭代(N-1)次,得到混沌序列L2(x0,x1,…,xN-1);再次更換初值x0,代入式(3),迭代(M×N-1)次,得到混沌序列L3(x0,x1,…,xMN-1)。這三個序列用來對一次隱藏后的圖像進行置亂和置換加密。
3.1 一次隱藏的實現
由于一次隱藏選取的載波圖像像素是明文圖像的8倍以上,可以把明文圖像隱藏在載波圖像的最低位,也可以隱藏在低四位中任何一位,圖像信息冗余度大,對低四位的敏感度很低,對最低位的敏感度更低,所以一次隱藏后的載波圖像基本上看不出什么變化。本文的算法是把密文圖像隱藏在載波圖像的最低位,隱藏效果極好,隱蔽性高,不易被發(fā)現。
3.2 一次隱藏后的圖像置亂和置換加密
第一步:置換加密操作。置換加密操作改變了被操作對象的信息,取出已生成序列L3(x0,x1,…,xMN-1),L3中的值為模擬量,通過模數轉換為8bits二進制數,設為LX,Y,C,把LX,Y,C與一次隱藏后的圖像像素c″X′,Y′,C進行逐位異或,得到置亂后的加密圖像pi,j,c。
3.3 二次隱藏的實現
明文圖像經過一次隱藏,再通過復合混沌的置亂和置換加密后,密文圖像已經很安全,但是密文圖像還是太引人注目,容易遭到破譯者的好奇并實施攻擊[4]。把密文圖像經過二次隱藏后,密文圖像嵌入到載波圖像中,載波圖像看不出有什么變化。這種攜帶密文圖像的載波圖像可以很安全地在網絡中進行傳輸,被攻擊幾乎不可能。
一次隱藏加密后的密文圖像像素為M×N×3,選取同樣像素的載波圖像8個,把載波圖像最低位清零后隱藏密文圖像,操作過程和一次隱藏相同。
圖1 明文圖像
試驗在Matlab8.1仿真平臺完成,明文圖像選取330×220×3的仙人掌BMP圖像,取1024×450×3的藍天白云BMP圖像作為一次載波圖像,二次載波圖像選取1024×450×3的飛機BMP圖像,x0的初值和μ值作為密鑰,μ值取決于仙人掌BMP明文圖像,x0的初值對應三個序列分別取值:0.10、0.15、0.20。仿真結果如下:圖1是待加密明文圖像,圖2是一次載波圖像,圖3是一次隱藏后的圖像,圖4是經過置亂和置換后待二次隱藏的密文圖像,圖5是二次載波圖像,圖6是二次隱藏后最終結果圖像。
圖2 一次載波圖像
圖3 一次隱藏后圖像
圖4 加密后圖像
圖5 二次載波圖像
圖6 二次隱藏后圖像
解密過程是加密的逆過程,先從二次隱藏后圖像中取出加密后圖像,然后根據明文圖像和式(4)計算出μ,取密鑰x0的三個初值代入式(3),解密出一次隱藏后圖像,按照同樣的方法,從一次隱藏后圖像恢復出正確的明文圖像。圖7是使用正確的密鑰成功解密出的圖像。圖8為使用偏差非常小的初值作為密鑰,解密失敗后的圖像。
圖7 成功解密結果
圖8 錯誤解密結果
本文首次提出了二次隱藏的概念和基于二次隱藏和復合混沌的圖像加密技術,由于一次隱藏的載波圖像像素是明文圖像的8倍以上,而且隱藏在最低位,隱藏效果很好,實驗結果表明:肉眼根本看不出載波里嵌入有其他圖像,二次隱藏的載波圖像像素雖然和密文圖像像素相同,但是用了8個載波,效果和一次隱藏相當,再加上復合混沌對隱藏后的圖像進行置亂和置換加密,這種基于二次隱藏和復合混沌的圖像加密技術幾乎不可能被解密,安全性極高,可以有效抵御各種蠻力攻擊。特別適合于國家級機密文件和企業(yè)產品高級機密信息在網絡上的傳輸。當然,這種基于二次隱藏和復合混沌的圖像加密技術也存在缺點,就是算法比較復雜,在以后的研究中可以考慮把明文圖像進行特別壓縮處理后再進行加密和隱藏。
[1]SMIDME,BRANSTADDK.Dataencryptionstandard:pastandfuture[J].ProceedingsoftheIEEE,1988,76:550-559[2]RHOUMA R,SAFYA B.Cryptanalysis of a new image encryption algorithm based on hyper-chaos[J].Physics Letters A,2008,372:5973-5978
[3]WEI X P,GUO L.A novel color image encryption algorithm based on DNA sequence operation and hyper-chaotic system[J].The Journal of Systems and Software, 2012,85:290-299
[4]CAO Y.A New Hybrid Chaotic Map and Its Application on Image Encryption and Hiding[J].Mathematical Problem in Engineering,2013,47:234-247
[5]廖曉峰.混沌密碼學原理及其應用[M].北京:科學出版社,2009:137-139
[6]張小華,劉芳,焦李成.一種基于混沌序列的圖像加密技術[J].中國圖象圖形學報,2003,8(4):374-378
[7]邱應強,張育釗,杜吉祥,等.一種用于矢量量化壓縮圖像的信息隱藏新方法[J].電子與信息學報,2008,30(7):1695-1699
[8]易開樣,石教英.數字水印技術研究[J].中國圖像圖形學報,2001,6(2):111-117
(責任編輯:汪材印)
10.3969/j.issn.1673-2006.2017.04.029
2017-01-21
安徽省教育廳自然科學研究重點項目(KJ2015A331);蕪湖職業(yè)技術學院校級自然科學重點項目(Wzyzrzd201701)。
張玉明(1968-),安徽蕪湖人,碩士,副教授,研究方向:混沌系統(tǒng)、圖像處理、保密通信。
TP391
A
1673-2006(2017)04-0104-04