遙感影像加密算法

針對單一混沌映射密鑰空間小、易受攻擊且在有限精度的系統(tǒng)下受限等問題及高維混沌系統(tǒng)計算量大的缺陷,我們提出了一種基于Logistic映射與Chebyshev映射的遙感影像加密算法。

一、基于復合混沌映射的加密算法基本原理

1、基于Logistic映射和Chebyshev映射的混沌系統(tǒng)

Logistic映射是一種可產生混沌的非線性系統(tǒng),其模型為:

1

其中:0<μ≤4——分支參數,xi∈(O,1),i=O,1,2,3,…?;煦鐒恿ο到y(tǒng)的研究工作指出,當分支系數3. 5699456<μ≤4時,則Logistic映射工作于混沌狀態(tài),也就是說,在Logistic映射的作用下由初始值xo所產生的序列{xi,i=O,1,2,3.…}是非周期、不收斂的,并對初始值非常敏感。

Chebyshev映射定義為:

1

式中:k-表征系統(tǒng)非線性強度的系數,當k≥2時,映射處于混沌狀態(tài)。在方程的初值k給定情況下,方程通過迭代將生成一組混沌序列{xn,n=l,2,…)。

2、加密算法基本原理描述

本文算法加密的基本原理為:先借助原始遙感影像產生一個輔助密鑰,將輔助密鑰分別與兩個初始值調制產生兩個初始密鑰,由此初始密鑰生成Logistic映射序列和基于Chebyshev映射的混沌序列,將這兩個混沌序列相乘而得到新的混沌序列,并將其轉化為[O,255]之間的整數密碼序列。最后利用該密碼序列對原始遙感影像進行像素值的異或,每生成一個密鑰便可與圖像像素進行異或操作,直至密鑰全部產生。異或操作也進行完畢。最后隨機選取一段密碼序列對異或后的影像矩陣進行行列循環(huán)移位,最終得到加密圖像。整個加密過程沒有等待,實時性好。其原理框架如圖1所示。

1

輔助密鑰的引入使得系統(tǒng)的初始密鑰對明文有很強的依賴性,整個算法對明文比較敏感,明文圖像的任何一部分微小的變化都會引起輔助密鑰的變化,進而導致初始密鑰的變化,這樣使得攻擊者很難通過已知明文的攻擊方式破澤加密圖像,輔助密鑰的引入還可以增大主密鑰空間。

低維混沌序列很容易受到混沌模型重構方法的攻擊,本文算法使用基于Logistic映射的混沌序列和基于Cheby-shev映射的混沌序列復合而得到的新混沌序列掩蓋了混沌子序列的分布特性,改變了原混沌系統(tǒng)的動力學行為,可以有效抵制模型重構攻擊算法,保密性優(yōu)于通常的低維混沌序列且計算量小于高維混沌序列。

此外,常見的混沌圖像加密都是單一使用像素位置或像素值置亂。本文算法結合像素值異或和像素位置循環(huán)移位置亂加密,進一步提高了算法的安全性。

二、加密與解密過程具有實現步驟

設待加密圖像I為M×N×8的灰度圖像,加密過程如下:

(1)初值及參數的選定。選定Logistic映射分支參數μ及初值X1和Chebyshev映射系統(tǒng)參數k及初值yl。

(2)生成輔助密鑰。將原始圖像I的所有像素值相加得到像素和Sum,并通過運算mod(SUm,256)/256得到輔助密鑰Key。輔助密鑰與原始圖像相關t即當原始圖像發(fā)生變化時,輔助密鑰也會相應改變。

(3)混沌系統(tǒng)初始密鑰的生成。將輔助密鑰Key分別與初值x1、y1相乘(Key作為調制因子),得到新的系統(tǒng)初值x1'、y1'。

(4)基于Logistic映射與基于Chebyshev映射的混沌序列產生。設基于Logistic映射的混沌序列為L,基于Chebyshev映射的混沌序列為Hi設常數S-1000,在得到初值x1‘及給定系統(tǒng)參數μ的情況下,由式(1)迭代(MX
N-I+S)次得到序列(X71’X72,…,xm*n+S)。最后舍棄前S個點并將其得到的實值序列記為(ri,r2,…,rmn)。依據同樣的方法可以得到基于Chebyshev映射的實值混沌序列,記為(p1,p2,…,pm*N)。

(5)新復合混沌序列的構造礦將實值序列(r1,r2,...,rMXN)和(pl,p2,…,pNWN)逐位相乘得到新的實值混沌序列,并將其轉化為[o,255]之間的整數密碼序列,記為(Z1,z2,…,Zm*n)。

