999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于離散型Hopfield神經網絡的圖像加密算法

2021-07-06 02:14:52徐子同于正同時培燕
計算機技術與發展 2021年6期

徐子同,高 濤,于正同,時培燕

(長安大學 信息工程學院,陜西 西安 710054)

1 概 述

隨著網絡媒體的快速發展,越來越多的圖像數據通過公共網絡進行傳輸,保證信息傳輸的安全性至關重要。一種可以保證圖像完整性的加密方式是將明文圖像轉為類噪聲圖像再傳輸,這種信息隱藏方式提高了傳輸的安全性,目前,越來越多的圖像加密算法被提出。由于圖像的特殊性,例如數據容量大、像素間的相關性高以及數據冗余等,傳統的數據加密算法如DES、AES以及IDEA[1-2]等不適用于圖像加密。近些年,各種類型的加密算法被大量提出[3-14],例如,基于混沌的圖像加密[3-6]、基于壓縮感知的圖像加密[7-8]、基于遺傳算法的圖像加密等等。離散型Hopfield神經網絡是一種穩定的反饋型的神經網絡,文中使用三階神經網絡系統,使得圖像加密的安全性得到了顯著提升。

圖像加密的主要思想是改變圖像像素值的大小以及改變像素值的位置,即對圖像進行擴散和置亂。在傳統的加密方案中,置亂過程和擴散過程是分開進行的,攻擊者可以通過分開攻擊來破解加密方案,這種加密方法很可能會被選擇明文攻擊。其次,根據密鑰是否明文相關,加密算法可以分為兩類:第一,加密過程中密鑰與明文圖像沒有關聯,是非一次一密的加密方案。此方案中,由于明文圖像與密鑰相互獨立,不同的明文圖像加密用到的密鑰流是唯一確定的,因此,這種類型的加密方案容易被選擇明文攻擊。例如文獻[15]已經被攻擊[16],攻擊者選取一幅像素值全為零的特殊圖像作為明文圖像,加密后得到密文圖像,通過對比明文圖像和密文圖像可以得到加密過程中的兩個密鑰流,再通過三次異或操作得到密鑰圖像,完成對加密方案的攻擊。第二,加密過程中密鑰與明文圖像相關聯,是一次一密的加密方案。此方案中,由于密鑰與明文相關聯,并且是一次一密的加密方案,因此,每一幅不同的明文圖像加密后都將產生與之對應的一個密鑰,并且該密鑰需要與方案中其他的固定密鑰一起傳送給解密方才能完成解密。

為了克服以上加密方案的缺點,該文提出了一種與明文相關的通道關聯的同時置亂擴散加密方案。在該加密方案中,密鑰流的產生與明文圖像相關,不同像素和的明文圖像將產生不同的密鑰流,但是加密方案中用到的初始密鑰是固定的,解密方只需要得到固定的密鑰就可以解密圖像。這種方案解決了與明文無關的加密方案容易被選擇明文攻擊的缺點,并且采用同時置亂擴散的方式提高算法的安全性,使得加密算法能夠更好地抵抗選擇明文攻擊。

2 離散型Hopfield神經網絡

Hopfield神經網絡最早是由美國物理學家Hopfield于1982年提出的[17]。它主要用于模擬生物神經網絡的記憶機制。Hopfield神經網絡是一種全連通的神經網絡。三階神經網絡具體形式如下:

(1)

(2)

為了確認其偽隨機性,對Hopfield神經網絡進行了NIST隨機性測試[18],當p值大于0.01時,認為它通過了測試。結果見表1。隨機性測試結果表明,基于權值矩陣的Hopfield混沌神經網絡具有偽隨機性。

表1 NIST隨機性測試

3 提出的加密算法

該文所提出的圖像加密算法包括彩色圖像R、G、B三通道關聯的同時置亂和擴散算法以及二次擴散算法,加密過程中輸入明文圖像P,輸出密文圖像C;解密過程與之相反。假設圖像大小為M×N,加密過程具體步驟如下所述,加密流程框圖如圖1所示。

圖1 算法流程

3.1 通道關聯的同時置亂擴散

為了更好地抵抗攻擊,該文提出了彩色圖像通道關聯的同時置亂擴散算法,并且在加密過程中用到了明文圖像的有效信息,即使明文圖像只有1 bit的差別,加密后圖像也會大不相同。具體的加密過程如下:

(1)分別計算R、G、B三通道像素值的和,分別標記為sum(R)、sum(G)、sum(B)。通過如下公式計算神經網絡系統的初始值,其中c1、c2以及c3是外部密鑰:

(3)

其中,mod是取模運算。

(2)將神經網絡系統迭代1 000+M×N次,為了避免瞬態效應,將前1 000次的數值舍棄,得到序列:

(4)

明文圖像中每個通道的每一個像素值都有可能置換到本通道或另外兩個通道中新的位置上,并改變此像素本身的值。通過公式(4)產生的序列首先得到三個決定通道置亂位置的矩陣X1_1,X2_1以及X3_1:

(5)

