鄒東堯, 李 明, 李 軍, 李志剛
(1.鄭州輕工業(yè)大學(xué)計(jì)算機(jī)與通信工程學(xué)院, 鄭州 450000; 2.中國(guó)移動(dòng)通信集團(tuán)河南有限公司網(wǎng)絡(luò)部, 鄭州 450000)
隨著科學(xué)技術(shù)與互聯(lián)網(wǎng)的快速發(fā)展,數(shù)字圖像也因保真度比較高,形象生動(dòng)等特點(diǎn)成了交流間最廣泛地溝通介質(zhì)。然而,互聯(lián)網(wǎng)的開放性越來越強(qiáng),圖像的安全傳輸存在著一定的安全隱患。從而,使用圖像加密方法,保障圖像信息安全是目前的研究熱點(diǎn)之一[1-2]。
目前的圖像加密方案一般分為兩種,一種是產(chǎn)生新的混沌系統(tǒng)以產(chǎn)生更加復(fù)雜的混沌序列;另外一種是產(chǎn)生新的加密算法的結(jié)構(gòu)設(shè)計(jì)。第一種加密方案中,許多學(xué)者都會(huì)對(duì)簡(jiǎn)單的混沌系統(tǒng)提出改進(jìn)的方案。混沌是由非線性的確定系統(tǒng)產(chǎn)生的類隨機(jī)現(xiàn)象,它具有很多特點(diǎn),如遍歷性、有界性、對(duì)初始條件的極端敏感性等,在許多領(lǐng)域都有廣泛的應(yīng)用,同時(shí)也非常適合應(yīng)用于圖像加密系統(tǒng)[3-8]。低維的混沌映射結(jié)構(gòu)簡(jiǎn)單,但是概率密度分布不均勻[9],且混沌范圍較小。有學(xué)者在簡(jiǎn)單的混沌系統(tǒng)基礎(chǔ)上進(jìn)行改造,使其成為比較復(fù)雜的混沌系統(tǒng)以產(chǎn)生更加復(fù)雜的混沌序列。文獻(xiàn)[10]中對(duì)經(jīng)典的Logistic 映射增加模運(yùn)算并對(duì)生成的序列進(jìn)行二進(jìn)制比特重排,生成具有更好混沌特性的偽隨機(jī)序列并用于加密系統(tǒng)的置亂和擴(kuò)散階段;文獻(xiàn)[11]中提出了一種位反轉(zhuǎn)的方法,通過對(duì)其分?jǐn)?shù)位的階數(shù)來倒換混沌狀態(tài)值(表示為不動(dòng)點(diǎn)數(shù)),修正后的混沌映射刻畫了更好的混沌性能,具有更高的復(fù)雜度和更大的混沌參數(shù)范圍;文獻(xiàn)[12]中在Logistic映射和Sine映射基礎(chǔ)上提出的二維(2D)邏輯正弦耦合圖(logistic-sine-coupling map, LSCM)具有更好的遍歷性,更復(fù)雜的行為和更大的混沌范圍。第二種加密方案在混沌序列的產(chǎn)生過程上沒有太多的研究,但是在加密算法的結(jié)構(gòu)上有著很多不同的設(shè)計(jì)方案。文獻(xiàn)[13]結(jié)合耦合映像格子-S盒(coupled mapping lattice-sbox,CML-SBox)和對(duì)稱矩陣變換(symmetric transformation matrix,SMT)生成密鑰流,通過SMT生成的初始密鑰流組成兩個(gè)一維數(shù)組對(duì)原圖像像素進(jìn)行置亂,然后用SBox生成最終密鑰流與分塊后的圖像像素進(jìn)行異或,最后將后一塊的密文與前一塊的密文進(jìn)行異或,進(jìn)行擴(kuò)散進(jìn)而達(dá)到圖像加密的目的;文獻(xiàn)[14]提出一種結(jié)合Intertwining Logistic映射和動(dòng)態(tài)DNA編碼與運(yùn)算的彩色圖像加密算法實(shí)現(xiàn)圖像的加密。同時(shí)也有兩種方案一起用來提高加密的安全性;文獻(xiàn)[15]使用改進(jìn)的混沌映射和置換有序二進(jìn)制編碼的密文域可逆信息隱藏,從而達(dá)到加密的效果;文獻(xiàn)[16]提出了一種新的基于多重混合哈希函數(shù)和循環(huán)移位函數(shù)的混沌圖像加密一次性墊方案,采用循環(huán)移位函數(shù)和分段線性混沌映射(piece wise linear chaotic mappings, PWLCM),賦予每個(gè)移位數(shù)混沌的特性,對(duì)圖像進(jìn)行擴(kuò)散,也具有很好的安全性。
Logistic映射是經(jīng)典的一維映射,被廣泛應(yīng)用于混沌序列的產(chǎn)生中,其表達(dá)式為
xn+1=δxn(1-xn)
(1)
式(1)中:xn為輸入圖像混沌序列值,xn∈(0,1);xn+1為輸出圖像混沌序列值;系統(tǒng)調(diào)節(jié)參數(shù)δ的取值范圍為[0,4],其分岔圖如圖1所示,縱坐標(biāo)X表示圖像混沌序列值,當(dāng)δ∈[3.57,4]時(shí),邏輯映射系統(tǒng)表現(xiàn)為混沌狀態(tài),當(dāng)δ≈4時(shí),邏輯映射分布呈現(xiàn)最大。