(6)像素值異或置亂。將整數密碼序列(Z1,z2,…,Zm*n)與原始圖像Am*n逐行進行異或得到加密圖像矩陣Bm*n。

(7)像素位置循環(huán)移位置亂。隨機選取整數密碼序列(Z1,z2,…,Zm*n)中的一段長為M+N的整數密碼序列(Z1’,z2',…,Zm*n'),將前M個值作為行移位值,后N個值作為列移位值對矩陣Bm*n分別進行向右和向下的行列移位。

圖像解密過程為加密過程的逆過程。

三、仿真實驗及討論

—個好的加密算法,應該具有密鑰敏感性、明文敏感性和低的密文相鄰像素相關性等特性:下面分別進行實驗驗證。

1、加密實驗

實驗采用256X256×8的機場遙感灰度圖像為待加密的原始圖像,如圖2所示。

1

Logistic混沌映射選用分支系數μ= 3.8,初值x1=0.5,此時Logistic映射工作于混沌狀態(tài),Chebyshev混沌映射選用參數k=6,初值yi≥0.2,此時系統(tǒng)進入混沌。利用以上兩個混沌映射產生的新密碼序列,并隨機抽取一段子序列將其轉化為二進制序列得到其自相關、互相關特性如圖3所示。由圖3可以看出此二進制序列有很好的自相關和互相關特性。表明該密碼序列滿足平均分布,可作為加密密鑰。

1

利用新密碼序列對原始圖像像素值和像素位置進行雙重加密。加密圖像及其直方圖如圖4所示。由圖4可見,加密后圖像類似白噪聲,影像混亂,且其直方圖均勻分布在[O,255]區(qū)間上對用置亂度衡最準則對其進行評價,置亂后置亂度可達20. 5535,質心坐標為(128. 44,128. 40),置亂后質心很接近其形心坐標(128,128),說明本文所提加密算法置亂效果很好。

1

2、密鑰和對原始圖像敏感性實驗

混沌序列對初值的敏感性保證了混沌加密算法對密鑰的敏感性。在混沌系統(tǒng)中,參數和初始條件的微小變化都對混沌信號有很大影響。如圖5 (a)所示,初始值x0僅相差0. 001的兩個Logistic混沌序列在經過約20次迭代后迅速分離,成為兩個不相關的序列,可見混沌序列對初值敏感,且易于大量產生,適合圖像置亂加密。圖5 (b)是本文算法構造的混沌序列的初始值僅相差0. 001時的迭代情況。

1

由圖可見,新密碼序列迭代3次后就出現明顯分岔,表明本文所構造的復合混沌序列對初始值十分敏感。采用錯誤的密鑰初值亂x1=0.5,Y1=O.199對置亂后的遙感影像進行混沌解密,得到的遙感影像及其直方圖如圖6所示,解密圖像雜亂不堪,直方圖分布均勻,可見本文所提加密算法對初值非常敏感。

1

用相同密鑰對相差1像素不同的兩個原始圖像加密,并在不改變密鑰的情況下解密,結果如圖7所示。由圖7可知,加密圖像對原始圖像非常敏感,說明該算法具有很好的抵抗差分攻擊的能力。

1

3、相鄰像素相關性

為了驗證加密圖像相鄰像素之間的相關性,分別從水平、垂直和對角方向隨機選取1000對相鄰像素計算相鄰像素的相關系數:如表1所示。

1

由表1可知,原始圖像相鄰像素的相關系數是高度相關的,相關系數接近于1。而加密圖像相鄰像素的相關系數接近于O,相鄰像素已經基本沒有了相關性,也就是說原始圖像的統(tǒng)計特征被擴散到了隨機的加密圖像中,原始圖像和加密圖像水平方向像素的相關性如圖8所示。

1

4、密鑰空間分析

將系統(tǒng)初值x1,yl,輔助密鑰Key及系統(tǒng)參數μ,k作為最初密鑰,采用小數點精確到15位(當密鑰變化小于10-15時,認為密鑰沒有發(fā)生變化,可以正?;謴统鰣D像)的雙精度實數表示,則密鑰空間為1075。是單個一維Lo-gistic混沌系統(tǒng)密鑰空間1015×1015)的1045倍。此外,在對圖像進行循環(huán)移位置亂時還可以選擇(MX N) /(M+N)個不同的密碼子序列,這也可以作為一個密鑰。所以該加密算法密鑰空間大,安全性很好,可以有效抵抗密鑰的窮舉攻擊。

小知識之遙感

遙感是指非接觸的,遠距離的探測技術。