沈超,王威威
(蘭州大學(xué)信息科學(xué)與工程學(xué)院,蘭州 730000)
隨著計(jì)算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,海量的圖像和視頻等信息通過(guò)網(wǎng)絡(luò)進(jìn)行傳輸,如何安全地保證這些信息不被泄露出去成為網(wǎng)絡(luò)安全技術(shù)領(lǐng)域中一個(gè)研究熱點(diǎn)。數(shù)字圖像加密技術(shù)的出現(xiàn)和應(yīng)用極大地解決了圖像信息傳輸過(guò)程中的可靠性和安全性問(wèn)題,其中基于混沌理論的數(shù)字圖像加密技術(shù)成為研究熱點(diǎn)[1-2]。
文獻(xiàn)[3]提出的基于組合混沌系統(tǒng)的加密算法選用了低維的Logistic映射和Henon映射,利用Logistic映射產(chǎn)生的序列選擇加密方式。雖然提高了初始值密鑰的敏感性,但是由于低維的系統(tǒng)組合和缺少密鑰與明文的關(guān)聯(lián)性,導(dǎo)致混沌序列結(jié)構(gòu)簡(jiǎn)單且不同的原始圖像密鑰是一樣的,不能實(shí)現(xiàn)一密一鑰,密文安全性性能較差。文獻(xiàn)[4]提出的基于多混沌系統(tǒng)的加密算法采用了三種低維的混沌系統(tǒng),三種混沌系統(tǒng)組成三種加密結(jié)構(gòu)分別對(duì)原始圖像的三個(gè)灰度圖像進(jìn)行加密,再把加密后的各個(gè)圖像組合起來(lái)生成最終的加密圖像。但是該算法中,各個(gè)混沌系統(tǒng)的初始值只是簡(jiǎn)單的用MD5算法生成,雖然做到了密鑰與明文相關(guān)聯(lián),明文的微小改變都會(huì)使得加密后的密文圖像差別巨大,但是密鑰沒(méi)有采用分級(jí)密鑰算法,導(dǎo)致初始值密鑰容易受到攻擊,加密安全性得不到保證。文獻(xiàn)[5]提出的基于復(fù)合超混沌系統(tǒng)的加密算法,將Clifford超混沌和Logistic超混沌進(jìn)行嵌套組合得到性能更好的Cli-Log混沌系統(tǒng)進(jìn)行加密操作,同時(shí)也加入了明文相關(guān)算法,但是同樣缺少層級(jí)密鑰算法的設(shè)計(jì),導(dǎo)致密文的信息熵才勉強(qiáng)達(dá)到7.9897,很容易受到信息熵分析的攻擊,安全性同樣不能保證。針對(duì)這些不足之處,本文采用了Lorenz超混沌系統(tǒng)和Chen超混沌系統(tǒng)這兩種超混沌系統(tǒng),設(shè)計(jì)了明文相關(guān)性算法并改進(jìn)了層級(jí)密鑰產(chǎn)生規(guī)則,進(jìn)一步提高了加密算法的安全性能。
由于超混沌系統(tǒng)能產(chǎn)生更復(fù)雜的混沌信號(hào),有著更復(fù)雜的吸引子拓?fù)浣Y(jié)構(gòu)和動(dòng)力學(xué)特性,其產(chǎn)生的超混沌序列復(fù)雜度更高,更有利于對(duì)二維圖像序列的擾亂和替換,可以進(jìn)一步提高圖像加密的性能。所以本文算法采用經(jīng)典的Lorenz超混沌系統(tǒng)和Chen超混沌系統(tǒng)。
Lorenz超混沌系統(tǒng)方程如式所示:
式中x,y,z,w是混沌系統(tǒng)的狀態(tài)變量,a,b,c,r是混沌系統(tǒng)的控制參數(shù),當(dāng)取時(shí),4個(gè) Lyapunov指數(shù)依次為:λ1=0.2965,λ2=0.1612,λ3=0,λ4=-15.0993,式(1)處于超混沌狀態(tài)。隨著參數(shù)c變化的Lyapunov指數(shù)圖譜如圖1所示。
圖1 隨參數(shù)c變化的Lyapunov指數(shù)圖譜
Chen超混沌系統(tǒng)方程如式所示:
式中x,y,z,w為狀態(tài)變量,a,b,c,d,r為控制參數(shù),當(dāng)取a=35,b=3,c=12,d=7,r=0.7 時(shí),4 個(gè) Lyapunov 指數(shù)依次為:λ1=0.5986,λ2=0.0429,λ3=0,λ4=-25.4095,式(2)處于超混沌狀態(tài)。隨著參數(shù)r變化的Lyapunov指數(shù)圖譜如圖2所示。
圖2 隨參數(shù)r變化的Lyapunov指數(shù)圖譜
將 Lorenz 超混沌系統(tǒng)的初始值 (x1,y1,z1,w1)作為第一級(jí)的密鑰,根據(jù)灰度像素值級(jí)將像素值分為四個(gè)塊矩陣記為H1,H2,H3,H4,統(tǒng)計(jì)出每塊矩陣中元素的個(gè)數(shù) 記 為NH1,NH2,NH3,NH4。 同 時(shí) 用 此 方 法 對(duì) 序 列Series1進(jìn)行分塊并統(tǒng)計(jì)出序列Series1中每個(gè)塊矩陣中元素的和記為SUM1,SUM2,SUM3,SUM4 。得到第二級(jí)密鑰為 (x2,y2,z2,w2),將其作為 Chen 超混沌系統(tǒng)的初始值參數(shù),用同樣的方法進(jìn)行迭代和處理得到密碼序列X2。
將得到的密碼序列X2中重復(fù)的元素去重,將集合中沒(méi)有在序列X2中出現(xiàn)的元素從小到大的順序排在序列X2的尾端,最終得到無(wú)重復(fù)的序列G,用Zigzag掃描順序規(guī)則將二維圖像序列排序成一維圖像序列記為zig進(jìn)行位置置換,再將置換后的向量zig,,再還原為M×N的矩陣得到置亂后中間密文圖像。
用加取模運(yùn)算進(jìn)行兩次循環(huán)操作后才能將每個(gè)明文像素點(diǎn)的信息都擴(kuò)散到密文中。加密前后效果如圖3和圖4所示。
圖3 密文圖像
圖4 密文圖像
本文設(shè)計(jì)的加密算法的密鑰空間約為2512,遠(yuǎn)大于理論值大于2200,密鑰空間足夠大能抵抗窮舉攻擊。
兩幅隨機(jī)圖像的UACI理論值為33.4635%,而NPCR的理論值為99.6094%。由表1對(duì)比可知,本文提出的算法加密后所計(jì)算的NPCR和UACI值更接近理論值。
表1 UACI和NPCR對(duì)比
本文研究了層級(jí)密鑰且明文相關(guān)的超混沌圖像加密算法,設(shè)計(jì)的加密算法密鑰空間更大并且混沌序列更復(fù)雜,具有抵抗窮舉攻擊、統(tǒng)計(jì)攻擊、差分攻擊等常見(jiàn)攻擊的能力。