国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于CNN高維超混沌系統(tǒng)圖像加密算法

2018-07-13 03:23琴,林達(dá),余
關(guān)鍵詞:加密算法解密密鑰

張 琴,林 達(dá),余 亮

(1.四川理工學(xué)院 自動(dòng)化與信息工程學(xué)院, 四川 自貢 643000; 2.四川理工學(xué)院 物理與電子工程學(xué)院, 四川 自貢 643000)

隨著通信技術(shù)的快速發(fā)展和普及,多媒體通信已成為一種重要的通信手段,并為人們的工作和生活提供了極大的便利。與此同時(shí),信息傳遞的安全性正變得越來越重要。圖像作為信息傳播的重要載體之一,而圖像加密是保證圖像信息安全的重要手段。因此,圖像加密及解密算法和技術(shù)已經(jīng)成為信息安全領(lǐng)域中的重要問題之一。

圖像通常是以二維矩陣的形式存儲(chǔ),用傳統(tǒng)的加密算法如數(shù)據(jù)加密標(biāo)準(zhǔn)(Data Encryption Standard,DES)、高級(jí)數(shù)據(jù)加密標(biāo)準(zhǔn)(advanced encryption standard,AES)、非對(duì)稱加密算法(RSA)等加密圖像,則需將待加密的圖像重新排列成明文的形式,這樣會(huì)導(dǎo)致加密時(shí)間長(zhǎng),加密效率不高等缺陷[1]。另一方面,由于混沌系統(tǒng)所產(chǎn)生的信號(hào)具有確定性,類似噪聲的統(tǒng)計(jì)特性與非周期性,且對(duì)初始條件極端敏感性等,可應(yīng)用于圖像加密,并且能夠表現(xiàn)出許多優(yōu)良的密碼學(xué)特性[2]。因此,混沌密碼學(xué)在圖像加密上的研究引起了眾多學(xué)者的關(guān)注。

細(xì)胞神經(jīng)網(wǎng)絡(luò)[3-4](cellular neural network,CNN)是一種非線性動(dòng)力混沌系統(tǒng),是基于Hopfield神經(jīng)網(wǎng)絡(luò)和細(xì)胞自動(dòng)機(jī)的一種人工神經(jīng)網(wǎng)絡(luò)[3],具有復(fù)雜的混沌動(dòng)力學(xué)特性,同時(shí)具備實(shí)時(shí)、高速、并行處理信號(hào)等特點(diǎn),且易于實(shí)現(xiàn)超大規(guī)模集成電路。因此,CNN系統(tǒng)被廣泛用于加密系統(tǒng)[3,5],并在彩色數(shù)字水印加密[6]、語音加密[7]和圖像加密系統(tǒng)[2]中均取得了良好的加密效果。目前,文獻(xiàn)基于混沌系統(tǒng)的圖像加密算法主要有離散混沌系統(tǒng)的圖像加密[8]、連續(xù)混沌系統(tǒng)的圖像加密[9]和混合混沌系統(tǒng)的圖像加密[10]等3種。

為了進(jìn)一步提高圖像加密算法的保密性,獲得更大的密鑰空間及更好的不可預(yù)測(cè)性,本文提出一種基于高維CNN的超混沌系統(tǒng)的圖像加密算法。先通過研究一種高維CNN的超混沌系統(tǒng)動(dòng)力學(xué)特征,然后,依據(jù)其特征設(shè)計(jì)并生成偽隨機(jī)序列算法,再利用所生成的偽隨機(jī)序列算法,通過治亂和擴(kuò)散等方法,完成對(duì)圖像的加密。最后,通過仿真驗(yàn)證算法的有效性,測(cè)試了算法的安全性和魯棒性。

1 細(xì)胞神經(jīng)網(wǎng)絡(luò)超混沌系統(tǒng)

考慮一種超混沌系統(tǒng)模型[3]

(1)

其中

b、c、d、e分別為系統(tǒng)的控制參數(shù)。當(dāng)控制參數(shù)

a=2,b=11,c=12,d=2,e=101

時(shí),系統(tǒng)式(1)呈現(xiàn)為超混沌狀態(tài)。

采用四階龍格庫塔離散算法,對(duì)系統(tǒng)方程(1)進(jìn)行迭代,得到混沌時(shí)間序列圖及吸引子相圖如圖1 所示。圖1僅列出部分時(shí)間序列圖及吸引子相圖,其他時(shí)間序列圖及吸引子相圖類似。從圖1可知,該混沌系統(tǒng)呈現(xiàn)特定吸引域的遍歷性,可以生成復(fù)雜隨機(jī)且不可預(yù)測(cè)的信號(hào)。

