李嬋媛
摘 要:針對數(shù)字圖像加密特點,提出一種基于混沌理論的自適應(yīng)參數(shù)圖像加密算法,將明文圖像安全哈希算法(SHA-1)摘要協(xié)同用戶密鑰進行計算,將計算所得的參數(shù)作為自適應(yīng)參數(shù),輸入混沌系統(tǒng)產(chǎn)生混沌序列對圖像進行置亂和像素擴散,從而使不同的加密圖像和加密參數(shù)對應(yīng)不同的加密過程。實驗結(jié)果表明,該算法密鑰敏感度高,能夠抵抗選擇明文等攻擊,具有較好加密性能。
關(guān)鍵詞:圖像加密 混沌 置亂 擴散 安全哈希算法
中圖分類號:TP391 文獻標(biāo)識碼:A 文章編號:1672-3791(2016)06(c)-0131-03
混沌非線性系統(tǒng)具有對初始條件的敏感性、序列的高度隨機性等特征,能夠很好適應(yīng)密碼系統(tǒng)的要求,因此,常用于圖像加密算法[1-3]。該類算法利用混沌序列對圖像像素點進行置亂和像素值的擴散操作,具有較好的圖像加密效果。在圖像加密過程中,由于混沌系統(tǒng)初始參數(shù)固定,生成的混沌序列和圖像加密流程都是一致的,所以只要有足夠的樣本數(shù)據(jù),就可以破解加密圖像,從而算法存在安全性隱患。為增強加密算法的安全性,抵抗選擇明文攻擊,利用外部密鑰與明文信息相結(jié)合控制混沌映射參數(shù)的思想[4-6],該文提出一種自適應(yīng)參數(shù)圖像加密算法,圖像加密過程中混沌初始參數(shù)依據(jù)明文圖像而改變。
1 理論概述
高維混沌系統(tǒng)具有比低維混沌系統(tǒng)更復(fù)雜的動力學(xué)行為,該文采用三維Chen混沌系統(tǒng)進行加密[7],具體方程如式(1),其中,為系統(tǒng)參數(shù),當(dāng)參數(shù)時,該系統(tǒng)處于混沌狀態(tài)。
在圖像加密過程中,如果密鑰的產(chǎn)生不依靠明文圖像,這樣容易被己知明文和選擇明文攻擊。因此,該文在圖像加密過程中混沌系統(tǒng)初始值的產(chǎn)生方式依賴于明文圖像,不同圖像對應(yīng)的自適應(yīng)參數(shù)均不同。該文在圖像安全哈希算法(SHA-1)摘要基礎(chǔ)上進行映射,并選映射后的數(shù)值作為自適應(yīng)參數(shù)。
明文信息通過安全哈希算法(SHA-1),轉(zhuǎn)換后產(chǎn)生以十六進制表示的哈希字符串,記為:,采用式(2)迭代計算出,其中表示向下取整,取任意正整數(shù)。式(1)混沌系統(tǒng)初始參數(shù)取值
2 自適應(yīng)加密算法
該文加密過程共分為兩個階段:像素位置置亂和像素值擴散階段。
2.1 像素位置置亂
步驟1:根據(jù)明文圖像生成的哈希字符串根據(jù)式(2)生成混沌系統(tǒng)初始參數(shù)值,通過式(1)的混沌系統(tǒng)生成三組混沌序列。由于混沌序列的無周期性和無重復(fù)值,所以混沌序列的每個值在有序序列中均有唯一的位置標(biāo)號。對混沌序列分別進行排序,生成三個位置序列分別記為,這些位置序列記錄有序序列中各元素在原序列中的位置。
步驟2:利用位置索引置亂方法對大小為M×N的圖像PM×N進行行和列置亂處理。設(shè)為圖像矩陣第行或第列,對按照對應(yīng)位置關(guān)系重新排序,得到序列。根據(jù)式(3)確定相對應(yīng)的置亂序列,按照從上至下順序進行行置亂,從左到右的順序進行列置亂,得到置亂圖像。式(3)中,mod求模取余,sum求和,Pi為圖像矩陣第行或者第列。
該文算法置亂序列的選擇需根據(jù)明文圖像來確定,因此,圖像置亂過程不僅與混沌序列的初始值相關(guān),而且與明文圖像有很大的相關(guān)性,此算法增加了置亂序列選擇的隨機性,增強了算法的安全性。
2.2 像素值擴散
通過像素位置置亂并沒有改變圖像各點的像素值,從而圖像直方圖不會改變,置亂后的圖像僅破壞了原圖像相鄰像素之間的相關(guān)性。因此,需要進一步對置亂后圖像的像素值進行擴散,以使密文圖像抵御差分攻擊。像素值的擴散采用按水平方向從左上角到右下角進行掃描每一個像素點,具體步驟如下。
步驟1:根據(jù)置亂圖像生成的哈希字符串根據(jù)式(2)生成混沌系統(tǒng)初始參數(shù)值,通過式(1)混沌系統(tǒng)生成三組混沌序列,為增加像素值擴散的復(fù)雜性,將混沌序列按照組成長度為M×N的混沌序列D,在進行像素值擴散操作時,使用式(4)對序列D進行處理。式(4)中abs表示取絕對值,表示向下取整。
步驟2:通過式(5)對置亂圖像進行像素值擴散操作,得到密文圖像。其中為按位異或操作;為一個固定的灰度值。
綜上步驟可得到密文圖像。圖像的解密過程是其加密過程的逆過程,此處不再做過多的詳解。
3 實驗及結(jié)果分析
為了驗證該文加密算法的有效性,采用Matlab環(huán)境編程實現(xiàn)算法測試。用標(biāo)準(zhǔn)大小為512×512的Lena灰度圖像作為明文圖像,混沌系統(tǒng)初始參數(shù)己在算法步驟中給出,原始圖像及密文圖像如圖1的(a)和(c)所示。從圖1的(d)所示密文圖像直方圖可以看出,密文圖像直方圖呈均勻分布,提高了密文圖像抵抗統(tǒng)計攻擊的能力。接下來分析圖像相鄰像素對的平面分布及密鑰敏感性等。
3.1 相鄰像素相關(guān)性
為進一步驗證加密效果,檢驗明文圖像和密文圖像相鄰像素的相關(guān)性,分別從明文圖像和密文圖像中隨機選取2 000對水平、垂直和對角三個方向上相鄰像素對,計算其相關(guān)系數(shù)[5]。表1列出了明文圖像與密文圖像在三個方向上相鄰像素的相關(guān)系數(shù),并給出了文獻[8,9]算法與該文算法對圖像加密后的相關(guān)系數(shù)比較。從表1可知,明文圖像在三個方向上相關(guān)性均較強,相鄰像素點分布集中,相關(guān)系數(shù)均接近1;而密文圖像在三個方向上的相鄰像素相關(guān)性均較弱,相鄰像素值都均勻地分布在了整個像素空間,相關(guān)系數(shù)均趨近于0,表明明文圖像的統(tǒng)計特征已被隨機的擴散到密文圖像中。
此外,從表1可知,該文算法加密后,其密文圖像的相關(guān)性統(tǒng)計性能達到了文獻[8,9]所示算法的加密性能,并在一定程度上優(yōu)于文獻[8]和文獻[9]所示算法的加密性能。
3.2 加密圖像的信息熵
灰度圖像信息熵的計算公式,其中:為灰度值的出現(xiàn)概率。對于加密圖像而言,其理想圖像信息熵為8。該文算法得到Lena密文圖像的信息熵為7.999 3,信息熵趨近于8,說明具有較好的加密效果。
3.3 密鑰敏感度分析
加密算法應(yīng)要求密鑰具有足夠的敏感性,即使密鑰有微小變化,也無法正確解密圖像。在此算法中,使用三維混沌序列,有初始參數(shù)以及自適應(yīng)參數(shù),圖2是對分別對密鑰進行微小修改,保持其他參數(shù)不變,進行解密的實驗結(jié)果。因為當(dāng)一個密鑰發(fā)生微小變化時,都無法對密文圖像正確進行解密,而且沒有顯示任何明文信息,所以該文算法對密鑰極度敏感。
4 結(jié)語
該文給出了基于混沌系統(tǒng)地適應(yīng)參數(shù)圖像加密算法,所提出的圖像加密算法將原圖像SHA-1值和三維混沌系統(tǒng)初始參數(shù)聯(lián)合作為密鑰,自適應(yīng)參數(shù)依據(jù)圖像哈希字符串計算獲取,所以不同圖像的加密過程中產(chǎn)生的混沌序列不相同,圖像置亂和擴散過程中與明文圖像有很大的相關(guān)性。實驗結(jié)果表明,密文圖像直方圖呈均勻分布,相鄰像素相關(guān)性低,信息熵接近理論值8,密鑰和明文圖像敏感性均較強,在抵御統(tǒng)計攻擊,差分攻擊等能達到很好效果,具有較好的加密性能。
參考文獻
[1] Li C Q,Li S J,Chen O R,et al.Cryptanalysis of an image encryption scheme based on a compound chaotic sequence[J].Image and Vision Computing,2009,27(8):1035-1039.
[2] 張曉強,工蒙蒙,朱貴良.圖像加密算法研究新進展[J].計算機工程與科學(xué),2012,34(5):1-6.
[3] Li C Q,Zhang L Y,Ou R,et al.Breaking a novel colour image encryption algorithm based on chaos[J].Nonlinear Dynamics,2012,70(4):2383-2388.
[4] 寇麗娟,祝英俊,蔣聯(lián)源,等.基于信息分存的整數(shù)小波大容量數(shù)據(jù)隱藏方法[J].光電子·激光,2009(9):1203-1207.
[5] 趙鋒,吳成茂.自編碼和超混沌映射相結(jié)合的圖像加密算法[J]. 計算機輔助設(shè)計與圖形學(xué)報,2016,28(1):119-128.
[6] 衛(wèi)娟,戴冬.基于雙重異或操作運算的圖像加密機制[J].計算機應(yīng)用與軟件,2015,6(32):300-302.
[7] 呂金虎,陸君安,陳士華.混沌時間序列分析及其應(yīng)用[M].武漢:武漢人學(xué)出版社,2002.
[8] Teng L,Wang X.A bit-level image encryption algorithm based on spationtemporal chaotic system and self-adaptive[J].Optics Communications,2012,285(20):4048-4054.
[9] Wang X,Luan D.A novel image encryption algorithm using chaos and reversible cellular automata[J].Communications in Nonlinear Science and Numerical Simulation,2013,18(11):3075-3085.