圖1 Logistic映射分岔圖Fig.1 Logistic map bifurcation diagram
Sine映射同Logistic映射一樣,也是經(jīng)典的一維映射,其表達(dá)式為
xn+1=δsin(πxn)/4
(2)
參數(shù)δ的取值范圍為[0,4]。當(dāng)δ∈[3.48,4]時(shí),邏輯映射系統(tǒng)表現(xiàn)為混沌狀態(tài),其分岔圖如圖2所示,當(dāng)δ≈4時(shí),邏輯映射分布呈現(xiàn)最大。

圖2 Sine映射分岔圖Fig.2 Sine map bifurcation diagram
由于經(jīng)典的一維邏輯映射Logistic映射和Sine映射存在控制參數(shù)范圍受限和點(diǎn)分布不均勻等問題,本文結(jié)合經(jīng)典一維邏輯映射Logistic映射和Sine映射提出1-LSCMS混沌系統(tǒng),其表達(dá)式為
xn+1=δ8[1+8δsin(pixn)β]mod1
(3)
式(3)中:xn∈(0,1);δ、β為系統(tǒng)調(diào)節(jié)參數(shù),控制系統(tǒng)的混沌性能;mod表示取余操作;β的取值會(huì)對(duì)混沌狀態(tài)的范圍產(chǎn)生影響,通過實(shí)驗(yàn)測(cè)試,當(dāng)β=5時(shí),系統(tǒng)混沌性能較為理想。
1-LSCMS系統(tǒng)的分岔圖如圖3所示,當(dāng)δ∈[0.59,15]時(shí),分岔圖呈現(xiàn)混沌狀態(tài),參數(shù)范圍較Logistic映射和Sine映射有明顯提升。且當(dāng)δ>0.59時(shí),混沌系統(tǒng)不存在周期窗口。

圖3 1-LSCMS系統(tǒng)的分岔圖Fig.3 1-LSCMS system bifurcation diagram
1.3.1 敏感性分析
對(duì)初值敏感是混沌系統(tǒng)的一個(gè)重要屬性,這個(gè)屬性可以通過李雅普諾夫指數(shù)(Lyapunov exponents,LE)進(jìn)行量化。通過LE圖像可以直觀地看出,某個(gè)系統(tǒng)或者映射是否是混沌系統(tǒng)或映射。LE>0時(shí),系統(tǒng)進(jìn)入混沌狀態(tài),存在混沌行為,且混沌性的強(qiáng)弱跟LE指數(shù)的大小呈正相關(guān);LE<0時(shí),系統(tǒng)的運(yùn)動(dòng)狀態(tài)會(huì)相對(duì)來說較穩(wěn)定,但對(duì)初始狀態(tài)不敏感;LE=0時(shí),系統(tǒng)處于穩(wěn)定狀態(tài)。圖4(a)為L(zhǎng)ogistic映射的LE指數(shù)圖,當(dāng)δ>3.57時(shí),LE>0;圖4(b)為L(zhǎng)ogistic映射的LE指數(shù)圖,當(dāng)δ>3.464時(shí),LE>0;圖4(c)為1-LSCMS映射的LE圖,當(dāng)δ>0.59時(shí),LE>0。通過對(duì)比可知,1-LSCMS的混沌范圍大于Logistic映射和Sine映射。

