文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.190966
中文引用格式: 曾珂,,禹思敏,胡迎春,等. 基于3D-LSCM的圖像混沌加密算法[J].電子技術(shù)應(yīng)用,,2020,,46(1):86-91.
英文引用格式: Zeng Ke,Yu Simin,,Hu Yingchun,,et al. Image encryption using 3D Logistic-Sine cascade map[J]. Application of Electronic Technique,2020,,46(1):86-91.
0 引言
眾所周知,,人們需要對(duì)數(shù)字圖像中的隱私信息進(jìn)行保護(hù)或加密,由于混沌系統(tǒng)具有拓?fù)鋫鬟f性,、正的李雅普諾夫指數(shù)并且對(duì)初始條件高度敏感,,在數(shù)字圖像混沌加密中獲得了廣泛的應(yīng)用[1-3]。例如,,文獻(xiàn)[4]利用Arnold映射置亂圖像像素位置,,文獻(xiàn)[5]給出了一種基于DNA序列的加密算法,文獻(xiàn)[6]介紹了一種基于Logistic映射的混沌加密算法,,文獻(xiàn)[7]給出了基于通信編碼序列與多混沌圖像加密算法,,文獻(xiàn)[8]給出了復(fù)合級(jí)聯(lián)混沌的彩色圖像加密算法,文獻(xiàn)[9]給出了圖像全息數(shù)字水印算法,,文獻(xiàn)[10]給出了基于DNA序列操作的新型混沌圖像加密方案,。還有最新的圖像加密算法,如文獻(xiàn)[11]給出的基于并行計(jì)算系統(tǒng)的快速圖像加密算法,。在這些算法中,例如文獻(xiàn)[5]的密文直方圖不均勻,,文獻(xiàn)[6]存在混沌范圍小的特點(diǎn)等,,此外部分算法存在混沌系統(tǒng)和加密算法與明文無(wú)關(guān)、用于生成混沌序列的混沌系統(tǒng)結(jié)構(gòu)相對(duì)簡(jiǎn)單的不足,。
為解決上述問(wèn)題,,本文提出了一種基于三維Logistic-Sine級(jí)聯(lián)映射(3D-LSCM)的圖像混沌加密算法,將Logistic映射的輸出作為Sine映射的輸入,,構(gòu)造一種三維Logistic-Sine級(jí)聯(lián)映射,,在此基礎(chǔ)上,,利用3D-LSCM設(shè)計(jì)圖像混沌加密算法。該算法的主要特點(diǎn)是采用兩輪置亂和雙向擴(kuò)散的方法,,并且將明文信息作為初始條件的一部分,,增強(qiáng)等價(jià)密鑰破譯難度,最后給出了等價(jià)密鑰分析,、差分分析,、相關(guān)性測(cè)試、密鑰敏感性測(cè)試,、密鑰空間大小的結(jié)果,。
1 3D-LSCM混沌映射的構(gòu)造
Logistic映射的數(shù)學(xué)表達(dá)式為:
由于Logistic映射范圍較小,只有當(dāng)μ∈4時(shí)才出現(xiàn)單位區(qū)間[0,,1]上的滿映射,;而Sine映射存在與Logistic映射一樣的缺點(diǎn),即具有有限的混沌映射范圍和分布不均勻性,。但如果將Logistic映射與Sine映射進(jìn)行級(jí)聯(lián),,則能擴(kuò)大混沌映射的范圍?;谏鲜隹紤],,本文在文獻(xiàn)[12]的基礎(chǔ)上,提出一種3D-LSCM映射,,其迭代方程的數(shù)學(xué)表達(dá)式為:
在式(3)中,,Logistic映射的輸出作為Sine映射的輸入,進(jìn)而由一維擴(kuò)展到三維,。與單獨(dú)的Logistic映射和Sine映射相比,,由于Logistic映射和Sine映射相互嵌套和耦合,因而具有更好的統(tǒng)計(jì)性能[13],。李氏指數(shù)(Lipschitz Exponent,,LE)計(jì)算結(jié)果如圖1所示,可知3D-LSCM在整個(gè)控制參數(shù)區(qū)間內(nèi)具有3個(gè)正的李氏指數(shù)(λ1,、λ2,、λ3)。
2 圖像混沌加密算法
2.1 混沌加密流程圖
本文設(shè)計(jì)了一種基于3D-LSCM的圖像混沌加密算法,,其流程圖如圖2所示,。由圖2可知,該算法采用了兩輪置亂-雙向擴(kuò)散結(jié)構(gòu),,密鑰由x0,、y0、z0、μ組成,,其中x0,、y0、z0為3D-LSCM的初始值,,并且與明文相關(guān),;μ為3D-LSCM的控制參數(shù)?;煦缧蛄袆t由3D-LSCM產(chǎn)生,,主要用于兩輪置亂-雙向擴(kuò)散中。設(shè)明文圖像P的尺寸為M×N,,對(duì)其混沌加密的流程圖如圖2所示,。
2.2 初始值設(shè)置與混沌序列的生成
為了抵御選擇明文攻擊,混沌系統(tǒng)的初始條件需要對(duì)明文有高度敏感性,。為了解決這個(gè)問(wèn)題,,在本算法中,對(duì)初始值設(shè)置的數(shù)學(xué)表達(dá)式為:
其中,,x,、y、z是混沌系統(tǒng)產(chǎn)生的隨機(jī)混沌序列,,S是量化后的混沌序列,,mod為取模運(yùn)算。在本文中共用到3個(gè)混沌序列,,即S1,、S2、S3,。
2.3 加密與解密過(guò)程
在本節(jié)中,,圖像混沌加密算法包括兩輪置亂加密和雙向擴(kuò)散加密。其中雙向擴(kuò)散保證在密鑰數(shù)量少的情況下仍然具有較好的安全性[14],,解密過(guò)程為加密過(guò)程的逆運(yùn)算,。
2.3.1 第1輪置亂
在置亂階段利用Arnold Cat映射,其迭代方程的數(shù)學(xué)表達(dá)式為:
式中,,a,、b是貓映射的兩個(gè)參數(shù),其中a=S1,,b=S2,,(xn+1,yn+1)為坐標(biāo)(xn,,yn)處的像素被置亂后的位置。通過(guò)此輪置亂得到置亂圖像,將其按照光柵方式掃描轉(zhuǎn)換為一維序列R,。
2.3.2 第1輪擴(kuò)散
本輪擴(kuò)散環(huán)節(jié)采用異或雙向擴(kuò)散,,即正向和逆向各一次。明文,、密文和密鑰三者相互異或,,得正向擴(kuò)散加密算法的數(shù)學(xué)表達(dá)式為:
2.3.3 第2輪置亂
首先將第一輪擴(kuò)散得到的一維擴(kuò)散序列Ci轉(zhuǎn)化為二維灰度圖像,再通過(guò)Arnold Cat映射進(jìn)行第二次置亂,,將置亂后的圖像按照光柵方式掃描轉(zhuǎn)換為第二輪置亂后的一維序列Ei,。
2.3.4 第2輪擴(kuò)散
本輪擴(kuò)散通過(guò)采用取模雙向擴(kuò)散來(lái)改變像素值,得正向擴(kuò)散加密的數(shù)學(xué)表達(dá)式為:
3 圖像混沌加密數(shù)值仿真實(shí)驗(yàn)及安全性能分析
3.1 圖像混沌加密數(shù)值仿真實(shí)驗(yàn)
采用標(biāo)準(zhǔn)測(cè)試圖像進(jìn)行混沌加密數(shù)值仿真實(shí)驗(yàn),。實(shí)驗(yàn)平臺(tái)主要包括 Windows 10操作系統(tǒng),、Intel CoreTM i7-5500U 2.4 GHz處理器、8 GB內(nèi)存,、1T硬盤(pán),、MATLAB 2015b。設(shè)密鑰參數(shù)為x0=0.01,,y0=0.2,,z0=0.16,μ=0.08,。下面分別以圖像大小為M×N=256×256的Lena,、Baboon、Pepeers為例,,進(jìn)行圖像混沌加密數(shù)值仿真實(shí)驗(yàn),,結(jié)果如圖3所示。
3.2 密鑰空間分析
一個(gè)良好的圖像加密系統(tǒng)必須具備足夠大的密鑰空間來(lái)抵御針對(duì)密鑰的窮舉攻擊,,當(dāng)密鑰空間大于2100才能為加密系統(tǒng)提高安全可靠的保障[15],。加密算法的密鑰x0、y0,、z0,、μ為雙精度浮點(diǎn)數(shù),計(jì)算精度為10-14,,密鑰空間可達(dá)到1014×1014×1014×1014≈2186>>2100,。
3.3 敏感性分析
一個(gè)好的加密算法要對(duì)密鑰敏感。由加密算法可知,,密鑰參數(shù)為x0,、y0、z0,、μ,。保持其中3個(gè)不變,,將x0改變?yōu)閤0+10-17時(shí),可以解密出明文圖像,,而將x0改變?yōu)閤0+10-16時(shí),,無(wú)法解密出明文圖像。對(duì)其余密鑰參數(shù)的敏感性測(cè)試也有相似的結(jié)果,。這都說(shuō)明了該算法具有良好的密鑰敏感性,。
3.4 直方圖分析
一個(gè)好的加密算法得到的密文,其統(tǒng)計(jì)特性必須盡可能接近均勻分布,,攻擊者無(wú)法從密文統(tǒng)計(jì)特性中得到任何關(guān)于明文的有效信息,,因而可以抵抗唯密文攻擊。下面從明密文圖像的統(tǒng)計(jì)直方圖分析,。
由圖4和圖5可知,,明文圖像像素值的分布不均勻,密文圖像像素值分布均勻,,其中橫坐標(biāo)表示像素值,,縱坐標(biāo)表示相對(duì)應(yīng)的出現(xiàn)頻數(shù)。
3.5 相鄰像素相關(guān)性測(cè)試
相鄰像素的相關(guān)性一般從水平,、垂直,、對(duì)角線3個(gè)方向來(lái)體現(xiàn)。相關(guān)系數(shù)表示相鄰像素之間的關(guān)系,,相鄰像素相關(guān)性越大,,相關(guān)系數(shù)則越大[16]。通過(guò)加密算法對(duì)像素進(jìn)行置亂和擴(kuò)散,,破壞了像素之間的相關(guān)性,,使得密文圖像的相關(guān)系數(shù)接近0。相鄰像素相關(guān)性測(cè)試的數(shù)學(xué)表達(dá)式為:
式中,,x,、y表示隨機(jī)像素對(duì)的像素值,rxy為隨機(jī)像素對(duì)的相關(guān)系數(shù),。相鄰像素相關(guān)統(tǒng)計(jì)的結(jié)果如表1所示,,可知明文的相關(guān)系數(shù)都接近于1,說(shuō)明明文像素之間有很高的相關(guān)性,,而加密后的相關(guān)系數(shù)接近于0,,說(shuō)明密文之間不相關(guān),能抵御統(tǒng)計(jì)攻擊,。表2還給出了與文獻(xiàn)[8]和文獻(xiàn)[15]的對(duì)比,。由表2可知,本算法的密文圖像相鄰像素相關(guān)性更接近于0,。
Lena的明文和密文圖像在不同方向上的相關(guān)性分布情況如圖6所示,,圖6(a),、圖6(b)、圖6(c)(圖6(d),、圖6(e),、圖6(f))橫坐標(biāo)都表示明文(密文)圖像(x,,y)處像素的灰度值,,縱坐標(biāo)分別表示明文(密文)圖像(x+1,y),、(x,,y+1)、(x+1,,y+1)處像素的灰度值,。由圖可知Lena明文像素分布比較密集,基本都集中于y=x直線上,,說(shuō)明其相關(guān)性較強(qiáng),,而Lena密文圖像像素分布于整個(gè)空間,說(shuō)明密文不具有相關(guān)性,。
3.6 差分分析
差分分析主要是用來(lái)檢驗(yàn)加密系統(tǒng)是否能夠抵御差分攻擊,。差分攻擊是指通過(guò)分析給定的明文與密文之間的差分關(guān)系,從而獲得盡可能多的密鑰,,它能夠用來(lái)攻擊迭代次數(shù)少的密碼[17],。當(dāng)兩個(gè)明文圖像僅存在一個(gè)像素不同時(shí),假設(shè)密文圖像第(i,,j)點(diǎn)的像素值分別為C(i,,j)和C′(i,j),,當(dāng)滿足C(i,,j)=C′(i,j)時(shí),,D(i,,j)=0;當(dāng)C(i,,j)≠C′(i,,j)時(shí),D(i,,j)=1,。其中C(i,j),、D(i,,j),、C′(i,j)的定義分別為:
式中,,M和N分別為圖像的寬度和高度,。
通過(guò)引入圖像像素值變化率(NPCR)和歸一化像素值平均改變強(qiáng)度(UACI)兩個(gè)指標(biāo)來(lái)判斷加密算法抵御差分攻擊的能力。NPCR和UACI的定義為:
通過(guò)測(cè)試,,得到本文加密算法中NPCR=99.630 7%,,UACI=33.464 0%。而已知NPCR和UACI的理想期望值為NPCR=99.609 4%和UACI=33.463 5%,,表3是不同文獻(xiàn)所對(duì)應(yīng)的NPCR與UACI計(jì)算結(jié)果比較,。從結(jié)果很明顯可以看到本文測(cè)試數(shù)據(jù)與理想值非常接近,說(shuō)明該混沌加密系統(tǒng)對(duì)明文變化非常敏感,,明文對(duì)于密文存在雪崩效應(yīng),,細(xì)小的明文變化會(huì)對(duì)密文產(chǎn)生較大的影響。
3.7 NIST測(cè)試
一個(gè)序列是否達(dá)到信息加密的安全標(biāo)準(zhǔn),,需要對(duì)序列進(jìn)行隨機(jī)性測(cè)試,。目前,大部分使用的是根據(jù)美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院(NIST)提供的測(cè)試軟件與標(biāo)準(zhǔn),。衡量隨機(jī)性的方法是P-value方法,,P-value是一個(gè)序列比真隨機(jī)序列的隨機(jī)性要好的概率。若被測(cè)試的100組106 bit序列的值滿足,,則通過(guò)測(cè)試,,否則不通過(guò)。按照NIST測(cè)試軟件的要求,,選取100組長(zhǎng)度為106 bit的加密序列進(jìn)行測(cè)試,,測(cè)試結(jié)果如表4所示。
由表4可知,,加密序列通過(guò)了NIST全部測(cè)試,,表明具有良好的隨機(jī)特性。
3.8 選擇明文攻擊
選擇明文攻擊:密碼破譯者不僅能夠獲得一定數(shù)量的明—密文對(duì),,還可以用他選擇的任何明文,,在同一未知密鑰的情況下能加密得到相應(yīng)的密文[18]。
對(duì)于“置亂—擴(kuò)散”結(jié)構(gòu)的圖像混沌加密算法,,選擇明文攻擊通常選擇所有像素值相同的特殊明文圖像使置亂操作失效,,獲取擴(kuò)散等效密鑰,進(jìn)而獲取置亂等效密鑰,,最終完成破譯[19],。為了抵御選擇明文攻擊,本文在加密過(guò)程中,,使用式(4)將明文信息與初始值相結(jié)合,,即使攻擊者利用像素值全部相同的圖像,,也僅可以使第一輪的置亂過(guò)程無(wú)效,而第二輪置亂加密對(duì)于經(jīng)過(guò)第一輪擴(kuò)散的中間密文圖像依舊有效,。因此,,攻擊者無(wú)法通過(guò)選擇的明文圖像恢復(fù)未知隨機(jī)序列。此外,,即使攻擊者得到對(duì)應(yīng)某一像素值之和的所有等效密鑰,,也僅有1/(M×N×28)的概率適用于待破譯密文,故無(wú)法還原對(duì)應(yīng)明文圖像,。
4 結(jié)論
本文提出了一種基于3D-LSCM的圖像混沌加密算法,,該算法的主要特點(diǎn)是采用兩輪置亂和雙向擴(kuò)散的方法,并且將明文信息作為初始條件的一部分,,增強(qiáng)等價(jià)密鑰破譯難度,并給出了差分分析,、相關(guān)性測(cè)試,、密鑰敏感性測(cè)試、密鑰空間大小的結(jié)果,。
參考文獻(xiàn)
[1] 曹光輝,,李春強(qiáng).聯(lián)合空域和小波域的圖像加密[J].計(jì)算機(jī)應(yīng)用,2017(2):201-206.
[2] 禹思敏,,呂金虎,,李澄清.混沌密碼及其在多媒體保密通信中應(yīng)用的進(jìn)展[J].電子與信息學(xué)報(bào),2016,,38(3):735-752.
[3] 凌大旺,,禹思敏.基于嵌入式系統(tǒng)的混沌數(shù)字圖像加密研究[J].電子技術(shù)應(yīng)用,2012,,38(3):20-22.
[4] GUAN Z H,,HUANG F,GUAN W.Chaos-based image encryption algorithm[J].Physics Letters A,,2005,,346(1-3):153-157.
[5] LIU H,WANG X,,KADIR A.Image encryption using DNA complementary rule and chaotic maps[J].Applied Soft Computing,,2012,12(5):1457-1466.
[6] 洪媛,,徐寧,,涂興華.基于Logistic混沌的圖像實(shí)值加密[J].量子電子學(xué)報(bào),2018,,35(2):149-155.
[7] 楊曉剛,,劉國(guó)榮,,毛彥斌.基于通信編碼序列與多混沌圖像加密算法[J].計(jì)算機(jī)應(yīng)用與軟件,2016(7):304-307.
[8] 謝國(guó)波,,朱潤(rùn)盈.復(fù)合級(jí)聯(lián)混沌的彩色圖像加密算法[J].計(jì)算機(jī)工程與應(yīng)用,,2018,54(8):189-194.
[9] 胡廣平,,周華強(qiáng).基于Lab空間的圖像全息數(shù)字水印算法[J].電子技術(shù)應(yīng)用,,2014,40(4):59-62.
[10] WANG X Y,,ZHANG Y Q,,BAO X M. A novel chaotic image encryption scheme using DNA sequence operations[J].Optics and Lasers in Engineering,2015,,73:53-61.
[11] Wang Xingyuan,,F(xiàn)eng Le,Zhao Hongyu.Fast image encryption algorithm based on parallel computing system[J].Information Sciences,,2019,,486:340-358.
[12] HUA Z,ZHOU Y.Image encryption using 2D Logistic-adjusted-Sine map[J].Information Sciences,,2016,,339:237-253.
[13] HUA Z,JIN F,,XU B,,et al.2D Logistic-Sine-coupling map for image encryption[J].Signal Processing,2018,,149:148-161.
[14] 許爽,,王偉,蘇玉.基于雙向擴(kuò)散機(jī)制融合偽隨機(jī)數(shù)同步生成器的快速圖像加密算法研究[J].科學(xué)技術(shù)與工程,,2014,,14(7):45-50.
[15] 徐揚(yáng),黃迎久,,李海榮.一個(gè)切換Lorenz混沌系統(tǒng)在圖像加密中的應(yīng)用[J].包裝工程,,2018(5):179-184.
[16] 張勇.混沌數(shù)字圖像加密[M].北京:清華大學(xué)出版社,2016.
[17] OZKAYNAK F.Brief review on application of nonlinear dynamics in image encryption[J].Nonlinear Dynamics,,2018,,92(2):305-313.
[18] 吳世忠,祝世雄,,張文政.應(yīng)用密碼學(xué):協(xié)議,,算法與C源程序[M].北京:機(jī)械工業(yè)出版社,2014.
[19] ZHU C X,LIAO C L,,DENG X H.Breaking and improving an image encryption scheme based on total shuffling scheme[J].Nonlinear Dynamics,,2013,71(1-2):25-34.
作者信息:
曾 珂,,禹思敏,,胡迎春,張澤清
(廣東工業(yè)大學(xué) 自動(dòng)化學(xué)院,,廣東 廣州510006)