李鳳榮 劉嘉洋
【摘 要】受到離散數(shù)學(xué)中超混沌系統(tǒng)及信息轉(zhuǎn)移的啟發(fā),將嘗試結(jié)合兩者形成新算法框架并應(yīng)用于圖像加密相關(guān)的信息安全領(lǐng)域。通過分析超混沌系統(tǒng),計算生成混沌吸引子相圖、像素值相關(guān)度等非線性動力學(xué)特性,并實現(xiàn)超混沌系統(tǒng)展開對圖像加密的研究,并著眼超混沌序列對于初始條件的敏感性、相鄰像素差置亂度、圖像加密/解密速度進(jìn)行實踐測試。 實驗成果及安全性分析表明,在該算法及所提議的框架下具有較強(qiáng)的抵御窮舉攻擊、統(tǒng)計攻擊等,具有一定的擴(kuò)展意義。
【關(guān)鍵詞】超混沌系統(tǒng);圖像置亂;混沌吸引子相圖
0 引言
與傳統(tǒng)加密方案不同,本研究將基于超混沌系統(tǒng)的新框架來實現(xiàn)加密的安全通信,設(shè)計思路如圖1所示。
混沌具有良好的偽隨機(jī)性、軌道不可預(yù)測性等一系列優(yōu)良特性。但應(yīng)用于加密算法時,低維混沌存在密鑰空間小等不安全弊端;而高維超混沌系統(tǒng)則能更有效的抵御相空間重構(gòu)等破譯攻擊。正的Lyapunov指數(shù)越高,系統(tǒng)軌道不穩(wěn)定方向越多,系統(tǒng)隨機(jī)性越強(qiáng),抗攻擊能力越高。計算表明該研究所采用的超混沌系統(tǒng)具有滿意的Lyapunov指數(shù)。
圖1 研究實現(xiàn)架構(gòu)
本文后繼展示具體的實驗步驟,集合對應(yīng)步驟結(jié)果的分析逐步深入探討并優(yōu)化實施方法,并最終通過實驗效果驗證了算法及架構(gòu)的合理性。
1 超混沌系統(tǒng)
本研究采用的超混沌系統(tǒng)動力學(xué)方程如下[1]:
■■=a(-y■+y■)■■=dy■+cy■-y■y■■■=y■y■-by■■■=y■+k(1)
其中a,b,c,d和k是非線性系統(tǒng)的常數(shù)參數(shù)。當(dāng)a=36,b=3,c=28,d=-16和-0.7≤k≤0.7時,該系統(tǒng)是超混沌的。
混沌序列可以通過以下步驟生成:通過四階Runge-Kutta離散算法迭代超混沌系統(tǒng)N0次以獲得四個離散狀態(tài)序列yk(k=1,2,3,4)。然后用過yk構(gòu)造隨機(jī)整數(shù)序列xk,(k=1,2,3,4):xk(i)=mod((|yk(i)|-?骔|yk(i)|?骎)×10t,D(i))其中xk(i) 是序列xk第i個值,|x|表示x的絕對值,|x|返回小于或等于x的最近整數(shù)。
在研究實現(xiàn)中,N0取100000,即采用Runge-Kutta迭代100000次,取后面99000各數(shù)據(jù)得到混沌序列生成點對。系統(tǒng)的混沌吸引子軌道線在特定的吸引域內(nèi)具有遍歷性[2]。
3 像素級置亂
3.1 對加密圖像的位置置亂
為了擾亂圖像相鄰像素間的高度相關(guān)性,利用置亂矩陣來置亂原圖像像素位置。實驗具體操作步驟如下:
(1)用迭代生成的混沌序列,舍棄前10000個值,將后面的99000個值作為實際使用的混沌序列。
(2)對混沌序列做如下處理:
x1(k)=|x1(k)|-fix(x1(k))x3(k)=|x3(k)|-fix(x3(k))(2)
(3)將由(2)產(chǎn)生的混沌序列排序,分別從行和列建立從原序列到新序列的映射(一定為單射+滿射),即將排序序列作為圖像數(shù)據(jù)矩陣的行序列和列序列,從而實現(xiàn)對原圖像位置的置亂[3]。
3.2 置亂的局限性
像素級置亂破壞了原圖像相鄰像素點相關(guān)性,但是圖像的灰度直方圖并沒改變,因而安全性不夠高,很難抵御已知明文攻擊,仍需要做進(jìn)一步的加密。
4 比特級置亂
4.1 像素值擴(kuò)散
仍然由超混沌系統(tǒng)生成的4個混沌序列出發(fā),把其作為加密密鑰來加密圖像:
(1)對各序列預(yù)處理:
xi=mod(fix((|xi|-?骔|xi|?骎)×1015),256
(2)通過x0決定使用的三元組:
x0=mod(x4,4)
其中x0的四個值分別對應(yīng)四個不同的三元組;
(3)以x0=0為例,使用三元組(x1,x2,x3)
定義:置亂后矩陣為一個1*M*N的向量P(作為本例輸入);擴(kuò)散后矩陣置亂后矩陣為一個1*M*N的向量C(作為加密圖像輸出)則有:
C(3×i+1)=P(3×i+1)?茌x1?茌C(3×i)
C(3×i+2)=P(3×i+2)?茌x1?茌C(3×i+1)
C(3×i+3)=P(3×i+3)?茌x1?茌C(3×i+1)
其中:i=0,1,2...■,P(i)和C(i)分別代表了置亂后的圖像和密文圖像像素灰度值,C(0)=100。
4.2 置亂效果
實驗選用256×256、灰度為256色的Lena位圖作為實驗圖像。如圖2和圖3所示:
圖2 測試用例原始圖像
圖3 比特級置亂效果
5 密鑰空間分析
超混沌系統(tǒng)的4個初始值和參數(shù)作為密鑰。若設(shè)置精度為1*10-14,則密鑰空間總數(shù)超過 1*1070。如果將迭代次數(shù)也作為密鑰,則這樣的密鑰空間足以應(yīng)付大部分的密鑰攻擊[4]。
6 密鑰敏感性分析
混沌序列的選擇對混沌系統(tǒng)也是敏感的,這樣就能有效地增強(qiáng)算法的安全性。
分別取兩個不同初值的x3為26.8629和26.86290001(精度為1*10-8),迭代10w次后輸出關(guān)于x1,x3的散點效果,如圖4所示:
因隨著迭代次數(shù)的逐級上升,差異化將越來越明顯,為驗證差異性,取后1w個點的散點效果,如圖5所示:
可以看出密鑰的微小變化將引起密文的顯著變化。使用超混沌系統(tǒng)加密的安全性在于其初始值的敏感性,即攻擊者用與初始值極為相似的一個數(shù)值進(jìn)行破解,也因為細(xì)微的差別而不能正確解密出原始圖像,故加密效果良好[5]。
7 結(jié)束語
本研究所采用的實驗框架核心邏輯在于對超混沌系統(tǒng)的應(yīng)用以及同統(tǒng)計學(xué)計算技巧的結(jié)合,從而有效地應(yīng)用于圖像置亂加密?;诔煦缦到y(tǒng)完成對明文圖像進(jìn)行加密、置亂和像素值擴(kuò)散的過程,分析可得其擁有較高的精度和較大的密鑰空間。每次隨機(jī)產(chǎn)生的密鑰不同,具有“一次一密”性 。并且該算法運(yùn)速度較快(為線性時間),具有應(yīng)用于實時加密傳輸?shù)臐撛趦r值。
【參考文獻(xiàn)】
[1]Gao, T., Chen, Z., Yuan, Z., Chen, G.: A hyperchaos gen- erated from Chens system. Int. J. Mod. Phys. C 17(04), 471–478 (2006).
[2]Shannon, C.E.: Communication theory of secrecy systems. Bell Syst. Tech. J. 28(4), 656–715 (1949).
[3]A,A.V.I.A.:Ergodicproblemsofclassicalmechanics.Math. Phys. Monogr. Ser. (1968).
[4]Zhang, W., Wong, K.-W., Yu, H., Zhu, Z.-I.: An image encryption scheme using lightweight bit-level confusion and cascade cross circular diffusion. Opt. Commun. 285(9), 2343–2354 (2012).
[5]盧輝斌,孫艷.基于新的超混沌系統(tǒng)的圖像加密方案,計算機(jī)科學(xué),201138(6):149-152.endprint