魯菁 浮燕 何蕓
摘 要 根據(jù)數(shù)字圖像的特點(diǎn),將混沌技術(shù)應(yīng)用于數(shù)字圖像加密中,對圖像進(jìn)行置亂和像素值替換,最終實(shí)現(xiàn)圖像加密。從實(shí)用性的角度,對初始密鑰進(jìn)行處理,使得算法能夠接受字符形式的用戶密鑰,提高了算法的實(shí)用性和安全性。
關(guān)鍵詞 Lorenz系統(tǒng) 密碼學(xué) 混沌加密 數(shù)字圖像
中圖分類號:TP393.08 文獻(xiàn)標(biāo)識碼:A
隨著數(shù)字多媒體技術(shù)和計算機(jī)網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,數(shù)字多媒體的安全性和保密性就越來越重要。數(shù)字圖像的加密和解密在信息安全技術(shù)中尤其重要,希望加密后的圖像類似于現(xiàn)實(shí)世界的白噪聲,這樣,未授權(quán)者就無法得到圖像的有效信息,實(shí)現(xiàn)了數(shù)字圖像信息的安全和保密。而傳統(tǒng)的對文本加密的方法無法適應(yīng)數(shù)字圖像自身的特點(diǎn),所以不適合應(yīng)用于數(shù)字圖像加密。混沌理論是一種新興的非線性理論,它具有以下幾個特征:對初值敏感性、不可預(yù)測性、非線性、偽隨機(jī)性。這些特性非常適合于數(shù)字圖像信息的加密。但是混沌序列是一種高度依賴迭代精度的序列,當(dāng)理論精度是無窮大時,混沌序列可以看作是理想的隨機(jī)序列,近似于現(xiàn)實(shí)世界的白噪聲。實(shí)際應(yīng)用中,由于計算部件精度的限制和實(shí)現(xiàn)成本的制約,都無法達(dá)到無窮的計算精度,這樣得到的混沌序列就是一種有周期的偽隨機(jī)序列。
1 Lorenz系統(tǒng)介紹
Lorenz混沌系統(tǒng)是美國著名的氣象學(xué)家洛倫茲在1963年研究大氣運(yùn)動時提出的,其方程組表達(dá)式如下:
其中表示對流運(yùn)動的振幅,與運(yùn)動強(qiáng)度成正比;表示上升流與下降流的溫度差;表示垂直溫度分布與線性溫度廓線的偏差,即垂直溫度分布的非線性度;表示流體分子的粘性系數(shù);為瑞利數(shù);為幾何因子,沒有直接的物理意義。
1.1 加密算法的密鑰設(shè)計
混沌模型用于加密算法中的時候,這些混沌模型的參數(shù)和系統(tǒng)初始值理論上都可以作為加密算法的初始密鑰。但是為了使得加密算法有良好的安全性能,必須保證這些超混沌模型能夠進(jìn)入超混沌狀態(tài),因此,在算法中,僅僅把這三個模型中每一個模型的初始值,作為算法的初始密鑰,由用戶輸入,而把這些模型中的所有系統(tǒng)參數(shù)都按照上面給出的進(jìn)入超混沌狀態(tài)時的取值在算法中固定下來。
另外,為了區(qū)分不同模型的初始值,將這三個模型中的初始值,分別記作M,N;A,B;U,V。即混沌模型的兩個初始值在加密算法中記為M,N;超混沌模型的兩個初始值在加密算法中記為A,B;混沌模型的兩個初始值在加密算法中記為U,V。
所以初始密鑰K是一個6元組,包含6個子密鑰:
K=(M,N,A,B,U,V)。
1.2 加密算法原理
利用圖像像素值替換算法,對置換后的圖形進(jìn)行像素值的修改,得到最終的密文圖像。解密的過程與加密相似,采用相同的初始密鑰,對超混沌模型進(jìn)行迭代,分別生成置換矩陣、密鑰流矩陣和替換次序矩陣。先將密鑰矩陣與密文按位進(jìn)行異或操作,再把結(jié)果根據(jù)置換矩陣進(jìn)行逆向置換,既可以解密為初始明文。
2 算法的安全性分析及實(shí)驗(yàn)結(jié)果
對256*256大小的灰度lena圖像,采用Matlab工具對優(yōu)化后的多級混沌加密算法進(jìn)行實(shí)驗(yàn),并對實(shí)驗(yàn)結(jié)果進(jìn)行安全性分析。
2.1 實(shí)驗(yàn)結(jié)果
對原始圖像進(jìn)行加密,輸入的初始密鑰(未經(jīng)字符化處理)K(M,N,A,B,U,V)=(4.32,0.25,0.17,0.66,1.67,2.05)。
可以看出,利用該多級混沌圖像加密算法,使得原始圖像被充分的置亂與替換,直觀上無法看出原始圖像的痕跡。
2.2 密鑰空間和密鑰敏感性分析
本算法的初始密鑰未經(jīng)字符化處理前,為實(shí)數(shù),由6個子密鑰構(gòu)成。若計算機(jī)的精度為1015,則密鑰空間遠(yuǎn)遠(yuǎn)大于1090,完全可以抵抗窮舉法的攻擊。密鑰經(jīng)字符化處理后,密鑰空間為位字符(≥6),所以密鑰空間為256n,當(dāng)足夠大時,可以抵抗窮舉攻擊;另外,由于算法加入了時間戳,實(shí)際密鑰空間也極大增加。利用正確的初始密鑰,可以對加密圖像進(jìn)行解密,解密后的圖象質(zhì)量良好。另外,當(dāng)解密密鑰發(fā)生微小的錯誤(0.001)時,不能正確還原圖像,解密圖像混亂無序,沒有意義。這說明,解密過程對密鑰非常敏感,算法的安全性較高。
2.3 相關(guān)性分析
從加密圖像中隨機(jī)抽取1000對垂直相鄰的像素,對它們的相關(guān)性進(jìn)行分析。圖中橫坐標(biāo)表示像素點(diǎn)()的像素值,縱坐標(biāo)表示像素點(diǎn)( +1)的像素值。
可以看出加密后圖像的相鄰像素值較為均勻得分布到了整個像素值空間。相鄰像素值不僅僅在低值空間均勻分布,在高值空間也同樣均勻分布。這說明,加密后的圖像灰度分層現(xiàn)象消失,因而圖像的相關(guān)性大大減弱。
采用相關(guān)性計算公式,對算法的加密圖像計算相關(guān)系數(shù),結(jié)果如表1所示。
表1 加密圖像的相關(guān)系數(shù)
說明加密算法使圖像的相關(guān)性降低,具有較高的抗攻擊能力。
3 實(shí)驗(yàn)結(jié)論
該加密算法在直方圖分析、相關(guān)性分析以及差分分析上均具有良好的表現(xiàn),證明該算法具有更高的安全性和實(shí)用性。