(a) x1時(shí)間序列

(b) x2-x4平面

(c) x1-x4-x5三維吸引子

(d) x2-x3-x5三維吸引子

該5階CNN超混沌系統(tǒng)具有3個(gè)特點(diǎn):(1)該系統(tǒng)結(jié)構(gòu)較低維系統(tǒng)更為復(fù)雜,生成的信號(hào)具有不可預(yù)測(cè)性;(2)該系統(tǒng)較低維系統(tǒng)具有更多的系統(tǒng)參數(shù)和初始值,具有較大的密鑰空間;(3)該系統(tǒng)可產(chǎn)生多路混沌序列,應(yīng)用于圖像加密中更為靈活。

2 偽隨機(jī)序列發(fā)生器設(shè)計(jì)算法

2.1 偽隨機(jī)序列發(fā)生器的設(shè)計(jì)

圖像加密與傳統(tǒng)的流密碼加密類似。流密碼的長(zhǎng)度取決于待加密圖像像素的大小,圖像像素越小,流密碼長(zhǎng)度越短,反之,圖像越大,流密碼長(zhǎng)度越長(zhǎng)。對(duì)于灰度圖像而言,假設(shè)圖片為M×N的矩陣,則至少需要生成長(zhǎng)度為M×N的密鑰流。密鑰流由混沌序列組成,因此,減少圖像加密時(shí)間的一個(gè)重要方法就是減少混沌序列的長(zhǎng)度。為了充分利用混沌序列,故本文采用多路混沌序列生成密鑰流,偽隨機(jī)序列發(fā)生器的結(jié)構(gòu)框圖見圖2。

圖2 偽隨機(jī)序列發(fā)生器的結(jié)構(gòu)框圖

2.2 偽隨機(jī)序列生成算法

假定灰度圖像的像素大小為M×N,具體的偽隨機(jī)序列生成為算法可以按照如下3個(gè)步驟完成。

(1)生成超混沌序列

任取初始值(x10,x20,x30,x40,x50)代入CNN超混沌系統(tǒng)方程(1)中,迭代(M×N)/3+1000次。如果圖像像素大小M×N不能被3整除時(shí),迭代次數(shù)應(yīng)保證所產(chǎn)生的序列長(zhǎng)度不得少于圖像像素的大小。為了消除混沌序列暫態(tài)效應(yīng)以及提高對(duì)初始條件的敏感性,采用丟掉混沌序列前1000組的值后,每次迭代所得到序列記為x1j,x2j,x3j,x4j,x5j(其中,j=1,2,…,(M×N)/3,表示每一維的長(zhǎng)度。),即為所生成的超混沌序列。

(2)超混沌序列量化

對(duì)超混沌序列進(jìn)行量化,采用方式為

Δxij=xij- └xij┘,

(2)

得到超混沌序列的小數(shù)部分。式中 └xij┘表示取小于或等于xij的最近整數(shù)。i=1,2,3,4,5,表示系統(tǒng)的維數(shù)。再來量化小數(shù)部分,利用方程

Xij=mod( └Δxij×1014┘,256),

(3)

其中,Xij表示系統(tǒng)第i維第j個(gè)量化值。i=1,2,3,4,5,表示系統(tǒng)的維數(shù),j=1,2,…,M×N÷3,表示系統(tǒng)每一維的長(zhǎng)度,最終得到整數(shù)序列{X1j,X2j,X3j,X4j,X5j}.

(3)生成密鑰流

將每個(gè)整數(shù)序列Xij表示為8位2進(jìn)制。利用

可得

bi,j,u= └Xij/2u┘ mod 2,

(4)

式中u=0,1,…,7。即可得到Xij的二進(jìn)制表述。對(duì)應(yīng)二進(jìn)制的組合分別得到偽隨機(jī)序列Key1和Key2,即為所需的密鑰流,其表示式分別為

(5)

(6)

其中,j=1,2,…,(M×N)/3,j和k的關(guān)系表示為

k=3j-2。

按照上述步驟,可以得到偽隨機(jī)序列密鑰流Key1和Key2,即可用Key1和Key2對(duì)圖像進(jìn)行加密。對(duì)于加密圖像而言,偽隨機(jī)序列生成方法決定了混沌系統(tǒng)產(chǎn)生混沌序列的長(zhǎng)度??紤]到混沌序列長(zhǎng)度為(M×N)/3,加密圖像的大小為M×N的灰度圖像。對(duì)于5維微分方程,我們使用4階龍格庫塔法生成混沌序列值。