圖4 LE對(duì)比 Fig.4 LE comparison
1.3.2 香農(nóng)熵
香農(nóng)熵(Shannon entropy,SE)通過度量信號(hào)中產(chǎn)生新模式的概率大小來衡量時(shí)間序列復(fù)雜性。香農(nóng)熵的值越低,生成的樣本序列相似性越高;反之,香農(nóng)熵的值越大,樣本序列就越復(fù)雜。因此可以利用香農(nóng)熵來度量1-LSCMS系統(tǒng)產(chǎn)生混沌序列的復(fù)雜度。圖5為1-LSCMS系統(tǒng)產(chǎn)生混沌序列復(fù)雜度的測(cè)試結(jié)果??梢钥闯?,當(dāng)δ≈3.1時(shí),1-LSCMS混沌系統(tǒng)的SE趨于穩(wěn)定,且SE平均值均大于Logistic和Sine混沌映射。綜上,相比較于一維混沌映射Logistic和Sine比起來,1-LSCMS混沌系統(tǒng)產(chǎn)生的混沌序列具有更高的復(fù)雜度。

圖5 3個(gè)混沌系統(tǒng)香農(nóng)熵對(duì)比Fig.5 Comparison of SE of three chaotic systems


(4)

(5)
κ1=(S2+S3)/256
(6)

(7)
κ2=(S1+S3)/256
(8)

(9)
κ3=(S2+S4)/256
(10)

(11)
κ4=(S2+S3+S4)/256
(12)
式中:m=8;n=8;S1、S2、S3、S4為Si的子序列,i=1,2,3,4。
假設(shè)需要加密的明文圖像的大小為M×N,G(i,j)表示圖像像素矩陣中第i行,第j列的像素灰度值。加密算法分為置亂和擴(kuò)散兩個(gè)部分。首先,利用1-LSCMS混沌系統(tǒng)產(chǎn)生的混沌序列來對(duì)圖像像素的位置進(jìn)行置換。其次,再利用1-LSCMS混沌系統(tǒng)產(chǎn)生的混沌序列所形成的索引矩陣來進(jìn)行循環(huán)移位操作從而改變?cè)鞠袼鼐仃囄恢蒙系南袼鼗叶戎档拇笮?,在置亂的基礎(chǔ)上進(jìn)行擴(kuò)散操作從而達(dá)到加密的效果。圖6為加密過程流程圖。

圖6 加密過程流程圖Fig.6 Encryption process flow diagram
2.2.1 置亂過程
利用1-LSCMS混沌系統(tǒng)產(chǎn)生的混沌序列來對(duì)圖像像素位置進(jìn)行置換的流程如下。

Step 2進(jìn)行一輪置換,按值大小對(duì)B進(jìn)行升序排序,得到序列B′=[b′1,b′2,…,b′M×N]。根據(jù)B′相對(duì)于B元素位置變化,A也會(huì)得到一個(gè)相應(yīng)的置換后的序列A′=[a′1,a′2,…,a′M×N]。
置換圖如圖7所示,B經(jīng)過排序后形成B′,A根據(jù)與B的一一對(duì)應(yīng)關(guān)系進(jìn)行置換形成置換后的一維矩陣A′,A′即為一輪像素位置置換后的序列。

圖7 第一輪像素位置置換圖 Fig.7 The first round of pixel position replacement map


圖8 二輪像素位置置換圖Fig.8 The second round of pixel position replacement map
E(M×N)=reshape[A″,(M,N)]
(13)
利用1-LSCMS混沌系統(tǒng)產(chǎn)生的混沌序列來對(duì)圖像像素大小進(jìn)行置換的過程如下。
在像素位置被置換的基礎(chǔ)上進(jìn)行像素灰度值大小的改變,即在A″基礎(chǔ)上改變像素灰度值的大小。采用的1-LSCMS混沌系統(tǒng)產(chǎn)生的混沌序列產(chǎn)生索引矩陣,利用索引矩陣來對(duì)改變圖像的像素灰度值大小。


