隨著計算機網絡多媒體技術和現代電子商務的發展,在機要、軍事、政府、金融和私人通信中,數字圖像所佔的比例越來越大,它所承載的信息安全成為當前人們關心的焦點。保護圖像信息安全,經濟有效的方法是密碼技術。但是傳統的加密算法(如DES、RSA算法),雖然應用廣泛,但其相應的破譯方法已曾出不窮,更重要的是傳統的加密算法並不適用於對圖像及視頻的處理。圖像信息安全問題有著極為廣泛的含義,考慮其安全算法時,必須考慮其數據的冗餘性、對大數據量數據加密的可實現性及能否經受住常見的數據有損壓縮、格式變換等操作。混沌動力學系統具有偽隨機性、確定性和對初始條件與系統參數的極端敏感性,因此,它為圖像信息加密提供了很好的途徑,利用它可以構造非常好的信息加密系統。
基於圖像變換域的算法是近年提出來的,主要採用的是離散餘弦變換和離散小波變換。而基於離散小波變換域[1-2]的圖像加密算法因為小波分析具有時域和頻域的良好局部化性質而得到更加廣泛的應用。對圖像數據進行離散小波變換得到的小波係數矩陣,如果其中任何一個係數發生變化,就會引起圖像原空間中的所有的像素點發生改變,如果將小波係數的變化看作一種加密方法,加密效果比只用混沌序列加密好得多。本文介紹的是在小波變換後的一種圖像加密方法,該方法將二維混沌映射[3]應用於小波域來置亂圖像,並且採用了位擴展的方法與混沌模板映射相結合的方法來達到更高的加密強度。針對該算法進行了相關的安全性能分析,實驗結果表明,該算法具有良好的安全性。
1 混沌系統
1.1 一維Logistic序列[4]的混沌特性
混沌現象是在確定性非線性動力系統中出現的確定性、類隨機的過程,這種過程沒有明顯的周期和對稱,但是卻具有豐富的內部層次的有序結構,並且對初始值有極其敏感的依賴性。Logistic映射是一種常見的混沌動力系統,基於一維Logistic映射進行加密是一種平凡的混沌加密,安全性難以保障,但可以證明二維Logistic映射所產生的混沌點集合不存在誤差構造形式,具有更安全的加密效果。
Logistic映射是目前被廣泛應用的一種混沌動力系統,其表達式為:
1.2 二維Logistic序列的混沌特性和統計特性
二維Logistic映射的系統模型為:
1.3 加密模板
本文採用的加密模塊為:
2 小波變換
採用雙正交9/7小波[5]作圖像的二級小波分解,獲得7個子帶,從低到高分別為LL2,HL2,LH2,HH2,HL1,LH1和HH1。圖像子帶特性有以下情況:LL2子帶的能量大約佔圖像信號總能量的95%;第2層(LL2、HL2、LH2、HH2、HL1)子帶的能量大約佔圖像信號總能量的97.5%;除LL2中的值基本是正值以外,其餘各子帶的值有正有負。本文算法根據變換域的圖像能量的特點對LL2層係數進行位擴展的混沌置亂。二級小波的分解如圖1所示。
3 加密/解密系統
3.1 加密過程
加密過程如圖2所示。
3.2 加密步驟
輸入:原始圖像、參數1、參數2、參數3、參數4、……。
輸出:加密圖像。
加密步聚如下:
(1) 首先對大小為N×N的lena圖像進行連續小波變換,本文採用的是二級bior3.7小波分解。
(2) 根據輸入的混沌參數由一維混沌映射開始迭代產生混沌序列,根據式(3)產生加密模板,並根據加密模板對二級小波分解後的各個係數進行調整。
(3) 將調整後的小波係數分成低頻部分(LL2)和高頻部分(包括水平區域(HL2,HL1)、垂直區域(LH2,LH1)和對角線組(HH2,HH1)3個部分),選擇低頻係數進行位擴展[6]加密, 根據輸入的混沌參數由二維混沌序列生成序列x(n)和y(n),其中x(n)序列用來對低頻部分進行位擴展加密,將x(n)從中間某位截斷取大小為1/4×N×N個數,以0.5為閾值對x(n)進行二值化,得到一個1/4×N×N大小的二值序列S,將二值序列S中的第8×j位到8×j+7位的8個二進位位組成數據t(j),最後將t(j)與調整係數後的低頻部分進行「異或」處理,即得到位擴展加密後的低頻部分係數。
(4) 對置亂後的小波低頻係數和未進行處理的高頻係數共同進行小波逆變換得到圖像I,同時用二維混沌映射產生的大小為N×N的序列y(n)對圖像I進行置亂加密,得到最後的加密圖像。
3.3 解密步驟
輸入大小為N×N的待解密圖像,二維混沌映射參數得到序列y(n)與待解密圖像行進行「異或」處理,得到的圖像進行二級bior3.7小波分解。將得到的小波係數的低頻係數進行位擴展運算,將解密後的係數與其他的高頻係數與混沌模板解密矩陣點乘,得到最後的小波係數。最後對小波係數進行小波逆變換,得到解密後的圖像。
4 實驗結果及分析
4.1 破解實驗
4.2 耗時測試
耗時測試實驗目的是驗證位擴展混沌算法的時效性。Arnold算法在圖像尺寸為128×128、256×256、512×512的周期依次為96,192,384,分別設定密鑰為50、100、200;位擴展算法的密鑰設為a=1.952,x0=0.143,則結果如表1所示。
由表1可知,基於為擴展的混沌算法在實效上優於Arnold算法,圖像越大優勢越明顯。
4.3 壓縮分析
在基於小波壓縮域的加密技術中,目前主要兩種方法為CWW和CWF。CWW指在整個圖像N×N的範圍內置亂,使得高頻係數和低頻係數產生遷移。若要進行編碼或壓縮處理時,低頻到高頻的係數遷移會造成量化誤差,影響解碼的質量,甚至會造成比特溢出而無法繼續編碼過程;而高頻到低頻的遷移,則會嚴重影響編碼的效率。這種對整個小波係數的置亂方法對壓縮的能力影響極大,會使得有損壓縮無法進行。因此本文只在同一個頻帶內置亂則不會出現這種情況,使得本算法適合於壓縮編碼等情況。壓縮處理過程只會造成解密圖像質量的下降,不會對圖像要表達的內容構成實質性損害。
本文將位擴展運算運用於小波域來加密圖像,同時與混沌模板序列相結合,並利用二維混沌序列對圖像的小波係數進行置亂和置換變換,實現了小波變換域的高強度加密。本文提出的算法不僅能獲得很好的加密效果,而且相比於其他的置亂算法,可以很大程度地節約計算時間,減小計算的複雜度。同時採用混沌加密模板,比傳統的混沌序列有更高的加密強度。密鑰簡單,但空間卻很大,不易破解。仿真實驗表明,該算法的實用性很強,在不改變小波係數值的前提下,運算速度快,加密造成的膨脹量小。