3 灰度圖像加密和解密算法

3.1 灰度圖像加密算法

在文中第一部分可知,當(dāng)控制參數(shù)分別取值

a=2,b=11,c=12,d=2,e=101

時(shí),由超混沌系統(tǒng)方程(1)生成混沌序列,然后應(yīng)用第二部分所提出偽隨機(jī)序列發(fā)生器產(chǎn)生加密圖像時(shí)所需的密鑰流。具體的加密算法如下。

(1)像素置亂算法

像素置亂階段是一個(gè)像素從一個(gè)位置到另一個(gè)位置的過程。該過程必須是一一對(duì)應(yīng)關(guān)系,以便能夠再次恢復(fù)圖像而不會(huì)產(chǎn)生失真[11]。置亂階段可以用一個(gè)矩陣來表示,每個(gè)矩陣元素為原始像素位置所對(duì)應(yīng)新的位置。假定置亂矩陣為T,其矩陣元素Tij,且為M×N階,與圖像大小相一致,圖像像素位置是從左上角到右下角進(jìn)行置亂的。

利用偽隨機(jī)序列構(gòu)造置亂矩陣,再將圖像明文矩陣P進(jìn)行像素置亂,得到圖像密文矩陣C1。像素置亂方式為

(7)

其中clnew,rwnew分別表示圖像密文矩陣C1的行和列的下標(biāo)。

像素位置置亂后得到密文圖像C1。僅使用置亂算法進(jìn)行圖像加密,安全性還不夠高,被破譯的可能性會(huì)很大。為了提高算法的安全性,將對(duì)C1采用分別進(jìn)行橫向和縱向擴(kuò)散。

(2)像素值橫向擴(kuò)散

對(duì)密文圖像矩陣C1進(jìn)行橫向擴(kuò)散,橫向擴(kuò)散的過程如圖3(a),方法是利用密鑰key1對(duì)C1進(jìn)行擴(kuò)散得到密文圖像C2,具體對(duì)應(yīng)的橫向擴(kuò)散方程為

(8)

式中C1(i,j)和C2(i,j)分別表示矩陣C1和C2的矩陣元素。

(3)像素值縱向擴(kuò)散

像素值縱向擴(kuò)散是對(duì)所得到密文圖像矩陣C2再進(jìn)行縱向列擴(kuò)散,縱向擴(kuò)散的過程如圖3(b)。方法是利用key2對(duì)C2進(jìn)行縱向擴(kuò)散,得到最終密文圖像C,縱向擴(kuò)散方程為

(9)

式中C(i,j)表示矩陣C的矩陣元素,即完成灰度圖像加密算法。

(a) 橫向擴(kuò)散過程

(b) 縱向擴(kuò)散過程

3.2 灰度圖像加密算法

按照上述步驟即可完成圖像加密,而對(duì)應(yīng)的解密的過程則是加密的逆過程。解密是否可逆的關(guān)鍵是所設(shè)計(jì)的置亂矩陣是可逆矩陣。由實(shí)驗(yàn)數(shù)據(jù)得知,本文所采用256×256階置亂矩陣為非奇異矩陣,其行列式不等于零,故其具有可逆性,使用的解密密鑰也是加密過程中所用的密鑰。因此,本文所提的解密算法是可行的。鑒于解密過程是加密過程的逆過程,不再贅述。

4 實(shí)驗(yàn)結(jié)果及安全性分析

4.1 實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)中,混沌系統(tǒng)參數(shù)分別設(shè)為

a=2,b=11,c=12,d=2,e=101,

利用matlab模擬加密解密算法。機(jī)器配置為4G的內(nèi)存,2.6GHz CPU。以256×256灰度圖像plane為例,系統(tǒng)方程式(1)初始值取[-1,0.2,0.8,0,1.5],圖像加密及解密結(jié)果分別如圖4所示。

圖4加密解密圖

4.2 安全性分析

4.2.1密鑰敏感性分析

