摘 要:給出一種在二維小波變換基礎上進行混沌映射,將圖像加密的方法。該方法應用二維小波分解算法分解圖像信息,再對其實行正弦混沌映射,從而完成圖像的加密。解密時,首先對系數進行正弦映射的逆映射,再進行二維小波重構,實現對原始圖像的解密。仿真結果證明了該方法的有效性。
關鍵詞:小波變換;加密算法;正弦映射;混沌加密
中圖分類號:TN309 文獻標識碼:B 文章編號:1004373X(2008)1508403
Image-scrambling Encryption Algorithm Based on Discrete Wavelet Transform
MU Xiuchun1,ZHANG Na2
(1.College of Electric and Information Engineering,Heilongjiang Institute of Science and Technology,Harbin,150027,China;
2.Daqing High-tech Industrial Development Zone,Daqing,163000,China)
Abstract:Based on two-dimension wavelet transformation,an image encryption algorithm is proposed.This method decomposes the image information,then using SIN chaos mapping,and bringing image encryption to access.To decryption,it first inverses mapping the coefficient,two dimension wavelet re-discompose,realizes the decryption of the original image.The result shows that this algorithm is effective.
Keywords:wavelet transformation;cryptography;Sin mapping;chaotic encryption
1 引 言
圖像信息安全問題有著極為廣泛的含義,考慮其安全算法時,必須考慮其特殊性:數據的冗余性,對大數據量數據加密的可實現性,能否經受住常見的數據有損壓縮、格式變換等操作。混沌動力學系統具有偽隨機型、確定性和對初始條件與系統參數的極端敏感性,因此,利用它可以構造非常好的信息加密系統[1]。另外,采用混沌動力學模型構造的加密系統可以在多媒體信息受到某些信號處理后,仍然可以較好地解出信息[2]。而在混沌加密之前,對圖像數據進行小波變換,變換后得到的小波系數中如果有一個發生改變,就會通過小波變換的逆運算體現在所有的像素點中,這樣的加密效果會更好。
混沌現象是非線性動態系統中出現的確定性的偽隨機過程。這種過程是非周期的、不收斂、但有界,并且它對初始條件和外部參數有極其敏感的依賴性,即初始條件的微小差異會隨著時間的推移,以李雅普諾夫指數規律相互分離,最終變成運動軌跡或特性完全不同的兩條軌跡。混沌是一種特殊的動力學系統,可以提供數量眾多、非相關、類隨機、易于產生和再生的信號,并且只要一個映射公式和初始值就可以產生混沌序列,不必存儲各個序列點的值。將混沌系統作為偽隨機序列發生器,其中混沌系統由離散混沌系統或經過離散化的連續混沌系統構成。混沌系統產生的偽隨機序列與明文進行異或操作,得到輸出即為密文。這種應用混沌進行加密算法最先由英國數學家Matthews于1989年提出。1990年,美國海軍實驗室的Pecora和Carroll首次提出了基于混沌同步概念的混沌保密通信理論,并實驗觀察到了混沌同步,是混沌用于保密通信的開端。
基于變換域的圖像加密算法,是近幾年才提出的一種新的圖像加密方法。小波分析是一種時域—頻域分析,介于純時域的方波分析和純頻域的傳統Fourier分析之間,同時具有時域和頻域的良好局部化性質,而且隨著信號不同,頻率成分在時間(空間)域取樣的疏密自動調節,可達到效率高、質量佳的效果。小波變換用于圖像處理是小波變換應用效果比較突出的領域之一,由于圖像是二維信號,因此需要用二維小波變換。
2 二維小波分析
小波變換(Wavelet Transform,WT)是廣泛應用于圖像和語音分析等眾多領域的一種數學工具,小波變換具有良好的時-頻(或空-頻)局部特性,并且還具有多分辨分析的優點,享有數學顯微鏡的美譽。它特別適合于變換域的圖像處理,如圖像的壓縮、去噪、加密和分割等。
設V3j(j∈Z)是L2(R2)的一個可分離多分辨分析:V3j=VjVj,其中Vj(j∈Z)是L2(R)的一個多分辨分析,其尺度函數為φ,小波函數為Ψ。φ(x,y)=φ(x)φ(y)是其相應的二維尺度函數,Ψ(x)是與尺度函數對應的一維標準正交小波。定義三個“二維小波”:Ψ1(x,y)=φ(x)Ψ(y)
Ψ2(x,y)=Ψ(x)φ(y)
Ψ3(x,y)=Ψ(x)Ψ(y) 則其正交平移系
2-jΨ1(2-jx-m,2-jy-n)
2-jΨ2(2-jx-m,2-jy-n)
2-jΨ3(2-jx-m,2-jy-n),(m,n)∈Z2 分別是L2(R2)內的標準正交基。
設f(x,y)∈V3j為原始圖像,其二維小波分解為:
Ajf=Aj+1f+D1j+1f+D2j+1f+D3j+1f
=∑∞m=-∞∑∞n=-∞Cj+1(m,n)φj+1(m,n)+
∑∞m=-∞∑∞n=-∞Dij+1(m,n)φj+1(m,n) (i=1,2,3)
利用尺度函數和小波函數的正交性,可得:Cj+1(m,n)=∑∞k=-∞∑∞l=-∞h(k-2m)h(l-2n)Cj(k,l)
D1j+11(m,n)=∑∞k=-∞∑∞l=-∞h(k-2m)g(l-2n)Cj(k,l)
D2j+11(m,n)=∑∞k=-∞∑∞l=-∞g(k-2m)h(l-2n)Cj(k,l)
D3j+11(m,n)=∑∞k=-∞∑∞l=-∞g(k-2m)g(l-2n)Cj(k,l) 令Hr和Hc分別為用尺度濾波器系數對陣列{Ck,l}(k,l)∈Z2的行和列作用的算子,Gr和Gc分別為用小波濾波器系數對行和列作用的算子,則二維Mallat分解算法為:Cj+1=HrHcCj
D1j+1=HrGcCj
D2j+1=GrHcCj
D3j+1=GrGcCj j=0,1,…,J其重構算法為:
Cj=H*rH*cCj+1+H*rG*cD1j+1+G*rH*cD2j+1+
G*rG*cD3j+1
3 變換域圖像加密的評價標準
圖像加密的安全性是評價一個圖像加密系統的最核心的標準。除此以外,在變換域的圖像加密中,均方誤差(MSE)或者峰值信噪比(PSNR)是評價圖像加密的一項重要指標,其中均方誤差定義為:MSE=∑M-1x=0∑N-1y=0(f(x,y)-(x,y))2M×N 對尺寸大小為M×N,量化級為0~255的原始圖像f(x,y),其峰值信噪比定義如下:PSNR(dB)=10log102552MSE其中,f(x,y)和(x,y)分別表示原始圖像和解密圖像。
4 基于小波變換的圖像置亂加密算法
基于小波變換的圖像置亂加密算法屬于基于變換域的圖像加密算法范疇,是近幾年才提出的一種新的圖像加密方法。它充分考慮到圖像信息數據的特殊性:數據的冗余性;對大數據量數據加密的可實現性:能否經受住常見的數據有損壓縮、格式變換等操作。由于該方法考慮到圖像數據的壓縮等操作對加密數據流的影響,符合現在流行的圖像編碼方案,因此具備較強的適應性,具備廣闊的應用前景。如文獻\\采用混沌序列實現基于DCT變換域的置亂算法取得較好的效果。同樣在混沌加密之前,對圖像數據進行小波變換,變換后得到的小波系數中如果有一個發生改變,就會通過小波變換的逆運算體現在所有的像素點中,這樣的加密效果就比只用混沌序列加密好得多。文獻[5]已經開始在此領域內開展了一些工作,他們利用混沌貓映射對小波變換域系數進行置亂處理,取得較好的加密效果。文獻[6]證明基于廣義貓映射的圖像加密算法在已知圖像攻擊下是不安全的。本文設計了一種基于小波變換與混沌相結合的圖像加密算法。
4.1 圖像的小波分析
圖像經小波變換分解后,不僅使時-頻兩域的信息有效的分離,而且時-頻兩域信息一一對應。利用這一特性,對小波分解后的四個子圖作相同的置亂,可以明顯改進解密圖像的信噪比。
圖1 圖像的小波分解4.2 基于正弦映射的圖像置亂方法
圖像置亂算法的設計通常是尋找一個映射關系T,使xn+1
yn+1=Txn
yn。
然而一個好的圖像置亂算法還應具有圖像置亂效果要好、圖像置亂效率要高以及密鑰空間要大等特點。按照傳統圖像置亂算法的設計思路要尋找到同時滿足上述條件的置亂變換是非常困難的。本文利用混沌系統的初值敏感性,參數敏感性和類隨機性的特點,提出了一種基于正弦映射的圖像置亂算法,它能達到圖像置亂效果好,效率高且密鑰空間大的目的。
正弦映射的圖像置亂算法的意義在于其置亂矩陣T由正弦映射產生。輸入系統參數μ和初始值x0,采用正弦混沌映射xn+1=f(μ,xn)=μsin(πxn),n=0,1,2,…。迭代K+L次得到混沌序列xi,i=0,1,…,K+L-1,為保證混沌系統的初值敏感性和參數敏感性,舍棄混沌系統的前L次迭代數據。因此,剩余混沌序列可用xj,j=0,1,…,K-1表示。則置亂矩陣T中(x,y)處的元素t(x,y)的值可由t(x,y)=\\,k=x×M+y得到。其中\\表示取整操作,由正弦混沌映射xk∈(0,1]可知,置亂矩陣T的元素t(x,y)∈{0,1,2,…,K-1}。因此,可用t(x,y)表示圖像的位置信息。
4.3 算法設計
根據混沌的參數敏感性、初始值敏感性特點,本文設計的算法步驟如圖2所示。
圖2 基于小波變換的圖像加密原理圖步驟1 圖像預處理:設原始圖像為f0(x,y),對f0(x,y)進行如下式的預處理得到f1(x,y):
f1(x,y)=(f0(x,y)+g1(x,y)·x+
g2(x,y)·y)mod L
其中,g1(x,y)和g2(x,y)是正弦混沌系統迭代并作取整得到的兩幅混沌圖像。L為圖像的灰度級,對灰度圖像取L=256。原始圖像經此預處理后可使f1(x,y)接近于隨機圖像。
步驟2 對圖像f1(x,y)進行小波變換得到圖像f2(x,y),f2(x,y)由4個子圖像組成。
步驟3 對f2(x,y)的四個子圖像均采用混沌變換置亂處理得到f3(x,y),f3(x,y)也是由4個子圖像組成。
步驟4 對f3(x,y)進行小波逆變換,得到加密圖像f4(x,y)。
圖像解密過程是加密的逆過程。首先根據密鑰生成逆置亂序列和解密模板,對加密圖像進行列、行逆置亂,再恢復小波系數,然后根據小波系數重構圖像,達到解密圖像的目的。
5 實驗結果及分析
用本文算法對Lena圖像(尺寸為256×256,灰度級L=256)進行加密,實驗結果如圖3所示。其中g1(x,y)和g2(x,y)分別是在x01=0.6,μ1=0.98和x02=0.5,μ2=0.99的條件下由正弦混沌系統得到的;預處理圖像進行一階小波變換,小波分解后的四個子圖均采用相同的密鑰進行混沌變換,混沌變換中采用正弦映射,其系統參數μ=0.999,初始值x0=0.7。在小波變換域的圖像加密算法中,由于混沌變換改變了小波系數的位置,會使解密圖像質量有所降低。若同樣用峰值信噪比對解密圖像和原始圖像的一致性進行客觀評價,可得到解密圖像與原始圖像的峰值信噪比PSNR=60.139 4,由此可知,客觀評價與主觀評價結果是一致,且性能很好。
圖3 基于小波變換的圖像加密結果由正弦混沌系統的敏感性測試結果可知,必須正確輸入所有密鑰,即正弦混沌系統的初始值x0,x01,x02和系統參數μ,μ1,μ2才能正確解密圖像。因此,本文提出的圖像加密算法總的密鑰空間非常大,可達1084,非授權者用窮舉法破密在有限的時間內是很難破密成功,分析表明本文算法具有很高的安全性。
6 結 語
基于小波變換域的圖像加密是一種重要而有效的圖像方法。本文對基于小波變換的圖像加密算法進行了研究,該算法主要利用混沌變換對小波分解系數進行相同的置亂混沌變換。這種做法的最大優點是保證解密圖像有很高的峰值信噪比(PSNR=60.139 4),該方法取得了較好的實驗結果。
參 考 文 獻
[1]Scharinger J.Fast Encryption of Image Datas Using Chaotic Kolmogorov Flows [A].Proceeding of the International Society for Optical Engineering[C].San Jose,California,1997,3022:278-289.
[2]Boccaletti S,Grebogi C,Lai Y-C,et al.The Control of Chaos:Theory and Applications[R].Physics Report,2000,329:103-197.
[3]易開祥,孫鑫,石教英.一種基于混沌序列的圖像加密算法[J].計算機輔助設計與圖形學學報,2002,12(9):672-676.
[4]孫鑫,易開祥,孫優賢.基于混沌系統的圖像加密算法[J].計算機輔助設計與圖形學學報,2002,14(2):41-42.
[5]單華寧,王執栓,王國清.一種基于小波變換的混沌圖像加密方法[J].計算機應用,2003,23(6):199-201.
[6]郭建勝,金晨輝.對基于廣義貓映射的一個圖像加密系統的已知圖像攻擊[J].通信學報,2005,26(2):131-135.
[7]馮明庫,薛迎雷.一種復合混沌序列的圖像加密方案的研究\\.現代電子技術,2006,29(19):58-60.
作者簡介 穆秀春 女,1979年出生,黑龍江密山人,助教。主要從事數字圖像加密方向的研究。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文