歐鍛灝, 孫 偉, 林 博
(1. 中山大學信息科學與技術學院,廣東 廣州 510006;2. 中山大學軟件學院,廣東 廣州 510006)
隨著多媒體技術和互聯網技術的發展,越來越多的個人和公眾信息特別是多媒體信息在公開的網絡上方便地傳輸。因而,圖像信息的安全問題備受人們的關注。為了保證圖像信息的安全,常用的處理方法是對圖像進行加密處理,使得攻擊者無法從秘密圖像中得到任何信息。由于該課題的重要性,圖像加密的研究吸引了廣大學者的關注。目前,圖像加密主要通過圖像置亂,灰度值替代或兩者相結合的方法實現。丁瑋等[1]提出了一種基于 Arnold置亂的數字圖像加密方案,該方法雖然簡單易行,但是Arnold置亂過程速度較慢,且密鑰短。置亂方法中Arnold置亂[1]和 Gray碼置亂[2]僅僅對原圖像的像素的位置進行重排列,并不改變原圖像的顏色直方圖,因而容易受到統計分析方法的攻擊而被破譯,安全性不高。而在灰度替換的圖像加密過程中,采用的方法主要是以形式固定的矩陣進行置亂,圖像的置亂效果和安全性往往依賴于置亂的次數。
目前許多學者致力于研究新的圖像加密方案[3-4],以提高方案的安全性和效率。但在這些方案中大都沒有檢驗密圖完整性的能力。為了擴展應用,本文基于組合理論知識和可逆整數矩陣,設計出一個具有完整性檢驗能力的圖像加密方案。
文獻[5]基于組合理論的性質,利用一個整數導出了可逆整數矩陣和其逆矩陣的表達式。設給定整數x≥0,由關系式

為元素可以構造一個與A(x)互逆的n階整數矩陣

由文獻[5]的證明可知,所構造的矩陣A(x)和B(x)互逆,且矩陣均由x決定。在圖像加密過程中,x可以作為加解密的密鑰。
但是由于計算組合數的緣故,導出生成的可逆矩陣元素值可能非常大,以致超過256灰度級的范圍。為了解決這個問題,將以上得到的可逆矩陣的所有元素模M。顯而易見,模M后的矩陣同樣是??赡娴?,即

一幅灰度圖G可以視為一個元素值為[0,255]的整數矩陣。本方案首先給出密鑰x、M= 256、以及密鑰矩陣的大小blocksize,然后根據第1節描述的算法,產生一對模256的可逆矩陣A和B,其值的范圍為[0,255]。在加密方案中,矩陣B用來作為加密的密鑰,而A用來作為解密的密鑰。A和B均可由x導出生成,在加密解密過程中,僅需要把x作為密鑰保存即可。
加密前對秘密圖像進行預處理,即將原始圖像的像素加128,目的是為了處理全黑的特殊情況。解密恢復時,把得到的結果相應的減去128。假定,經過預處理之后的灰度圖像為

其中gij為圖像坐標(i, j)處的灰度值。
加密過程分為兩個過程,具體描述如下:
Phase 1 將密鑰矩陣B從圖像G的左上角,以1/4× b locksize 的步驟,從左到右,從上到下覆蓋地掃描到右下角,得到G'。移動過程中,密鑰矩陣B和掃描經過的圖像塊block的作用方式

Phase 2 將密鑰矩陣Β從G'的右下角,以1/4× b locksize的步驟,從右到左,從下到上覆蓋地掃描到左上角,得到G''。移動過程中,密鑰矩陣B和掃描經過的圖像塊block的作用方式

加密過程中的掃描方式,決定了塊的變化將對其他塊的恢復產生影響。而掃描過程中,加密矩陣和矩陣塊的作用方式,決定了塊內點的變化將對塊內其他點的恢復產生影響,這就增加了像素點之間的相關性。這樣,加密圖像出現微小變化,將影響到恢復圖像的全局變化。因此,該圖像的加密方案是脆弱的。該性質可以用作圖像信息的完整性檢驗。
解密密鑰A同樣可由x生成導出,且A與B是模256的可逆矩陣。解密過程是加密的簡單逆過程,也分為兩個階段,具體流程如下:
Phase 1 將密鑰矩陣A從G''的左上角,以1/4× b locksize 的步驟,從左到右,從上到下覆蓋地掃描到右下角,得到G'。而移動過程,密鑰矩陣A和掃描經過的矩陣塊block的作用方式