如果加密方案對(duì)密鑰敏感,則密鑰的微小變化將會(huì)引起密文的很大不同,密鑰發(fā)生微小變化將導(dǎo)致了解密失敗。密鑰的微小改變采用原始加密密鑰與對(duì)應(yīng)微小變化的加密密鑰組成的密鑰對(duì)方式,來測(cè)試加密系統(tǒng)對(duì)密鑰的敏感性。如表1是采用不同的5個(gè)秘鑰對(duì)時(shí),本文算法所相應(yīng)的平均變化強(qiáng)度和像素個(gè)數(shù)改變率測(cè)試結(jié)果。從表1可見,平均變化強(qiáng)度和像素個(gè)數(shù)改變率的結(jié)果分別為33%和99.6%,因此,本文所提出算法的加密系統(tǒng)對(duì)密鑰具有較強(qiáng)的敏感性,符合加密安全要求。

表1 密鑰敏感性測(cè)試結(jié)果

4.2.2密鑰空間分析

對(duì)于超混沌系統(tǒng),密鑰空間的大小一般取決于超混沌方程的初始值及系統(tǒng)的控制參數(shù)。本文CNN超混沌系統(tǒng)有5個(gè)初始值,5個(gè)控制參數(shù),因此,密鑰空間為1014×10,遠(yuǎn)遠(yuǎn)大于理論要求值2128。

4.2.3抵抗差分攻擊分析

攻擊者通過觀察明文微小變化引起解密的變化,找到圖像明文與圖像密文的相關(guān)性。如果原圖像的微小變化能引起密文的很大變化,差分攻擊的影響會(huì)減小。抵抗差分攻擊的指標(biāo)采用像素個(gè)數(shù)改變率(Number of Pixel of Change Rate,NPCR)和平均變化強(qiáng)度(Unified Average Changing Intensity,UACI)。像素個(gè)數(shù)改變率是通過評(píng)估兩圖像像素不同的數(shù)目來獲得兩圖像的差異,其定義[12]為

(10)

其中D(i,j)是兩幅加密圖像I1和I2對(duì)應(yīng)像素差異值,其取值為:如果I1(i,j)≠I2(i,j),則D(i,j)=1;如果I1(i,j)=I2(i,j),則D(i,j)=0;M和N為圖像的寬和高。平均變化強(qiáng)度是通過評(píng)價(jià)視覺效果的變化來獲得兩圖像的差異,其定義為

(11)

明紋改變1比特,本文算法像素個(gè)數(shù)改變率和平均變化強(qiáng)度本算法測(cè)試結(jié)果如表2??梢钥闯?,NPCR值接近理論值0.99,UACI值接近理論值0.33,說明本文加密系統(tǒng)對(duì)明文具有好的敏感性。

表2 明文敏感性測(cè)試結(jié)果

4.2.4相關(guān)性分析

相鄰像素的強(qiáng)相關(guān)性是圖像的一個(gè)重要特征,一般用相鄰像素相關(guān)性來恢復(fù)原圖像,如果通過相鄰像素不能獲得加密圖像的像素,則認(rèn)為加密算法是有效的。本文算法明文圖像與密文圖像的像素分布圖如圖5所示。圖5(a)~5(c)為明文相鄰像素相關(guān)性分布圖,圖5(d)~5(f)為密文相鄰像素相關(guān)性分布圖。從圖可見,加密圖像的像素是雜亂無章的,無規(guī)律可尋,因此,通過相鄰像素相關(guān)性來復(fù)原加密圖像是幾乎不可行的,說明加密算法是有效的。

圖5 明文與密文相鄰像素相關(guān)性分布圖

4.2.5信息熵分析

信息熵是衡量隨機(jī)系統(tǒng)復(fù)雜度的一個(gè)指標(biāo),計(jì)算公式[1]為

(12)

式中H(S)表示信息熵,P(Si)表示每一級(jí)灰度值出現(xiàn)的概率。一般情況,如果圖像像素值用8比特位表示,當(dāng)圖像處于理想的混沌狀態(tài)時(shí),信息熵的值為8。本文算法選取的灰度圖像大小為256×256,其加密圖的信息熵為7.9668,大于文獻(xiàn)[13]中的加密圖信息熵(7.69),說明本文算法較文獻(xiàn)[13]具有更多的復(fù)雜性。

4.2.6特征統(tǒng)計(jì)攻擊分析

為了防止攻擊者獲得圖像的特征像素,統(tǒng)計(jì)分析是圖像加密算法需要考慮的一個(gè)因素,圖6(a)為明文直方圖,圖6(b)為密文直方圖,從圖中可見,加密圖像具有統(tǒng)一分布均勻性,對(duì)于攻擊者而言,是不容易破解的。

