寧 磊, 王振永, 楊明川
(哈爾濱工業(yè)大學(xué) 通信技術(shù)研究所,哈爾濱 黑龍江 150001)
隨著世界范圍的數(shù)字圖像傳輸?shù)难杆侔l(fā)展,安全問題成為了人們關(guān)注的重要問題。許多諸如電纜電視,軍用圖像數(shù)據(jù)庫,生物測量鑒定系統(tǒng)以及在線個人照片相冊要求具有魯棒安全性的系統(tǒng)來存儲和傳輸數(shù)字圖像。
傳統(tǒng)的密碼學(xué)算法諸如DES、IDEA和RSA算法不能很好的適用于快速通信應(yīng)用。而混沌的顯著特點(diǎn)是對初始值的敏感依賴性,這使得混沌系統(tǒng)成為密碼學(xué)方案的一個有前景的另一種選擇?;诨煦绲募用芴幚碓?1989年[1]被首次提出,從那時開始,許多基于混沌系統(tǒng)的其他方案相繼被提出。
許多密碼學(xué)系統(tǒng)的安全性都是基于隨機(jī)數(shù)發(fā)生器。產(chǎn)生隨機(jī)序列的發(fā)生器能夠歸納為2大類:真實(shí)隨機(jī)數(shù)發(fā)生器和偽隨機(jī)數(shù)發(fā)生器。真實(shí)隨機(jī)數(shù)發(fā)生器具有非確定信源的優(yōu)勢,比如隨著放射性延遲時間殆盡的熱射噪聲源,混沌電路以及半導(dǎo)體容量管理數(shù)量等。偽隨機(jī)數(shù)發(fā)生器通過系統(tǒng)模型產(chǎn)生隨機(jī)數(shù),產(chǎn)生的隨機(jī)數(shù)隨機(jī)性較弱,容易攻克。近年來,數(shù)字電路的廣泛發(fā)展使得后者實(shí)現(xiàn)的成本變得低廉。這就需要找到一種增強(qiáng)偽隨機(jī)數(shù)發(fā)生器偽隨機(jī)性能的方法。
圖像加密的思想可歸結(jié)為3大類:象素置亂法[2]、位置置亂法[3]和前2類方法的結(jié)合[4]。其中象素置亂就是將某個序列與象素值進(jìn)行某種相關(guān)運(yùn)算,如異或運(yùn)算。解密過程也很簡單,只要用原始序列與加密圖像的象素值進(jìn)行相關(guān)逆運(yùn)算即可。
我們知道作為加密序列,不僅窮盡步長要大,而且窮盡過程的每個組成部分中的序列長度要盡量相等。為此,提出用窮盡熵來衡量序列的類隨機(jī)性強(qiáng)弱,選擇經(jīng)過熵選擇即優(yōu)化后的混沌序列采用象素置亂法對圖像進(jìn)行加密。最后,安全分析表明此加密方案具有對抗已知統(tǒng)計性攻擊的魯棒性。
序列窮盡熵的概念是建立在序列的生成和再生的基礎(chǔ)上提出的。序列的生成和再生是不同的。再生是序列自我的簡單復(fù)制過程,而序列的生成中復(fù)制序列的最后一個序列值是可以變化的。具有強(qiáng)偽隨機(jī)性的序列,不僅窮盡步長要大,而且窮盡過程的每個組成部分中的序列長度要盡量相等。文獻(xiàn)[5]提出了一種利用窮盡熵衡量序列隨機(jī)性強(qiáng)弱的方法。將序列的各個窮盡部分(包括最后一個不是窮盡的組成部分)在整個序列中占的比率近似地看作其出現(xiàn)的概率 ,然后用式(1):
來計算整個序列的類隨機(jī)性強(qiáng)弱。由序列窮盡的概念和最大熵定理可知,序列窮盡步長越長,各窮盡組成部分的概率越是近似相等,則整個序列的窮盡熵越大,序列的類隨機(jī)性也就越強(qiáng)。
例如:
根據(jù)表達(dá)式(1),序列S1,S2,S3的窮盡熵分別為 0.0243哈特、0.0486哈特和0.1826哈特。窮盡熵越大,序列攜帶的信息越多,進(jìn)而序列的隨機(jī)性就越強(qiáng)。
混沌系統(tǒng)模型有很多種,我們選擇比較典型的 Lorenz混沌系統(tǒng)作為混沌序列發(fā)生器,它的數(shù)學(xué)表達(dá)式如下:
在表達(dá)式(2)中,a、b和c是系統(tǒng)參數(shù),當(dāng)a=10、b=8 3和c=28時, 保證 Lyapunov 指數(shù)λn>0。系統(tǒng)處于混沌狀態(tài)。
Lorenz系統(tǒng)可以產(chǎn)生三維混沌實(shí)序列,我們只取其中一維。由于其產(chǎn)生的是隨機(jī)實(shí)數(shù),作為加密序列,還需要對混沌序列進(jìn)行二值量化。文獻(xiàn)[6]提出了很多種量化方法,為了方便,將利用表達(dá)式(3)將實(shí)數(shù)序列映射到[- 0.5,0.5]之間,然后通過表達(dá)式(4)獲取二值序列。
在上述表達(dá)式中,bn是由Lorenz系統(tǒng)產(chǎn)生的混沌序列,int(bn)是對序列bn取整運(yùn)算,Bn是量化后的二值序列。
候選的加密序列必須具有較強(qiáng)的偽隨機(jī)性。首先通過Lorenz系統(tǒng)產(chǎn)生原始的混沌序列,二值量化后,分成N組,通過計算窮盡熵,選擇熵最大的一組作為測試序列。該序列的自相關(guān)和互相關(guān)特性如圖1所示。
我們可以看出,其自相關(guān)函數(shù)接近δ函數(shù),互相關(guān)函數(shù)接近零函數(shù),這種良好的相關(guān)性,是對圖像進(jìn)行加密的前提。
圖1 混沌序列的相關(guān)性分析
所提出的基于異或函數(shù)的圖像加密和解密方案在MATLAB中予以實(shí)現(xiàn)。該方案包括以下步驟:
①該方案首先找到明文圖像的大小為M×N,此處M表示圖像的行數(shù),N表示圖像的列數(shù),這些像素點(diǎn)被按照從左到右從上到下的順序排列,由此得到一個該圖像的數(shù)據(jù)集,其中的每項都是像素點(diǎn)的一個十進(jìn)制灰度值(從0到255),然后將每個十進(jìn)制數(shù)值轉(zhuǎn)換成等價的二進(jìn)制數(shù),最終得到一個一維矩陣B。
②矩陣A_candidate(n)是基于Lorenz混沌系統(tǒng)產(chǎn)生的二值序列,n代表候選序列的組數(shù),利用窮盡熵的定義選擇熵最大的一組作為優(yōu)選混沌序列A。
③將A和圖像矩陣B經(jīng)過異或運(yùn)算得到了第三個矩陣C,即C=A⊕B。
④這樣得到的矩陣 C通過第一步的相反過程轉(zhuǎn)換為一個加密編碼后的圖像,作為密文進(jìn)行傳輸;
對于圖像的解密我們再次采用異或函數(shù)進(jìn)行運(yùn)算,即C⊕B=A。在圖2中我們可以看到大小為131× 131的Lena明文圖像,以及采用以上方案得到的加密后的密文圖像和解密后的明文圖像。
圖2 圖像加密恢復(fù)過程
一個好的加密方案應(yīng)該具有魯棒性抵抗所有的密碼分析,統(tǒng)計性和窮舉攻擊。文章完成了所提出的圖像加密方案的一些安全性分析—柱形統(tǒng)計圖分析和2個相鄰像素的相關(guān)分析。
香農(nóng)提出擴(kuò)散和混淆的兩種方法用來防止統(tǒng)計性攻擊[7]。明文Lena圖像和所提出方案獲得的加密圖像的柱形統(tǒng)計圖如圖 3所示。比較柱形統(tǒng)計圖我們可以看出加密圖像的灰度值呈現(xiàn)均勻分布,其和明文圖像的柱形統(tǒng)計圖具有明顯不同。所以,加密后的圖像對于任何的統(tǒng)計性攻擊都具有安全性。
圖3 圖像柱狀統(tǒng)計
對于任意一個圖像,每個像素點(diǎn)無論在水平方向,垂直方向或者對角方向都與其相鄰的像素點(diǎn)高度相關(guān)。為了測試在明文圖像中像素點(diǎn)的相關(guān)性,以及在加密圖像中像素點(diǎn)的相關(guān)性,我們利用以下公式計算了每個像素對的相關(guān)系數(shù)γ[8]。
這里x和y是圖像中2個相鄰像素點(diǎn)的灰度值,N是像素點(diǎn)相鄰像素對的總個數(shù)。在明文圖像和密文圖像中的2個水平相鄰像素點(diǎn)的相關(guān)性如圖4所示。
在表1中我們發(fā)現(xiàn)密文圖像的在任意方向的相關(guān)系數(shù)都近似等于零,所以密文圖像具有很小的關(guān)聯(lián)性。
圖4 圖像中相鄰兩像素的相關(guān)
表1 兩種圖像中兩相鄰像素的相關(guān)系數(shù)
文章提出了一種基于窮盡熵優(yōu)化的混沌圖像加密方案。通過利用窮盡熵來度量序列的類隨機(jī)性強(qiáng)弱,選擇熵最大的一組混沌序列對圖像進(jìn)行加密。最后,安全分析表明此加密方案具有對抗已知統(tǒng)計性攻擊的魯棒性。
[1]MATTHEWS R. One the Derivation of a Chaotic Encryption Algorithm[J]. Cryptologia, 1989(08):29-42.
[2]陳永紅,黃席樾. 一種混沌系統(tǒng)的設(shè)計及其在圖像保密變換中的應(yīng)用[J].計算機(jī)應(yīng)用, 2004,10(26):52-55.
[3]唐林山,江成順. 一種結(jié)合混沌的熱流密碼圖像加密算法[J].計算機(jī)工程與應(yīng)用,2007,43(03):37-39.
[4]閔連權(quán). 基于雙置亂的圖像加密算法[J].測繪科學(xué), 2006,31(03):71-73.
[5]FENG M. Analysis on Random-like Property of Chaotic Motions with Exhaustive Entropy[C]. Automation and Logistics, 2007 IEEE International Conference on, 2007: 2420-2425.
[6]KOHDA T, TSUNEDA A. Statistics of Chaotic Binary Sequences[J].IEEE Transactions on information theory,1997,43(11):104-112.
[7]SHANNON E. Communication Theory of Secrecy System[J]. J. Bell Syst. Tech., 1949(28):656-715.
[8]CHEN G R, MAO Y B, CHARLES K. A Symmetric Image Encryption Scheme based on 3D Chaotic Cat Maps[J]. Chaos, Solitons and Fractals, 2004(21):749-761.