圖9 像素大小置換過程圖 Fig.9 Pixel size replacement process diagram
G′(i,j)=G[ln(A″),j]
(14)

(15)
E″(M×N)=reshape[E′(M×N),(M,N),1]
(16)
式中:G(i,j)為圖像像素矩陣中第i行,第j列的像素灰度值;G′(i,j)為索引矩陣中第i行,第j列的像素灰度值;xn為輸入圖像混沌序列值;xn+1為輸出圖像混沌序列值;A(i)為圖像的第i個(gè)像素值。
2.2.2 擴(kuò)散過程

Q=A′⊕A″⊕E″⊕F
(17)
解密過程是加密過程的反過程,將密鑰按照相反的方向迭代即可正確解密。
以尺寸為512×512的Baboon,Barbara以及Boats圖像為例測(cè)試所提出算法的正確性,其加密以及解密圖像如圖10所示。

圖10 仿真結(jié)果Fig.10 Simulation results
直方圖是反映數(shù)字圖像中像素灰度級(jí)出現(xiàn)的頻率的一種最直觀的方法之一,它的分布情況可以直觀地體現(xiàn)出像素灰度值。像素分布越均勻,攻擊者就越難從直方圖中得到有效信息,從而達(dá)到加密的效果。好的加密方法可以使加密圖像的像素分布均勻。如圖11所示。從明文圖像直方圖中可以看出,像素分布比較集中,密文圖像直方圖中可以看出,像素分布比較均勻,說明了該算法對(duì)圖像的信息有很好的隱藏能力。

圖11 圖像直方圖 Fig.11 Image histogram
直方圖可以直觀地觀測(cè)到像素分布是否均勻,χ2可以在數(shù)值上更加準(zhǔn)確的展現(xiàn)像素的分布,其表達(dá)式為

(18)
式(18)中:i為像素值;fi為i出現(xiàn)的次數(shù);f0為i的期望頻率。顯著水平為α=0.05時(shí),測(cè)試結(jié)果小于293.247 8時(shí)即代表通過測(cè)試。
從表1可以看出,Baboon、Barbara和Boats的密文圖像卡方測(cè)試結(jié)果分別是274.705 1、 279.138 7、 272.976 6,結(jié)果都小于293.247 8,即卡方測(cè)試都在范圍內(nèi),證明有較好的加密效果。

表1 χ2測(cè)試結(jié)果
數(shù)字圖像經(jīng)過擴(kuò)散灰度值會(huì)發(fā)生變化,擴(kuò)散程度用相關(guān)性表示,即相鄰像素之間的關(guān)系,一個(gè)好的加密方法會(huì)使密文圖像的相鄰像素之間關(guān)系變小,證明加密效果較好。用相關(guān)系數(shù)來分析相鄰像素之間的關(guān)系,其表達(dá)式為

(19)
式(19)中:m和n為兩個(gè)不同圖像的像素值;N為像素的總數(shù)目;E(m)為平均值;D(m)為變量m的方差;cov(m,n)為協(xié)方差。
圖12以Baboon為例,展示明文圖像在水平方向、垂直方向以及對(duì)角線方向的相關(guān)性關(guān)系圖。圖13以Baboon為例展示密文圖像在水平方向,垂直方向以及對(duì)角線方向的相關(guān)性關(guān)系圖??梢钥闯?,Baboon明文圖像的像素在3個(gè)方向都是在對(duì)角線方向比較集中,相關(guān)性相對(duì)來說較高,而其密文圖像的像素在3個(gè)方向都是均勻分布,相關(guān)性比較低,證明該算法能很好地對(duì)圖像進(jìn)行加密。
用相關(guān)系數(shù)來更加準(zhǔn)確的表達(dá)出像素間的關(guān)系,相關(guān)系數(shù)越接近于1證明相關(guān)性越高,相關(guān)系數(shù)越接近于0證明相關(guān)性越小。從表2可以看出,3個(gè)圖像的明文圖像的相關(guān)系數(shù)接近于1,而密文圖
像的相關(guān)系數(shù)很接近于0,證明明文圖像的相關(guān)性較高,密文圖像相關(guān)性較低。文獻(xiàn)[13]提出了基于二次密鑰加密快速的圖像加密算法;文獻(xiàn)[15]提出了一種位置置亂和交叉換位相結(jié)合的加密算法,與這兩種加密算法相比,本文算法使密文圖像的相關(guān)系數(shù)更接近于0,能夠更好地降低圖像相鄰像素的相關(guān)性。
信息熵是被用來作為一個(gè)系統(tǒng)的信息含量的量化指標(biāo)的參數(shù)之一,事件發(fā)生概率越高,其攜帶的信息量越低,其值越接近8證明像素值包含的信息量越少,分布越隨機(jī),其表達(dá)式為