圖6 明文與密文直方圖分布圖

4.2.7魯棒性分析

魯棒性指加密圖像在傳輸過程中受到攻擊或噪聲污染時(shí),對(duì)原圖像進(jìn)行解密的能力[14]。我們選取常見的椒鹽噪聲作為污染源,分析其污染加密圖像時(shí),加密圖像的魯棒性。圖7分別表示噪聲污染等級(jí)Δ=0.1和Δ=0.01為時(shí),本文算法的測(cè)試結(jié)果。從結(jié)果可以看出,等級(jí)的椒鹽噪聲的污染,解密算法仍然能夠?qū)⒓用軋D像恢復(fù)成原圖像。此外,對(duì)本文算法進(jìn)行了剪切攻擊測(cè)試,其結(jié)果如圖8。圖8(a)為將加密的圖像剪切掉一個(gè)小三角形后,經(jīng)過本文解密算法,圖8(b)為原圖恢復(fù)解密圖像??梢?,剪切后的加密圖像,經(jīng)過解密后,仍然能夠恢復(fù)成原始圖像。因此,本文提出的算法具有好的魯棒性。

圖7 加不同等級(jí)的椒鹽噪聲的解密圖像

圖8 剪切攻擊后的解密圖像

5 算法比較

為了說明本文算法的優(yōu)點(diǎn),本部分將吧本文所提出的加密算法與其他相關(guān)文獻(xiàn)所提出的研究結(jié)果進(jìn)行對(duì)比。首先,將本文算法的NPCR和UACI的值與其他相關(guān)文獻(xiàn)進(jìn)行對(duì)比,結(jié)果見表3。可見,本文算法的NPCR和UACI的值均高于文獻(xiàn)[15-17]的值,并且與理論值相一致。其次,將本文算法的相關(guān)系數(shù)與其他相關(guān)參考文獻(xiàn)進(jìn)行對(duì)比,其結(jié)果見表4??梢钥闯觯墨I(xiàn)[18]水平方向系數(shù)是最低的,本文算法的垂直方向系數(shù)及對(duì)角線方向系數(shù)是最低的。因此,本文算法較其他文獻(xiàn)的算法相比具有較好的性能,更能夠抵抗任何攻擊,適合圖像加密。

表3 本文算法與其他文獻(xiàn)的NPCR與UACI對(duì)比

表4 本文算法與其他文獻(xiàn)的相關(guān)系數(shù)對(duì)比

6 結(jié)語

基于一種五維CNN超混沌細(xì)胞神經(jīng)網(wǎng)絡(luò)系統(tǒng)提出一種混沌序列生成算法,充分利用了系統(tǒng)混沌序列特點(diǎn)生成密鑰流,極大地減少了混沌序列的長(zhǎng)度,在擴(kuò)散過程中利用密鑰流,并利用置亂和擴(kuò)散方法,實(shí)現(xiàn)灰度圖像的加密和解密。通過仿真方法證明了算法的可行性,安全性分析結(jié)果表明,本文算法具有較強(qiáng)的復(fù)雜性、安全性和魯棒性。與相關(guān)算法的比較結(jié)果表明,本文算法較已有的算法具有較高的平均變化強(qiáng)度和像素個(gè)數(shù)改變率,在擴(kuò)散階段及置亂階段具有一定的優(yōu)勢(shì)。因此,是一種性能較好的圖像加密算法。

猜你喜歡
加密算法解密密鑰
幻中邂逅之金色密鑰
幻中邂逅之金色密鑰
基于DES加密算法的改進(jìn)研究
炫詞解密
解密“一包三改”
密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
炫詞解密
基于整數(shù)矩陣乘法的圖像加密算法
TPM 2.0密鑰遷移協(xié)議研究
混沌參數(shù)調(diào)制下RSA數(shù)據(jù)加密算法研究
榆树市| 南宁市| 工布江达县| 平凉市| 富锦市| 武功县| 麻城市| 辽宁省| 昆明市| 南投市| 彩票| 胶南市| 旬邑县| 金平| 饶河县| 会泽县| 宜兰县| 环江| 同心县| 多伦县| 东乌珠穆沁旗| 青浦区| 冀州市| 哈巴河县| 曲麻莱县| 合水县| 股票| 会理县| 河南省| 伊通| 封开县| 正蓝旗| 夹江县| 左云县| 尤溪县| 石首市| 本溪| 五台县| 金平| 皮山县| 丰都县|