其中,abs為取絕對值的操作。

進而分別產生三個通道新的像素位置,具體過程如下:當X1_1(i,j)=1時,矩陣R中像素值R(i,j)和R(m,n)交換位置,再根據如下公式執行擴散操作改變像素R(i,j)的值:

R(i,j)=bitxor(R(i,j),R(m,n))

(6)

當X1_1(i,j)=2時,矩陣R中像素值R(i,j)和G(m,n)交換位置,根據如下公式執行擴散操作改變像素R(i,j)的值:

R(i,j)=bitxor(R(i,j),G(m,n))

(7)

當X1_1(i,j)=3時,矩陣R中像素值R(i,j)和B(m,n)交換位置,根據如下公式執行擴散操作改變像素R(i,j)的值:

R(i,j)=bitxor(R(i,j),B(m,n))

(8)

其中,像素值行位置m和列位置n計算如下:

m=1+mod((abs(X1(i,j)))×1014,M)

(9)

n=1+mod((abs(X1(i,j)+

abs(X2(i,j)))×1014,N)

(10)

當R通道置亂擴散結束后得到三個新的矩陣R_1,G_1,B_1。

當X2_1(i,j)=1時,矩陣G_1中像素值G_1(i,j)和G_1(m,n)交換位置,用如下公式執行擴散操作改變像素G_1(m,n)的值:

G_1(i,j)=bitxor(G_1(i,j),G_1(m,n))

(11)

當X2_1(i,j)=2時,矩陣G_1中像素值G_1(i,j)和R_1(m,n)交換位置,再根據如下公式執行擴散操作改變像素G_1(i,j)的值:

G_1(i,j)=bitxor(G_1(i,j),R_1(m,n))

(12)

當X2_1(i,j)=3時,矩陣G_1中像素值G_1(i,j)和B_1(m,n)交換位置,再根據如下公式執行擴散操作改變像素B_1(i,j)的值:

G_1(i,j)=bitxor(G_1(i,j),B_1(m,n))

(13)

其中,像素值行位置m和列位置n計算如下:

m=1+mod((abs(X2(i,j)))×1014,M)

(14)

n=1+mod((abs(X2(i,j)+

abs(X3(i,j)))×1014,N)

(15)

當G通道置亂擴散結束后得到三個新的矩陣R_2,G_2,B_2。

當X3_1(i,j)=1時,矩陣B_2中像素值B_2(i,j)和B_2(m,n)交換位置,再根據如下公式執行擴散操作改變像素B_2(i,j)的值:

B_2(i,j)=bitxor(B_2(i,j),B_2(m,n))

(16)

當X3_1(i,j)=2時,矩陣B_2中像素值B_2(i,j)和R_2(m,n)交換位置,再根據如下公式執行擴散操作改變像素B_2(i,j)的值:

B_2(i,j)=bitxor(B_2(i,j),R_2(m,n))

(17)

當X3_1(i,j)=3時,矩陣B_2中像素值B_2(i,j)和G_2(m,n)交換位置,再根據如下公式執行擴散操作改變像素B_2(i,j)的值:

B_2(i,j)=bitxor(B_2(i,j),G_2(m,n))

(18)

m=1+mod((abs(X1(i,j)+

abs(X3(i,j)))×1014,N)

(19)

n=1+mod((abs(X1(i,j)+abs(X2(i,j))+

abs(X3(i,j)))×1014,N)

(20)

當B通道置亂擴散結束后得到三個新的矩陣R_3,G_3,B_3。

3.2 二次擴散算法

為了提高加密算法的安全級別,對矩陣R_3,G_3,B_3進行二次擴散,過程如下:

(1)通過序列X1,X2以及X3得到三個中間圖像矩陣X1_2,X2_2以及X3_2。

(21)

(2)執行擴散操作。

R_4=bitxor(R_3,X1_1)

(22)

G_4=bitxor(G_3,X2_2)

(23)

B_4=bitxor(B_3,X3_3)

(24)

R_4,G_4,B_4即加密圖像C的三個通道。

提出的加密算法是對稱的,解密過程是加密過程的逆過程。

4 仿真結果

整個加密算法是基于MATLAB實現的,使用的測試圖像分別為Lena(256×256)。實現加密方案的密鑰以及仿真時的取值如表2所示。

表2 密鑰及其仿真時的取值

仿真結果如圖2所示。在圖2中,第一列的圖像為明文圖像,第二列為加密后的圖像,最后一列為解密后的圖像。由結果可以看出,這個加密方案是可行的。

圖2 仿真結果

5 安全性分析

5.1 密鑰空間

當一個加密方案中密鑰空間大于2100時,可以認為該加密方案是安全的,可以抵抗暴力攻擊。加密算法的密鑰包括明文圖像R,G,B三個通道的像素和以及外部密鑰c1,c2,c3,如果計算機的計算精度為10-14,則提出的算法的密鑰空間為(1014)6≈2289,所以認為加密方案是安全的。

5.2 密鑰敏感性分析

一個安全有效的加密方案應該保證在加密和解密過程中都是對密鑰敏感的,即當密鑰取值發生微小的變化時,解密結果將會完全不同。為了測量加密方案的敏感性,選擇測試圖像Lena(256×256),它的加密后的圖像以及解密后的圖像分別如圖3所示。當分別改變R通道的像素和以及外部密鑰c1的值,改變后的數值如表3所示。

表3 密鑰改變值分析

圖3 密鑰敏感性分析結果

5.3 直方圖分析

圖像加密算法抵抗統計攻擊的能力可以通過加密后圖像的直方圖來直觀地體現出來。直方圖反映了各個不同灰度級的像素個數,直方圖越均勻平坦,加密算法抵抗統計攻擊的能力越好。選擇的測試圖像為Lena。

通常,直方圖方差用如下公式計算:

其中,V={v0,v1,…,v255},向量中的每一個值vi(i=0,1,…,255)代表圖像中灰度值為i的數量。var(V)是向量V的方差。方差的值越小,直方圖越均勻。

由以上分析可知,提出的加密算法加密后圖像的直方圖更加平坦,能夠有效地抵抗統計攻擊。

5.4 相關性分析

通常一幅明文圖像信息量很大,每一個像素與其相鄰像素之間的相關性很高。然而,為了抵抗各種統計攻擊,要求加密后圖像的像素之間的相關性近似為零。明文圖像Lena及其加密后圖像的相關分布顯示,提出的圖像加密算法足夠抵抗統計攻擊。

5.5 抵抗一些典型攻擊

通常情況下,對加密系統分析時有四種典型的攻擊形式:唯密文攻擊、選擇密文攻擊、已知明文攻擊和選擇明文攻擊。其中,選擇明文攻擊是對密碼系統最有威脅的一種,一般來說,如果一個加密方案能夠抵抗選擇明文攻擊,那么它也有足夠的能力去抵抗其他類型的攻擊。在提出的方案中,有一些步驟是為了抵抗選擇明文攻擊而設計的。

加密方案主要的兩個步驟:神經網絡系統初始值的產生是與明文圖像像素和以及外部密鑰有關的,即使在外部密鑰相同的條件下,不同的明文圖像也會產生不同的序列。

6 結束語

該文使用三階神經網絡對彩色圖像進行通道間的同時置亂擴散,可以有效地避免置亂和擴散分開攻擊對加密算法的影響,實驗結果表明,該算法有良好的加密性能,可以抵抗各種攻擊。

主站蜘蛛池模板: 欧美日韩中文国产va另类| 久久久久国产精品熟女影院| 黄色片中文字幕| 伊人久久大香线蕉综合影视| 日韩小视频网站hq| 91久草视频| 欧美成一级| 国产色爱av资源综合区| 欧美日韩精品一区二区视频| 国产在线观看人成激情视频| 亚洲国产精品日韩专区AV| 少妇精品网站| 欧美成人日韩| 亚洲天堂网视频| 天堂网国产| 欧美日韩久久综合| 喷潮白浆直流在线播放| 亚洲国产一区在线观看| v天堂中文在线| 婷婷亚洲最大| 亚洲高清国产拍精品26u| 亚洲日本一本dvd高清| 亚洲日韩精品无码专区| 97精品久久久大香线焦| 国产乱人激情H在线观看| 黄色片中文字幕| 成年免费在线观看| 久久这里只有精品66| 国模视频一区二区| 亚洲一区二区三区国产精品 | 亚洲国产午夜精华无码福利| 国产香蕉在线| 97人人模人人爽人人喊小说| 国产综合另类小说色区色噜噜| 亚洲中久无码永久在线观看软件| 老色鬼久久亚洲AV综合| 97人人做人人爽香蕉精品| 国产乱子伦手机在线| 国产福利免费观看| 午夜福利免费视频| 中文字幕色站| 欧美亚洲国产精品第一页| 国产一级裸网站| 99这里只有精品6| 日本成人一区| 在线欧美日韩| 无码高潮喷水专区久久| 久久综合国产乱子免费| 国产精品女在线观看| 久久中文电影| 国产亚洲精品97AA片在线播放| 欧美精品高清| 国产剧情一区二区| 亚国产欧美在线人成| 波多野结衣一区二区三视频| 精品夜恋影院亚洲欧洲| 伊人天堂网| 强奷白丝美女在线观看| 国产精品免费久久久久影院无码| 国产91成人| 波多野结衣视频一区二区| 女高中生自慰污污网站| 日本手机在线视频| 欧美色伊人| 播五月综合| 欧美精品二区| 亚洲无码高清一区二区| 成人精品免费视频| 午夜精品久久久久久久无码软件 | 毛片免费在线| 亚洲最黄视频| 久久久91人妻无码精品蜜桃HD| 欧美日韩第三页| 久久国语对白| 欧美高清日韩| 最新无码专区超级碰碰碰| 狠狠色成人综合首页| 精品亚洲国产成人AV| 国产91精选在线观看| 午夜视频www| 人妻无码一区二区视频| 久久永久精品免费视频|