• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于多混沌系統(tǒng)的圖像加密算法*

      2022-09-08 05:58:44奚新寶謝淑翠張建中
      傳感器與微系統(tǒng) 2022年9期
      關(guān)鍵詞:明文控制參數(shù)加密算法

      奚新寶, 謝淑翠, 張建中

      (1.西安郵電大學(xué) 通信與信息工程學(xué)院,陜西 西安 710121; 2.西安郵電大學(xué) 理學(xué)院,陜西 西安 710121;3.陜西師范大學(xué) 數(shù)學(xué)與信息科學(xué)學(xué)院,陜西 西安 710061)

      0 引 言

      隨著網(wǎng)絡(luò)技術(shù)、數(shù)字信息化技術(shù)的發(fā)展,數(shù)字圖像越來越成為多媒體信息交流的重要載體之一。由于網(wǎng)絡(luò)的信息共享性和開放性,圖像信息數(shù)據(jù)傳輸?shù)陌踩珕栴}日益嚴(yán)峻,使得研究高安全性和高效的圖像加密算法成為當(dāng)前研究的熱點(diǎn)問題。密碼學(xué)和混沌學(xué)[1]這兩門學(xué)科在結(jié)構(gòu)上存在著許多聯(lián)系和相似性,因此,啟發(fā)人們將混沌理論的研究應(yīng)用到密碼學(xué)領(lǐng)域。且混沌系統(tǒng)具有偽隨機(jī)性、不可預(yù)測性和初值敏感性[2]等特點(diǎn),適用于圖像加密系統(tǒng)的設(shè)計(jì)。

      1998年,F(xiàn)ridrich J首次將混沌系統(tǒng)和數(shù)字圖像加密相結(jié)合[3],在此之后各種基于混沌系統(tǒng)的圖像加密方案被陸續(xù)提了出來。文獻(xiàn)[4]設(shè)計(jì)了一種改進(jìn)型Henon映射,更加適用于設(shè)計(jì)安全的密碼系統(tǒng)。Chai X L等人[5]設(shè)計(jì)了一種基于脫氧核糖核酸(DNA)操作的混沌圖像加密方法,加密效果良好。盡管多種加密方案層出不窮,但部分方案的加密算法存在安全性缺陷。文獻(xiàn)[6]設(shè)計(jì)了一種基于元胞自動機(jī)(cellular automata,CA)和Tent映射的圖像加密方案,但采用一維混沌系統(tǒng),使得密鑰空間小,安全性不高。在文獻(xiàn)[7]設(shè)計(jì)了一種圖像加密算法,在像素?cái)U(kuò)散階段采用典型耦合映射格(CML)和信息熵來產(chǎn)生另一密鑰流,但密文圖像的部分信息容易暴露,從而算法安全性較低。

      本文在置亂階段使用三維細(xì)胞神經(jīng)網(wǎng)絡(luò)(cellular neural network,CNN)混沌系統(tǒng)生成的偽隨機(jī)序列與二維廣義Arnold映射對圖像完成2次置亂,同時將該映射產(chǎn)生的混沌序列用于像素值擴(kuò)散階段,采用加取模和循環(huán)移位來進(jìn)行像素值擴(kuò)散得到最終密文圖像。該算法克服了混沌系統(tǒng)結(jié)構(gòu)單一等問題,仿真結(jié)果和安全性分析表明該算法是安全可行的。

      收稿日期:2020—09—29

      1 混沌系統(tǒng)

      1.1 二維廣義Arnold映射

      本文利用推廣后的二維廣義Arnold映射[8],方程如下

      (1)

      式中 (x,y)和(x′y′)分別為經(jīng)過Arnold變換前后的圖像像素位置,參數(shù)a,b均為正整數(shù),n為變換次數(shù),N為圖像矩陣的階數(shù)。

      1.2 分段線性混沌映射

      引入分段線性混沌映射(piece wise linear chaotic map,PWLCM)生成二維廣義Arnold映射的控制參數(shù),每循環(huán)一次Arnold映射的控制參數(shù)都不同,從而達(dá)到動態(tài)產(chǎn)生密鑰的效果。分段線性混沌映射表示為

      (2)

      式中x,c分別為該混沌映射的系統(tǒng)狀態(tài)變量和控制參數(shù),當(dāng)控制參數(shù)c∈(0,0.5),x∈(0,1)時,系統(tǒng)處于混沌狀態(tài)。

      1.3 三維CNN混沌系統(tǒng)

      Chua L O在1988年第一次提出了CNN的概念,CNN是一種通過于局部細(xì)胞互連構(gòu)造而成的神經(jīng)網(wǎng)絡(luò)系統(tǒng)[9]。三維CNN系統(tǒng)的動力學(xué)方程為

      j=1,2,3

      (3)

      式中j為細(xì)胞,xj為細(xì)胞狀態(tài),Ajk為反饋模板,Sjk為控制模板,Ij為閾值,f(xj)為輸出,其表達(dá)式如下

      (4)

      實(shí)驗(yàn)證明,當(dāng)三維CNN系統(tǒng)中的參數(shù)取值如式(5)時,三維CNN系統(tǒng)可產(chǎn)生混沌現(xiàn)象

      aj=0

      (5)

      將以上參數(shù)代入式(3)后即可以得到三維CNN混沌系統(tǒng)的動力學(xué)方程如下

      (6)

      2 加密算法

      本文的加密算法主要由置亂和擴(kuò)散兩個階段構(gòu)成,明文圖像記為PM×N,M,N分別為圖像的高和寬。

      2.1 像素置亂階段

      步驟1 利用SHA—256函數(shù)計(jì)算明文圖像的256 bit哈希值作為密鑰,記作K,K=[k1,k2,…,k32]。其中,ki={ki1,ki2,…,ki8},i=1,2,…,32。

      利用明文圖像計(jì)算輔助參數(shù)d,公式如下

      d=mod(floor(sum/(MN)×256)×1012,32)+1

      (7)

      步驟2 將明文圖像PM×N按行或列展開成一維向量,記為A。利用步驟1產(chǎn)生三維CNN混沌系統(tǒng)的初始值,然后對三維CNN混沌系統(tǒng)迭代產(chǎn)生長度分別為MN/3的混沌序列x1(i),x2(i),x3(i),其中,ceil為向上取整函數(shù),由于混沌序列的值域范圍較大,不利于數(shù)據(jù)批處理,因此,需對其進(jìn)行優(yōu)化預(yù)處理,預(yù)處理過程如下

      x1(i)=1014x1(i)-floor(1014x1(i))

      (8)

      式中 floor為取整函數(shù),另外2個序列的預(yù)處理運(yùn)算過程同式(8)。所得混沌序列記s={x1(i),x2(i),x3(i)},由s生成偽隨機(jī)序列X,序列X中第j個數(shù)表示如下

      Xj=mod(floor((sj+100)×1010),M×N)+1,

      j=1,2,…,M×N

      (9)

      步驟3 將序列X中重復(fù)出現(xiàn)的偽隨機(jī)數(shù)只保留一個,將集合{1,2,…,MN}中沒有出現(xiàn)在序列X中的數(shù)值按由小到大順序添加到序列X的末尾。最后將A(Xj)與A(XMN-j+1)交換位置,即完成無重復(fù)置亂,得到的中間密文圖像記為B,B=reshape(A,M,N)。

      步驟4 輸入PWLCM的系統(tǒng)狀態(tài)初始值x0與控制參數(shù)c,將該映射迭代2 000次生成混沌序列F,并通過式(10)、式(11)產(chǎn)生廣義Arnold映射加密所需的控制參數(shù)

      h=fix(F(k)×10p)-fix(F(k)×10q)×10p-q

      (10)

      u=(h×105)mod 256,v=(h×106)mod 256

      (11)

      式中p,q為正整數(shù);fix為朝0方向取整,k為小于2 000的正整數(shù)。對圖像B借助二維廣義Arnold映射進(jìn)行置亂,將步驟重復(fù)R輪得到2次置亂后的中間密文圖像,記為H。

      2.2 像素?cái)U(kuò)散階段

      步驟1 利用置亂階段步驟2得到的混沌序列s生成偽隨機(jī)序列S,公式如下

      S=mod(floor(s×pow2(16)),256)

      (12)

      步驟2 用H和G分別為基于加取模擴(kuò)散前后的圖像,在加取模運(yùn)算過程中,需要將明文任意像素點(diǎn)信息擴(kuò)散到密文的整個圖像之中,正向的算法如下

      Gi=(Gi-1+Si+Hi)mod 256

      (13)

      其中,G0=0,逆向的算法如下

      Gi=(Gi+1+Si+Hi)mod 256

      (14)

      在基于加取模擴(kuò)散算法的基礎(chǔ)上添加循環(huán)移位操作,具體公式如下

      Gimod 256<<

      (15)

      式中 LSB3為取數(shù)據(jù)的最低3位,即如果是l位的灰度圖像,則應(yīng)取數(shù)據(jù)的最低log2l位或者任意的log2l位。最后,將一維向量還原成二維圖像即得到最終密文圖像,記為C。

      3 解密算法

      先對密文圖像的數(shù)據(jù)點(diǎn)進(jìn)行循環(huán)右移操作。分別對加取模擴(kuò)散運(yùn)算的逆向算法進(jìn)行正向操作和對正向算法進(jìn)行逆向操作,最后對Arnold變換做逆變換,再進(jìn)行無重復(fù)置亂的逆運(yùn)算,得到明文圖像。

      4 仿真結(jié)果

      仿真實(shí)驗(yàn)使用的測試圖像是大小為512×512的Lena圖像,PWLCM的控制參數(shù)c=0.2,狀態(tài)變量初值x0=0.5,二維廣義Arnold映射的控制參數(shù)n=160,循環(huán)輪數(shù)R=3。使用MATLAB 2014b版本平臺下進(jìn)行加解密實(shí)驗(yàn)。仿真結(jié)果如圖1所示,可見本文算法具有很好的加解密效果。

      圖1 仿真結(jié)果

      5 安全性分析

      5.1 密鑰空間

      文獻(xiàn)[10]指出一個安全有效的加密算法的密鑰空間大小應(yīng)該至少為2100,本文算法的密鑰由明文圖像256 bit哈希值K,PWLCM的初始狀態(tài)值x0和控制參數(shù)c,Arnold變換次數(shù)n和循環(huán)輪數(shù)R以及明文像素值之和sum組成。采用精確到小數(shù)點(diǎn)后16位的雙精度表示,密鑰空間大小為2256×(1016)4×sum≈2469?2100,說明加密算法的密鑰空間可以抵抗窮舉攻擊。

      5.2 灰度直方圖

      圖2給出了Lena圖像與其密文圖像的直方圖,可見明文圖像的直方圖分布是呈高低不均狀態(tài),而密文圖像的直方圖分布相對更加均勻。即本文算法加密后所得的密文圖像的像素值是滿足均勻分布的。

      圖2 明密文圖像的直方圖

      5.3 相鄰像素相關(guān)性

      相鄰像素相關(guān)系數(shù)的計(jì)算公式如下

      (16)

      (17)

      (18)

      式中x,y為相鄰兩個像素的灰度值,E(x),E(y)分別為x,y的期望,rxy為相關(guān)系數(shù),N為相鄰像素對的數(shù)目。圖3給出了Lena明文圖像與其密文圖像的相鄰像素在水平方向相關(guān)分布情況,表1給出了本文算法相關(guān)系數(shù)的計(jì)算結(jié)果。

      圖3 明密文的相鄰像素在水平方向的分布情況

      表1 相鄰像素的相關(guān)系數(shù)

      由表1可見,本文算法得到的密文圖像的相關(guān)系數(shù)幾乎接近于0,明文圖像的相關(guān)系數(shù)接近于1。相比于文獻(xiàn)[11~13],本文算法得到的密文圖像相關(guān)系數(shù)較小,說明密文圖像在各個方向上幾乎不具有相關(guān)性。

      5.4 抗差分攻擊分析

      一般使用像素?cái)?shù)變化率(number of pixels change rate,NPCR)以及統(tǒng)一平均變化強(qiáng)度(unified average changing intensity,UACI)兩項(xiàng)指標(biāo)來衡量加密系統(tǒng)的抗差分攻擊能力[14]。NPCR和UACI定義如下

      (19)

      (20)

      式中C1(i,j)≠C2(i,j)時,D(i,j)為1;C1(i,j)=C2(i,j)時,D(i,j)為0。,M,N分別為圖像像素的行數(shù)和列數(shù),C1(i,j),C2(i,j)分別為兩幅灰度圖像。表2給出了本文算法對100組Lena原始密文圖像和隨機(jī)微小改變明文后加密得到的密文圖像之間的最大、最小和平均NPCR和UACI值。

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

      由表2可見,本文算法計(jì)算得到的NPCR和UACI的平均值非常接近于理想值,相比于文獻(xiàn)[13,15],本文提出的算法對明文的微小改變的敏感性較強(qiáng),所以,本文算法更能有效地抵抗差分攻擊。

      5.5 密鑰敏感性

      密鑰敏感性[16]是指在加解密過程中,當(dāng)密鑰發(fā)生微小變化時,加解密圖像會發(fā)生很大變化。選取一組密鑰{c,x0,K},3個微小改變后的密鑰:KEY1={c+10-14,x0,K},KEY2={c,x0+10-14,K},KEY3={c,x0,Km}。其中,密鑰c,x0微小改變的量為10-14,K的微小改變量為1 bit的哈希值,記為Km,利用微小改變后的密鑰分別加密Lena圖像并解密其密文圖像,計(jì)算得到的NPCR,UACI值如表3所示,可見計(jì)算得到的NPCR和UACI值接近于理想值。因此,本文算法的密鑰敏感性較強(qiáng)。

      表3 密鑰敏感性測試結(jié)果 %

      5.6 信息熵分析

      信息熵計(jì)算公式如下

      (21)

      式中L圖像的灰度等級,p(i)為灰度值i出現(xiàn)的概率,對于L=256的灰度圖像,其信息熵的理想值為8。表4給出了信息熵的測試結(jié)果,和文獻(xiàn)[13,17]相比,本文算法的密文圖像的信息熵更接近理論值8。所以,本文算法加密得到的密文圖像可以有效地抵抗統(tǒng)計(jì)分析攻擊。

      表4 信息熵測試結(jié)果

      6 結(jié)束語

      本文提出了一種基于多混沌系統(tǒng)的圖像加密算法,首先利用三維CNN混沌系統(tǒng)產(chǎn)生的混沌序列用于對明文圖像進(jìn)行無重復(fù)置亂,并對置亂后的圖像進(jìn)行Arnold變換完成2次置亂,之后在像素?cái)U(kuò)散階段,使用三維CNN混沌系統(tǒng)產(chǎn)生的混沌序列作為會話密鑰與置亂后的圖像,采用加取模和循環(huán)移位來進(jìn)行像素值的擴(kuò)散。仿真結(jié)果和安全性分析表明:本文提出的加密算法密鑰空間大,密文圖像直方圖分布均勻,相鄰像素相關(guān)性小,密鑰敏感性高,抗差分攻擊能力強(qiáng)。因此,本文提出的算法具有較高的安全性,并在保密通信應(yīng)用中具有較大的實(shí)用價值。

      猜你喜歡
      明文控制參數(shù)加密算法
      高超聲速飛行器滑??刂茀?shù)整定方法設(shè)計(jì)*
      飛控與探測(2022年6期)2022-03-20 02:16:14
      Birkhoff系統(tǒng)穩(wěn)定性的動力學(xué)控制1)
      奇怪的處罰
      基于PI與準(zhǔn)PR調(diào)節(jié)的并網(wǎng)逆變器控制參數(shù)設(shè)計(jì)
      黑龍江電力(2017年1期)2017-05-17 04:25:08
      奇怪的處罰
      基于小波變換和混沌映射的圖像加密算法
      四部委明文反對垃圾焚燒低價競爭
      Hill加密算法的改進(jìn)
      對稱加密算法RC5的架構(gòu)設(shè)計(jì)與電路實(shí)現(xiàn)
      六安市| 德惠市| 益阳市| 武隆县| 十堰市| 陵川县| 偃师市| 新和县| 贵南县| 含山县| 伊金霍洛旗| 涿鹿县| 石嘴山市| 武城县| 右玉县| 五华县| 泰来县| 嘉荫县| 哈密市| 韶关市| 镇巴县| 房产| 东辽县| 沂南县| 从化市| 赤壁市| 澄江县| 南召县| 宁远县| 盐津县| 屏东市| 和平区| 太保市| 墨竹工卡县| 苗栗县| 故城县| 高淳县| 磐安县| 德安县| 勃利县| 开原市|