Phase 2 將密鑰矩陣A從G'的右下角,以1/4 × b locksize的步驟,從右到左,從下到上覆蓋的掃描到左上角,得到圖像G。而移動過程中,密鑰矩陣A和掃描經過的矩陣塊block的作用方式

最后,將圖像G的像素按照預處理的逆過程減去128,便可得到原始的秘密圖像。
在實驗中,令密鑰x=1, b locksize= 3 2,。根據第1節描述的算法,產生一對模256的可逆整數矩陣A和B,作為密鑰矩陣。選擇復雜圖像 Fishingboat,Lena,Clock,Baboon和簡單黑白圖像S作為測試圖像,所有測試圖像大小均為256× 256。系統環境 Windows7,安裝內存 2G,CPU 2.90GHZ,實驗測試環境matlab7.9。實驗結果如圖1所示。
圖1的實驗結果表明,不管是復雜的自然圖像,還是輪廓明顯的簡單黑白圖像,加密后的密圖是一個均勻的噪聲圖。而且,當密圖中的某一個像素發生微小變化時,解密得到的圖像仍然是噪聲圖,得不到原始圖像的任何信息,所以該加密方案是脆弱、易損的。通過人眼視覺可以判斷該秘密圖像是否被篡改,從而檢驗密圖信息的完整性,不需要任何復雜的計算。實驗結果表明了圖像加密方案的有效性。
本文為了客觀的描述加密圖像與原始圖像的差別,利用兩圖像的相關系數作為圖像相似性的客觀度量[6]。

圖1 圖像 Fishingboat,Lena,Clock,Baboon和S的實驗結果
為了比較,本文對 Lena圖像分別利用本文方案和Arnold置亂方案[7]進行測試,實驗結果如圖2所示。結果表示,當密圖中的某一像素發生微小變化時,利用本文方案解密得到的恢復圖依然是個噪聲圖(與原始圖像的相關系數ρ= 0 .0005),而 Arnold方案卻可以恢復出原始圖像的許多信息(與原始圖像的相關系數ρ= 0 .9999)。

圖2 Arnold置亂算法與本文算法的實驗結果
在進行安全性分析前,介紹文獻[8]所描述的一個定理,即ZM上n階可逆矩陣的個數為

本文提出一種基于可逆矩陣的具有完整性檢驗能力的圖像加密方案。本方案采用替代加密,而不是置亂加密,可以抵抗直方圖的統計攻擊。密圖完整性的檢驗只需憑借人類視覺系統,不需要任何復雜的計算。本方案可以應用于數字圖像隱藏的預處理,以提高信息的隱蔽性。此外,本文方案可以簡單地擴展到彩色圖上的應用,實現彩色圖的加密,具有良好的擴展性和應用性。
[1]丁 瑋, 閆偉齊, 齊東旭. 基于 Arnold變換的數字圖像置亂技術[J]. 計算機輔助設計與圖形學學報,2001, (4): 338-341.
[2]鄒建成, 李國富, 齊東旭. 廣義 Gray碼及其在數字圖像置亂中的應用[J]. 高校應用數學學報 A 輯(中文版), 2002, (3): 363-370.
[3]Zhou Nanrun, Dong Taiji, Wu Jianhua. Novel image encryption algorithm based on multiple-parameter discrete fractional random transform [J]. Optics Communications, 2010, 283(15): 3037-3042.
[4]Xu Shujiang, Wang Yinglong, Guo Yucui, et al. A novel image encryption scheme based on a nonlinear chaotic map [J]. IJIGSP, 2010, 2(1): 61- 68.
[5]董永勝. 一種整數矩陣求逆方法的證明[J]. 長春師范學院學報, 2007, (4): 4-5.
[6]朱永松, 國澄明. 基于相關系數的相關匹配算法的研究[J]. 信號處理, 2003, (6): 531-534.
[7]陳 銘, 平西建. 基于 Arnold變換的圖像信息偽裝算法[J]. 計算機應用研究, 2006, (1): 235-238.
[8]張勝元. Z_n上m階可逆矩陣的計數[J]. 福建師范大學學報(自然科學版), 1999, (1): 18-20.