(20)
式(20)中:H(m)為所需要求得信息熵;g(mi)為灰度值i出現(xiàn)的頻率;M-1為灰度等級(jí)。
表3為Baboon,Barbara和Boats三幅圖像以及文獻(xiàn)[13]和文獻(xiàn)[18]的明文圖像與密文圖像的信息熵的值,可以看出,密文圖像的信息熵都特別接近于理想值8,但與文獻(xiàn)[13]和文獻(xiàn)[18]相比,使用本文算法得到的密文圖像的信息熵更接近于理想值,所以證明了本文算法能很好地滿足加密安全性需求。

表3 圖像信息熵
差分攻擊屬于圖像加密攻擊方式中的選擇明文攻擊,攻擊者可以選擇改變圖像中的某個(gè)像素后對(duì)其進(jìn)行加密,與原來加密后的圖像進(jìn)行對(duì)比,找到兩者之間的差異從而得到明文密文之間的關(guān)系從而攻擊加密算法。目前像素改變率(number of pixels change rate,NPCR)和統(tǒng)一平均變化強(qiáng)度(unified average intensity,UACI)[19]是評(píng)價(jià)差分攻擊的兩個(gè)常用指標(biāo),其表達(dá)式分別為

(21)

(22)
式中:g1(i,j)為明文圖像i行j列像素值;g2(i,j)為密文圖像i行j列像素值;D(i,j)表示g1(i,j)和g2(i,j)所對(duì)應(yīng)的像素值是否相同,若g1(i,j)=g2(i,j),則有D(i,j)=0,否則D(i,j)=1。
NPCR的理論值為99.609 4%,UACI的理論值為33.463 5%,若圖像的NPCR和UACI越接近于理論值就證明算法抵御差分攻擊效果比較好。改變某個(gè)像素值后的明文圖像與密文圖像的NPCR和UACI如表4所示,其中c1(300,100)表示改變像素位置為(300,100)處的像素值,c1(512,512)表示改變像素位置為(512,512)處的像素值。

表4 NPCR and UACI
結(jié)合經(jīng)典一維邏輯映射Logistic映射和Sine映射提出一種改進(jìn)的一維邏輯正弦混沌映射系統(tǒng)(1-LSCMS),并在此基礎(chǔ)上提出了一種與明文像素相關(guān)的敏感性加密算法。得出如下結(jié)論。
(1)所提出的混沌系統(tǒng)比起一維的混沌系統(tǒng)具有更大的參數(shù)取值范圍,且能產(chǎn)生更復(fù)雜的混沌序列。
(2)通過實(shí)驗(yàn)對(duì)密文圖像進(jìn)行了密鑰空間、直方圖、卡方測(cè)試、相鄰像素、信息熵以及差分攻擊分析,證明了該算法的性能良好。實(shí)驗(yàn)結(jié)果表明,該算法具有比較高的安全性,可用于實(shí)際應(yīng)用。
(3)對(duì)512×512的灰度圖像進(jìn)行加密解密,在后續(xù)工作中會(huì)考慮將本文算法應(yīng)用到彩色圖像中,同時(shí)將對(duì)該方法進(jìn)行進(jìn)一步優(yōu)化從而獲得更好的加密效果。