陳 莊,于 溯,羅 頌,蔡定雯
(重慶理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,重慶 400054)
隨著云計(jì)算的飛速發(fā)展,越來(lái)越多的企業(yè)及個(gè)人傾向于將數(shù)據(jù)上傳至云端存儲(chǔ),這使得互聯(lián)網(wǎng)中存儲(chǔ)的數(shù)據(jù)量以指數(shù)級(jí)增長(zhǎng),在如此龐大數(shù)據(jù)量的背景下,個(gè)人數(shù)據(jù)的隱私安全問題便日益凸顯,對(duì)于數(shù)據(jù)保護(hù)的意識(shí)及相關(guān)措施手段已然提上議程。在手持終端設(shè)備的不斷革新下,人們?cè)桨l(fā)容易地去獲得一張高分辨率圖片,而圖像文件往往蘊(yùn)含著大量的個(gè)人信息,因此,如何保證在云環(huán)境下私有圖像安全地在網(wǎng)絡(luò)中傳輸與存儲(chǔ)已然成為亟需解決的問題。圖像文件因其本質(zhì)的空間有序、相關(guān)性強(qiáng)及冗余度高等特點(diǎn)致使單一使用傳統(tǒng)數(shù)據(jù)流的加密算法如RSA、DES與AES等難以勝任。隨著研究人員不斷的深入探索,一些新的圖像加密算法被提出[1-5],其中以利用混沌系統(tǒng)自身良好的偽隨機(jī)性與DNA編碼對(duì)于大規(guī)模數(shù)據(jù)處理的便利性較為普遍?;煦缦到y(tǒng)因其自身軌道不可預(yù)測(cè)性及對(duì)初始數(shù)值與控制參數(shù)極為敏感等特性進(jìn)而被廣泛地應(yīng)用于圖像加密領(lǐng)域[6-8]。一維混沌系統(tǒng)運(yùn)算簡(jiǎn)單,速度較快但密鑰空間較小,單一地使用這種方法對(duì)圖像進(jìn)行加密將會(huì)造成安全性低、易破解等缺陷。DNA編碼技術(shù)常與混沌系統(tǒng)進(jìn)行組合對(duì)明文圖像進(jìn)一步處理,研究表明其在圖像加密領(lǐng)域具有良好應(yīng)用前景[9-11]。然而,許多使用DNA編碼技術(shù)的圖像加密算法固定了編碼規(guī)則,對(duì)于僅有的8種編碼規(guī)則,對(duì)其在加密系統(tǒng)中進(jìn)行應(yīng)用極容易被逐一遍歷,往往造成編碼結(jié)果中某種元素出現(xiàn)的頻率較高,在對(duì)抗統(tǒng)計(jì)學(xué)分析及窮舉等手段時(shí)不具備較為良好的效果。近年來(lái),有部分學(xué)者嘗試在編碼中融合一些機(jī)制來(lái)改善傳統(tǒng)DNA編碼選用固定規(guī)則所帶來(lái)的影響。Aditya等人[12]在其提出的加密流程中添加了額外的混沌映射用于隨機(jī)選擇DNA編碼規(guī)則,有效地避免了多次單一編碼規(guī)則多次用來(lái)加密不同圖像的影響。類似地,Zheng等人[13]通過使用一種改進(jìn)的二維Logistic混沌系統(tǒng),通過相應(yīng)的映射使其產(chǎn)生的序列能夠覆蓋8種編碼規(guī)則進(jìn)而實(shí)現(xiàn)由算法本身去選擇編碼規(guī)則。文獻(xiàn)[14]引用了一種DNA循環(huán)運(yùn)算的混淆矩陣生成方法,通過向其定義的函數(shù)傳入核酸基底與迭代參數(shù),從而循環(huán)產(chǎn)生DNA混淆矩陣,其控制參數(shù)由SHA-512算法生成。Zhu等人[15]根據(jù)混沌序列,在8種編碼規(guī)則中通過運(yùn)算使得在不同位置的像素采用不同的DNA編碼規(guī)則,其效果表現(xiàn)良好。
上述所介紹的圖像加密方法歸根結(jié)底屬于單一的對(duì)稱加密,即加密與解密使用共同的密鑰,這將導(dǎo)致其在某種環(huán)境下處于相對(duì)安全的狀態(tài);密鑰通常由密鑰管理中心統(tǒng)一管理,安全性依賴于運(yùn)營(yíng)商,當(dāng)密鑰管理中心出現(xiàn)安全隱患,極有可能造成所有用戶的密鑰外泄,當(dāng)涉及到端到端之間的共享時(shí)則會(huì)出現(xiàn)密鑰配送問題;且目前在DNA編碼規(guī)則的選取上較多地使用混沌系統(tǒng)及哈希算法等隨機(jī)進(jìn)行選擇,其本質(zhì)上仍使用某一種編碼規(guī)則。為此,本文提出了一種在編碼過程中應(yīng)用多種規(guī)則,依據(jù)相鄰間像素差異進(jìn)行跳變選擇的自適應(yīng)DNA編碼方法,通過自適應(yīng)編碼DNA編碼使得傳統(tǒng)編碼后原酸分布較為集中的問題得以改善;利用國(guó)產(chǎn)加密算法SM3控制Lorenz系統(tǒng)的初始值,使用非對(duì)稱加密算法SM2對(duì)初始密鑰進(jìn)行二次加密并生成密文QR碼;后引用了盲水印技術(shù)將密文QR碼鑲嵌至密文圖像中,在保證圖像加密效果的前提下解決了端到端傳輸間密鑰配送的問題。
混沌運(yùn)動(dòng)是一種確定性非線性系統(tǒng)特有的復(fù)雜運(yùn)動(dòng)形態(tài),同時(shí)也是一種不穩(wěn)定的有限定常運(yùn)動(dòng),但并非是一味地靜止、周期運(yùn)動(dòng)或準(zhǔn)周期運(yùn)動(dòng)而是一種始終局限與有限區(qū)域、軌道永不重復(fù)且形態(tài)復(fù)雜的運(yùn)動(dòng)。本文將使用三維Lorenz映射用于圖像像素置亂。
Lorenz較常見的一維混沌系統(tǒng)具有更復(fù)雜的運(yùn)算方式,同時(shí)每次迭代將產(chǎn)生三組數(shù)值,且其初始參數(shù)多可合并共同視為密鑰,極大地?cái)U(kuò)張了密鑰空間[11]。
1.2.1 DNA編碼
常用的DNA序列是使用一串字母來(lái)表示真實(shí)的或者假設(shè)的攜帶基因信息的DNA分子的一級(jí)結(jié)構(gòu),分別由腺嘌呤(Adenine)、胞嘧啶(Cytosine)、鳥嘌呤(Guanine)與胸腺嘧啶(Thymine)組成,記為A、C、G與T。
在二進(jìn)制數(shù)中使用每相鄰兩位來(lái)表示一種堿基,則可以得到4的階乘項(xiàng)24種編碼方式,Watson-Crick有關(guān)DNA雙螺旋結(jié)構(gòu)的理論中限定了堿基互補(bǔ)配對(duì)原則[16],即A與C互補(bǔ),G與T互補(bǔ),因此有效的編碼方案僅其中8種,如表1所示。
表1 DNA編碼
鑒于傳統(tǒng)的編碼方式較易導(dǎo)致某種編碼元素出現(xiàn)的頻率過高,本文將常用的DNA編碼表劃分為兩個(gè)相互獨(dú)立的子表A與子表B,如表2與表3所示,供文本文所提出的自適應(yīng)DNA編碼與解碼使用。
表2 DNA編碼子表A
表3 DNA編碼子表B
1.2.2 自適應(yīng)DNA編碼
灰度圖像的像素值范圍在0~255之間,常規(guī)的DNA編碼是將某點(diǎn)像素值轉(zhuǎn)為八位二進(jìn)制從而對(duì)每?jī)晌欢M(jìn)制按照事先選擇好的編碼規(guī)則進(jìn)行編碼,由圖1可以看出灰度值為“208”選擇編碼種類別“1”的編碼表經(jīng)編碼后的結(jié)果為“T,G,A,A”。
圖1 選定規(guī)則DNA編碼
表4中對(duì)灰度Lena圖進(jìn)行DNA編碼后的元素進(jìn)行了統(tǒng)計(jì),通過表中展現(xiàn)的數(shù)據(jù)可以發(fā)現(xiàn)“T”與“C”的數(shù)量比例較大,“A”的數(shù)量占比較小,僅有17.78%。
表4 Lena圖DNA編碼統(tǒng)計(jì)
因此,為了改善傳統(tǒng)的DNA編碼方式在編碼后的元素分布情況上比例較不均勻的缺陷,本文通過公式(2)對(duì)像素點(diǎn)進(jìn)行自適應(yīng)編碼規(guī)則選取,其定義如下:
(2)
式中:s為A或B碼表(根據(jù)加密算法中子流程進(jìn)行選定)中的編碼規(guī)則序號(hào),mod為取模運(yùn)算;將轉(zhuǎn)換為二進(jìn)制的像素點(diǎn)每相鄰兩位進(jìn)行分組記為Pi,i∈(1,H×W×4],H、W為原始矩陣大小,對(duì)于首輪迭代,可傳入初始s∈[1,4],在本文中設(shè)置s=1,后續(xù)的s將在計(jì)算中動(dòng)態(tài)變化。由此可動(dòng)態(tài)選擇當(dāng)前相鄰兩位二進(jìn)制數(shù)的編碼規(guī)則,依據(jù)編碼表即可得到編碼后的元素。圖2給出了利用A碼表進(jìn)行自適應(yīng)編碼的過程。
圖2 自適應(yīng)DNA編碼過程
對(duì)進(jìn)行自適應(yīng)DNA編碼后的元素進(jìn)行統(tǒng)計(jì),如表5所示,經(jīng)編碼后的元素均衡,且所占比例均為25%左右。
表5 Lena圖自適應(yīng)DNA編碼統(tǒng)計(jì)
1.2.3 DNA異或運(yùn)算
因DNA編碼技術(shù)在各學(xué)科領(lǐng)域不斷被應(yīng)用,其有關(guān)運(yùn)算法則相繼被提出,其中以DNA異或運(yùn)算使用較為廣泛。本文中應(yīng)用了DNA異或?qū)幋a后的像素矩陣進(jìn)行處理,DNA異或運(yùn)算法則見表6[1]。
表6 DNA異或
數(shù)字水印技術(shù)的概念由Schyndel等人[17]提出,隨著研究人員的不斷探索與嘗試,其在版權(quán)保護(hù)等方面的應(yīng)用展現(xiàn)了較好的效果。文獻(xiàn)[18]中利用了離散小波變換與奇異值分解等方法對(duì)圖像嵌入水印,由于其嵌入的水印為有效的明文信息,故在保護(hù)水印內(nèi)容的過程中使用了Arnold變換對(duì)水印進(jìn)行加密,但因Arnold屬于周期性變換即在經(jīng)過某次變換后將得到原始圖像,其安全性欠佳。在本文所提算法中QR碼存儲(chǔ)的是經(jīng)過二次加密后的密文,其安全性由SM2非對(duì)稱加密算法保證,因此不需要對(duì)水印進(jìn)行多層級(jí)Arnold變化,降低了運(yùn)算復(fù)雜度的同時(shí)也保證了密鑰的安全,其簡(jiǎn)化后的算法如圖3所示。
圖3 水印嵌入算法
為了加強(qiáng)和規(guī)范密碼的應(yīng)用和信息安全管理,促進(jìn)密碼與信息事業(yè)的發(fā)展與保障網(wǎng)絡(luò)與空間的信息安全,我國(guó)推出了一系列自主研發(fā)的商用密碼算法,本文將引用SM2與SM3算法作為非對(duì)稱加密算法與散列值的產(chǎn)生。
1.4.1 SM2橢圓曲線公鑰密碼算法
SM2是國(guó)家密碼管理局發(fā)布的橢圓曲線公鑰密碼算法,在我國(guó)商用公鑰密碼技術(shù)標(biāo)準(zhǔn)體系中已經(jīng)被用來(lái)直接替代了RSA密碼算法,相比于RSA算法其耗時(shí)更低且內(nèi)存和資源占用較小。本文中SM2算法用于對(duì)圖像加密的初始密鑰進(jìn)行二次加密,其示意圖如圖4所示。
圖4 SM2算法應(yīng)用圖
1.4.2 SM3密碼雜湊算法
SM3密碼雜湊算法在隨機(jī)數(shù)生成與數(shù)字簽名與驗(yàn)證有極為廣泛的應(yīng)用,安全性及生成效率與國(guó)際標(biāo)準(zhǔn)SHA-256相當(dāng),其輸出值為256 b的雜湊值,在本文所提算法中將原始圖片R、G、B通道分離分別產(chǎn)生三組散列值,各自分為32組子序列后經(jīng)公式(3)與初始值結(jié)合生成Lorenz控制參數(shù)。
(3)
本文所提出的加密算法主要應(yīng)用Lorenz混沌系統(tǒng)與自適應(yīng)DNA編碼及其異或運(yùn)算法則對(duì)原圖像中像素進(jìn)行置換通過得到密文圖像,整體加密框架如圖5所示。
圖5 加密流程圖
加密流程如下:
(1) 讀取明文圖像I,取H、W、C分別為原始圖像的高、寬與通道數(shù);將其分解為R、G、B三通道,分別由SM3算法生成相應(yīng)的散列值序列,記為Rhash、Ghash與Bhash;然后利用式(3)生成Lorenz系統(tǒng)的控制參數(shù)x0、y0與z0,通過迭代產(chǎn)生三組混沌序列CR、CG、CB。
(2) 將原始圖片I的三通道轉(zhuǎn)化尺寸為H×W×8二進(jìn)制數(shù)組,同時(shí)將Rhash、Ghash與Bhash三組散列值序列每8 b分塊循環(huán)迭代H×W次形成混淆矩陣MR、MG、MB后分別使用表2所提供的子碼表A進(jìn)行自適應(yīng)DNA編碼,令其編碼后的矩陣分別記為Rdna、Gdna、Bdna與MRdna、MGdna、MBdna。
(3) 使用1.2.3中所引用的DNA異或算法對(duì)編碼后的原始圖像與混淆矩陣進(jìn)行運(yùn)算,其結(jié)果利用表3中所提供的子碼表B進(jìn)行自適應(yīng)解碼產(chǎn)生矩陣Rxor、Gxor、Bxor。
(4) 利用Lorenz所產(chǎn)生的三組混沌序列對(duì)Rxor、Gxor、Bxor進(jìn)行三輪比特位異或運(yùn)算,將結(jié)果矩陣合并為三維數(shù)組,即得到加密后的密文圖像。
(5) 公私鑰由SM2算法產(chǎn)生,對(duì)本文中的Lorenz系統(tǒng)控制參數(shù)與自適應(yīng)DNA編碼的軌跡使用公鑰進(jìn)行加密,其密文為256 b字符串,通過QR碼算法生成搭載加密信息的QR碼后使用1.3中提及到的水印嵌入算法將其嵌入至密文圖像中,即得到最終的加密圖像。
解密算法為加密算法的逆運(yùn)算,此處將不再贅述。
本文所提出的加密算法在CPU為Intel Core I7、RAM為8 GB的硬件環(huán)境下使用Matlab R2019a在Mac OS平臺(tái)進(jìn)行仿真實(shí)驗(yàn),測(cè)試圖像來(lái)源于USC-SIPI數(shù)據(jù)集中大小為512×512的6組圖片,QR碼大小選取128×128;加密時(shí)初始參數(shù)x0、y0、z0分別為10.000 223 05、6.125 699 00、20.114 541 80。加密前后情況的對(duì)比如圖6所示。
圖6 圖像加密與還原測(cè)試
圖7展示了對(duì)密鑰進(jìn)行SM2非對(duì)稱加密后所生成的密文QR碼及其嵌入與提取情況。
圖7 密鑰QR碼嵌入流程
對(duì)所提出加密算法進(jìn)行安全性分析,主要包括窮舉攻擊分析、統(tǒng)計(jì)學(xué)攻擊分析、差分攻擊分析、抗剪裁攻擊分析等部分。
4.1.1 密鑰空間分析
在本文中,加密所使用的密鑰包括Lorenz映射中的x0、y0、z0與自適應(yīng)DNA編碼中的跳變軌跡,自適應(yīng)DNA編碼根據(jù)原始圖像的像素自動(dòng)進(jìn)行跳變編碼,單一像素在編碼后會(huì)產(chǎn)生4位DNA元素,則每?jī)晌欢M(jìn)制其可能的編碼結(jié)果有4種。在計(jì)算精度為10-16的條件下,輸入原始明文圖像大小為512×512,可以計(jì)算出此時(shí)密鑰空間為1016×1016×1016×107≈1055,由此可見該算法具有足夠大的密鑰空間且密鑰會(huì)隨著圖像的增加而擴(kuò)大,對(duì)密碼分析者進(jìn)行的窮舉攻擊有很好的抵抗性。
4.1.2 密鑰靈敏度分析
為了測(cè)試該加密算法對(duì)密鑰輕微變化的敏感性,現(xiàn)用不同的初始參數(shù)對(duì)原始Female圖像進(jìn)行加密與解密,對(duì)于兩種密鑰鎖解密出的圖像如圖8所示。
圖8 密鑰敏感性測(cè)試
在圖8中(a)為Female加密圖像,(b)為使用正確密鑰x0=10.000 223 05、y0=6.125 699 00、z0=20.114 541 80進(jìn)行解密后的圖像,(c)為使用錯(cuò)誤密鑰用x0=10.000 541 79所解密的圖像。由圖可知,僅將密鑰進(jìn)行微小的改變則解密出的圖像仍與加密圖像類似,無(wú)法區(qū)分圖像的內(nèi)容。由此可見該加密算法對(duì)于密鑰的改變具有很強(qiáng)的敏感性,可以較好地抵御密碼分析者窮舉密鑰來(lái)破解加密算法。
4.2.1 圖像灰度直方圖分析
圖像直方圖代表了圖像中各像素分布的密布,一個(gè)優(yōu)良的加密算法應(yīng)使得密文圖像有用較為平滑、均衡的像素分布從而能夠更好地抵御統(tǒng)計(jì)分析攻擊。在圖9中(a)、(b)、(c)為明文Lena圖像的R、G、B三個(gè)通道的像素統(tǒng)計(jì)直方圖,(d)、(e)、(f)對(duì)應(yīng)加密后的密文圖像三個(gè)通道的像素直方圖。
圖9 加密前后圖像灰度直方圖
從圖9中可以看出三幅圖片的直方圖對(duì)比情況,原始圖像的直方圖分布情況較為集中,使用本文方法對(duì)圖片進(jìn)行加密后的直方圖分布較為均勻,整體呈平滑趨勢(shì);密碼攻擊者很難從直方圖中獲取有效信息,從而進(jìn)一步提升了圖像的安全性。
4.2.2 信息熵分析
圖像的信息熵用來(lái)表示一幅圖像包含的信息數(shù)量,也可以用來(lái)度量圖像灰度值的分布。若圖像包含L種灰度值mi(i=0,1,…,L-1),其中各灰度值出現(xiàn)的概率定義為p(mi)(i=0,1,…,L-1),則根據(jù)Shannon定理可得圖像的信息量為
(4)
式中:H為圖像的信息熵。當(dāng)圖像中各灰度值出現(xiàn)的概率相同時(shí),使得圖像的信息熵達(dá)到最大,對(duì)于一幅理想的隨機(jī)圖像,其信息熵等于8。表8給出了使用本文方法加密后得到的密圖信息熵及原始圖像信息熵的對(duì)比情況。
表8 信息熵對(duì)比
從表8中可以看出,對(duì)于原始Lena圖像其三個(gè)分量的信息熵大小都未接近8,使用本文加密方法后的Lena圖像其三個(gè)分量的信息熵已經(jīng)非常接近理想值,故加密后的密文圖像擁有更好的隨機(jī)性,使得加密后的圖像信息更為混亂、無(wú)序,從而達(dá)到良好的加密效果。
4.2.3 相關(guān)性分析
對(duì)于一幅原始的圖像,水平、垂直與對(duì)角間的像素都存在著很強(qiáng)的相關(guān)性,對(duì)于圖像的加密其目的則是破壞像素之間的這種強(qiáng)相關(guān)性,致使原始圖像變?yōu)橐环N類似于噪聲的且相關(guān)性極弱或幾乎沒有相關(guān)性的圖像。為了測(cè)試本文中所使用的加密算法對(duì)原始圖像各像素之間相關(guān)性的置亂性能,首先從原始圖像與加密后的密文圖像中分別隨機(jī)抽取1 000~3 000對(duì)像素,然后由公式(5)分別計(jì)算原始圖像與密文圖像的水平、垂直與對(duì)角像素的相關(guān)性。
(5)
式中:x、y表示相鄰的兩個(gè)像素點(diǎn),cov(x,y)代表協(xié)方差,D(x)、E(x)分別表示方差與均值。
表9給出了圖像加密前后的水平、垂直、對(duì)角像素相關(guān)性數(shù)值,可以看出加密前的圖像其各方位的像素相關(guān)性數(shù)值較大,數(shù)值接近于1。對(duì)于良好的圖像加密算法其所生成的加密圖像各方為像素相關(guān)性數(shù)值都應(yīng)趨近于0使得密文圖像不能被肉眼所識(shí)別出原始圖像的信息,在引入自適應(yīng)DNA編碼及運(yùn)算技術(shù)之后,各方位相鄰像素相關(guān)性較文獻(xiàn)[1]中有所降低,個(gè)別角度比文獻(xiàn)[19]與文獻(xiàn)[11]效果較好,因此使用本文方法能夠很好地降低密文圖像各方位像素的相關(guān)性。
表9 原始圖像與加密圖像中相鄰像素相關(guān)性對(duì)比
圖10~12給出了原始圖像與加密后圖像各通道三個(gè)方位像素的相關(guān)性分布情況,可以看出無(wú)論是在水平、垂直還是對(duì)角方位,原始圖像的像素相關(guān)性分布均呈線性分布。這表明原始圖像在其三個(gè)方位上的像素都具有較強(qiáng)的相關(guān)性,容易從圖像與數(shù)據(jù)中找到原始圖像相鄰像素之間的關(guān)系。由各圖中(d)、(e)、(f)子圖可以看出,加密后的圖像在其各個(gè)方位上的像素相關(guān)性分布較為均勻,據(jù)此可得出密文圖像相鄰像素的相關(guān)性較弱,因此使用本文加密方法能夠有效抵御像素相關(guān)性統(tǒng)計(jì)攻擊。
圖10 加密圖像水平像素相關(guān)性
圖11 加密圖像垂直像素相關(guān)性
圖12 加密圖像對(duì)角像素相關(guān)性
差分攻擊是通過比較明文與加密后所生成的密文的變化來(lái)對(duì)加密算法進(jìn)行攻擊,在圖像加密中,攻擊者通常會(huì)對(duì)原始圖像作細(xì)微改動(dòng),然后使用攻擊目標(biāo)算法對(duì)原始圖像與改動(dòng)后的圖像進(jìn)行加密,進(jìn)而分析兩張不同圖像加密后的差別,尋找原始圖像與加密圖像之間的關(guān)聯(lián)。使用差分攻擊手段的攻擊者一般會(huì)對(duì)原始圖像僅修改一個(gè)像素,觀察其加密后的變化,若微小的改變就足以使加密圖像在擴(kuò)散和混亂效應(yīng)中引起嚴(yán)重的改變,則差分攻擊的效率將會(huì)極大降低,幾乎等同于無(wú)效。為了測(cè)試本文使用的加密方法中一個(gè)像素改變所引起的效應(yīng),引入像素改變率(Number of Pixels Change Rate,NPCR)與一致平均改變強(qiáng)度(Unified Average Changing Intensity,UACI)兩種衡量方法,其定義見公式(6)~(8):
(6)
(7)
(8)
式(6)~(8)中:C1、C2表示明文改變前后相對(duì)應(yīng)的密文像素值,M與N代表C1與C2兩幅圖片的寬度和高度。
表10分別給出了文獻(xiàn)[1]與文獻(xiàn)[19]以及本文所提算法加密后圖像三個(gè)分量的NPCR及UACI數(shù)值。由NPCR的定義可知,其數(shù)值越大表示加密算法的安全性能越好,表10中數(shù)據(jù)顯示本文使用的加密算法在各分量上的NPCR值較兩參考文獻(xiàn)更為接近于100%,表明該方案對(duì)于明文圖像的敏感性較高,且UACI值也較更接近于理想值33%,由此證明該方法可以抵御攻擊者進(jìn)行差分攻擊的能力較強(qiáng)。
表10 NPCR與UACI
圖像文件在網(wǎng)絡(luò)的傳輸中很容易受到各種因素導(dǎo)致圖像內(nèi)部像素丟失,造成圖像數(shù)據(jù)的不完整。為了測(cè)試本文加密方法對(duì)于抗數(shù)據(jù)丟失性能,選擇加密后的密文Lena圖像在不同位置的剪裁后再進(jìn)行解密。圖13展示了加密后Lena圖像在丟失部分?jǐn)?shù)據(jù)后的水印提取圖像及還原圖像,可以看出即使密文圖像經(jīng)過剪裁過后丟失部分像素,在解密算法中也能夠很好地還原出圖像原始的信息,且提取出的QR水印仍可正確識(shí)別,故該算法能較好地抵御在網(wǎng)絡(luò)環(huán)境傳輸中不穩(wěn)定因素導(dǎo)致的圖像中的像素丟失。
圖13 抗剪裁測(cè)試
本文提出了一種利用國(guó)產(chǎn)密碼算法與自適應(yīng)DNA編碼相結(jié)合的混合彩色圖像加密方案,采用國(guó)密SM2與SM3算法使得傳統(tǒng)的圖像加密算法密鑰配送問題得到了解決,通過改進(jìn)DNA編碼技術(shù)使得原有DNA編碼各元素出現(xiàn)頻率較為集中等現(xiàn)象得到改善。通過DNA異或算法進(jìn)一步對(duì)原始圖像進(jìn)行混淆以提高安全性能,最后利用不同的編碼表對(duì)其進(jìn)行解碼即得到密文圖像。實(shí)驗(yàn)結(jié)果與安全性分析可以看出該加密算法效果較好,安全性能較高,對(duì)于密鑰的改變極為敏感且密鑰空間較大。經(jīng)加密后的密文圖像直方圖較為均勻,可以更好地隱藏原始圖像內(nèi)的信息,且水平、垂直、對(duì)角三方位的相鄰像素間關(guān)聯(lián)性較低,具有良好的抵御窮舉攻擊、統(tǒng)計(jì)攻擊、差分攻擊的性能;但隨著圖像尺寸及像素分辨率的增高,算法運(yùn)算復(fù)雜度會(huì)相對(duì)增加。本文未來(lái)的主要工作將圍繞優(yōu)化算法時(shí)空間復(fù)雜度、增強(qiáng)工作效率展開。