?

基于新型時空混沌系統的隱私圖像加密算法

2024-02-29 04:39杜鵬崔琦王思翔董有恒李暉
計算機工程 2024年2期
關鍵詞:明文控制參數加密算法

杜鵬,崔琦,2,王思翔,董有恒,李暉

(1.西安電子科技大學網絡與信息安全學院,陜西 西安 710126;2.國家市場監督管理總局信息中心,北京 100820;3.中國農業發展銀行信息科技部,北京 100045;4.北京電子科技學院密碼科學與技術系,北京 100070)

0 引言

隨著通信技術的發展,圖像由于其直觀性和信息的豐富性越來越成為信息傳輸中的重要載體,特別是在社交網絡和互聯網中,圖像不僅加快了信息傳播的速度,也易于使人理解和識別。然而,隨著傳輸圖片的增多,很多存有隱私信息的圖像也漸漸出現在互聯網中,如個人的肖像照、證件照以及一些存有重要信息的報告圖片等。不法分子很容易從中獲取個人信息,甚至用于破解人臉識別系統等[1],因此在存儲或傳輸時對于隱私圖像進行加密處理顯得尤為必要?,F有的傳統加密算法,如AES 等分組密碼算法,主要是針對文件進行加密,由于圖像中信息存在大量冗余,加解密時還需分組然后重構圖像,影響加密效率,這大大限制了這類算法在圖像加密的應用[2],傳統序列密碼算法RC4 已經被證明不太安全[3],因此也不適用于進行隱私圖像加密,故亟需設計一類新型圖像加密算法,該類算法應該高效且安全。

混沌系統是一類具有初值敏感性、遍歷性以及長期不可預測性的確定非線性系統[4]。這類系統和加密算法中擴散性和隨機性的要求十分吻合,因此大量基于混沌的圖像加密算法被提出。文獻[5]基于細胞神經網絡超混沌系統和Logistic 映射提出一種高效率的視頻圖像加密算法,文獻[6]利用新型三維離散混沌映射實現了對圖像的擴散和混淆,文獻[7]結合混沌映射和基因編碼技術實現了對醫療圖像的加密。然而,上述加密算法用到的混沌映射均是基于單一混沌系統,該類系統每次迭代僅能輸出一個元素,輸出密鑰流的效率較慢,同時混沌系統在數字系統中運行時存在動力學特性退化的問題,因此并不能很好地適用于隱私圖像加密。

耦合映像格(CML)的出現,大幅改善了上述問題[8]?;贑ML 的時空混沌系統,利用格子之間的耦合關系相互擾動,有效地削弱了動力學退化的問題,同時CML 中的各個格子同步迭代并行運行,可以在短時間內產生大量的混沌序列,因此相比于單一混沌系統,基于CML 的時空混沌系統擁有更強的混沌特性,同時提高了生成序列的效率,也更適合進行隱私圖像加密[9]?;跁r空混沌系統的圖像加密算法逐漸成為混沌圖像加密的研究熱點,其中包括基于交叉耦合映像格的時空混沌系統設計出的圖像加密算法[10]、基于非線性耦合映像格[11]以及基于分數階混沌系統的耦合映像格[12]等。然而,根據相關的對比分析[4,13],上述所設計的時空混沌系統往往存在弱混沌的現象,比如系統分岔圖存在周期窗口或遍歷性不好的問題,同時輸出分布不均,易受到相空間重構或者回歸映射分析攻擊等針對混沌加密算法的攻擊。同時,某些密鑰固定的基于時空混沌的加密算法極易被選擇明/密文破解,文獻[14]提出一種針對置換-替換網絡的混沌圖像加密破解方法,解決了該類的12 種加密算法。

本文設計一種新型時空混沌系統,該混沌系統可解決單一混沌映射輸出數據有限的問題,削弱動力學退化的影響,在控制參數可取范圍內系統的輸出不存在周期窗口,擁有較好的遍歷性和隨機性,輸出序列可覆蓋整個值域?;谠撔滦蜁r空混沌系統提出隱私圖像加密算法,以解決混沌圖像加密圖像密鑰固定而無法抵抗選擇明/密文攻擊的問題,同時添加動態替換盒和兩次異或來提高算法的安全性。

基于上述研究以及存在的問題,本文的主要貢獻和創新點如下:

1)基于Henon 映射和CML 設計了一種新型時空混沌系統,即基于Henon 映射的置亂耦合映像格系統(PRSCML-Henon)。該混沌系統相比于單一的Henon 映射以及傳統的CML 系統擁有更強的混沌特性。此外,PRSCML-Henon 在本文提到的近兩年的新型時空混沌系統中,混沌特性較強,可生成隨機性更好的混沌序列,適合應用于隱私圖像加密算法。

2)基于PRSCML-Henon 系統設計了一種有效且可靠的隱私圖像加密算法。該加密算法有如下特點:種子密鑰與明文相關,在每次加密不同的明文圖像時,生成的種子密鑰和密鑰流不同,因此可有效抵抗選擇明/密文攻擊;添加了非線性的替換操作,利用密鑰流來生成替換盒,該替換盒會隨著種子密鑰的變化而發生變化,因此在每次加密不同明文時生成的替換盒也是不同的,可提高算法的安全性。

3)進行了兩次與明文圖像等長的異或操作,有效隱藏明文圖像和密鑰流本身的統計特性。

1 預備知識與設計原理

1.1 Henon 映射

Henon 映射是由法國數學家HENON 于1976 年提出,作為洛倫茨模型的龐加萊截面的簡化模型[15-16]。該映射為離散的二維映射,其數學表達式如下:

其中:t代表時間維度,即迭代次數;x和y代表Henon映射的輸出;a和b代表映射的控制參數,當a=1.4、b=0.3 時,映射處于混沌狀態,輸出的序列具有較好的隨機性和長期不可預測性。

1.2 基于耦合映像格的時空混沌系統

傳統的耦合映像格是由一個個格子構成的,每個格子中包含一個映射進行迭代,通常稱之為底層映射,相鄰格子之間通過耦合聯系在一起。當底層映射為混沌映射時,便構成了時間和空間上都可處于混沌狀態的時空混沌系統[17]?;隈詈嫌诚窀竦臅r空混沌系統數學表達式如下:

其中:i(i=1,2,…,L)代表格子索引;t代表迭代次數;L為系統總的格子數;代表第i個格子在t次迭代時的當前值,需要注意的是,耦合映像格的邊界一般默認為是周期的,即最左側格子和最右側格子看作是相鄰的;ε(ε∈(0,1))為耦合強度;函 數f代表底層映射。傳統的基于CML 的時空混沌系統,底層映射一般為簡單的Logistic 映射,表達式如下:

其中:μ(μ∈(3,4))為控制參數,當μ>3.67 時該映射處于混沌狀態,但當控制參數在3.84 附近時存在部分周期窗口,即弱混沌現象。

1.3 初等元胞自動機

元胞自動機(CA)最初是由文獻[18]提出的,用來模擬自然界中的自我復制現象,是一個在空間和時間上都離散的動力學系統。一個典型的CA 由元胞、元胞空間、元胞鄰居、迭代規則等構成。初等元胞自動機(ECA)是其中最為簡單的一類元胞自動機[19]。ECA 的元胞空間是一維的,元胞鄰居僅包括與該元胞相鄰的兩個元胞,同時每個元胞的狀態僅有兩種,可以表示為“0”或“1”。某一元胞下一時刻的狀態由其本身和其元胞鄰居當前的狀態以及迭代規則所共同決定,ECA 與CML 類似,其邊界亦是周期的,ECA 的迭代過程可表示為布爾函數:

其中:i和t分別代表空間維度和時間維度;代表第i個元胞在第t次迭代時的狀態值;r為迭代規則;布爾函數fr的迭代結果是由迭代規則r所決定的。例如,當r=90 時,該布爾函數的迭代結果可表示為真值表,如表1 所示。

表1 布爾函數f90的迭代結果 Table 1 Iterative results of Boolean function f90

顯然,由表1 可知,f90的迭代結果即表格中的最后一列就是數字“90”的二進制表達方式。故對于ECA 來說,其共有256 種迭代規則,根據每種迭代規則所表現的不同動力學行為,可分為5 類:無效規則,固定點規則,周期規則,局部混沌規則和全局混沌規則。其中,全局混沌規則控制下的ECA,其迭代結果呈現出長周期和混沌特性,根據文獻[20],共有34 種全局混沌規則,如圖1 所示。

圖1 全局混沌規則 Fig.1 Global chaotic rules

由于ECA 是一類在時間和空間上均離散的動力學系統,并不存在動力學退化的問題,因此全局混沌規則控制下的ECA 其輸出的序列可以作為混沌系統的偽隨機擾動來削弱動力學退化的問題,以提高系統的混沌特性。

2 新型時空混沌系統及其特性

2.1 系統描述

本文所提出的新型時空混沌系統是基于Henon映射及CML 設計的。Henon 映射作為底層映射,其中一維作為輸出,另一維作為置亂耦合的控制信號,此外ECA 的輸出作為擾動以提高系統的混沌特性。該新型時空混沌系統,本文稱為基于Henon 映射的偽隨機置亂耦合映像格系統(PRSCML-Henon),該系統的數學表達式如式(5)~式(7)所示:

其中:i和t分別代表空間維度和時間維度;函數f代表Henon 映射,該映射的控制參數為常數a=1.4、b=0.3,使該映射處于混沌狀態;x*和y*為各個格子經過Henon 映射迭代一次的中間值。

其中:函數sort(y*)是對向量y*進行升序排列;Iy是升序排列后,原始元素的索引在升序排列后的亂序結果;x*則通過向量Iy實現了偽隨機置亂。

其中:ε為耦合強度,則將置亂后的中間值x**和y**進行耦合運算;mod 1 運算的目的是保留運算結果的小數部分;擾動p(i,Ct)由ECA 第t次迭代結果得到。

p(i,Ct)計算過程如下:

其中:Ct代表ECA 第t次迭代的結果,即各個元胞的狀態值構成的向量;i與式(7)中相等,此處代表元胞索引;函數bin 2dec 的目的是將二進制數轉化為十進制數;m為格子的中間位置索引;L為格子總數。因此,式(8)就是將ECA 迭代結果的中間32 bit 轉化為十進制數,并量化到(0,1)區間上得到擾動的絕對值;乘Ct(i)-0.5 的目的是使得每個格子雖然每次迭代時添加的擾動絕對值相同,但正負符號不同,且該擾動的符號是隨ECA 迭代偽隨機變化的。

PRSCML-Henon 系統利用Henon 映射的其中一維控制格子實現置亂,以加快能量傳遞速度,提高系統的混沌特性。同時,引入ECA 的輸出作為偽隨機擾動,進一步削弱了動力學退化的影響。需要注意的是,該新型時空混沌系統的輸出有兩維,其中,輸出x作為最終的輸出,而y作為中間參數不輸出。

2.2 混沌特性分析

為了凸顯本文提出的新型時空混沌系統設計的有效性,本節引入傳統的基于鄰近耦合的時空混沌系統CML 和單一Henon 映射進行對比分析。

2.2.1 分岔圖

分岔圖可以直觀地判斷混沌系統的非周期性、遍歷性等混沌特性。單一Henon 映射、傳統CML 系統以及PRSCML-Henon 系統的分岔圖如圖2 所示。

圖2 分岔圖Fig.2 Bifurcation diagram

圖2(a)~圖2(d)為單一Henon 映射不同控制參數下不同輸出對應的分岔圖。其中,圖2(a)和圖2(b)是控制參數b固定的條件下輸出隨a變化的分岔圖,顯然無論是輸出x還是y,當控制參數a<1.2 時,Henon 映射存在明顯的固定點和周期點,只有接近1.4 時,映射的非周期性和遍歷性才較好。與之對應,在圖2(c)和圖2(d)中,當控制參數a固定時,輸出隨b的變化也呈現同樣的趨勢,在b接近0.3 時,輸出所占據的值域范圍才較大,擁有較好的遍歷性。同時,由圖2(e)可知傳統的CML 由于底層映射為簡單的Logistic 映射,因此分岔圖在控制參數小于3.67 時存在明顯的周期窗口,只有在其接近于4 時才具備良好的遍歷性,即輸出可以充滿整個區間。

與上述情況不同,本文提出的新型時空混沌系統PRSCML-Henon,對于輸出x,無論控制參數a和b如何變化,在整個區間上都不存在固定點或者周期點,且輸出可以覆蓋整個值域[0,1],如圖2(f)和圖2(h)所示,而輸出y由于進行了排序運算,因此在控制參數較小時存在部分值無法取到,但y并不作為系統的輸出,而作為中間值使用,對后續生成序列的隨機性影響不大,因此出現這種情況是可接受的。

2.2.2 K 熵分析

Kolmogorov-Sinai 熵(簡稱K 熵)是用來衡量時空混沌特性強弱的重要參數[21],K 熵與系統中各個格子混沌映射的李雅普諾夫指數密切相關。K 熵分為K 熵密度和K 熵闊度,兩者的計算過程如下:

其中:λ+(i)代表由第i個格子生成序列所求得的正的李雅普諾夫指數,本文采用Wolf 法[22]求取,若λ+(i)為負值,則令其為0;L為系統的格子總數;h代表K 熵密度,能夠反映系統整體的混沌特性強度,h越大代表混沌特性越強;hhu代表K 熵闊度,即處于混沌狀態的格子數占比,其理想值為“1”。

為凸顯PRSCML-Henon 系統的優越性,引入除傳統CML 系統外新近(均為2022 年)提出的時空混沌系統作為對比,它們分別為:基于動態耦合強度和交叉耦合的改進型Tent-動態交叉耦合映像格系統(TDCCML)[23],基于雙參數分形排列向量和耦合映像格的時空混沌系統(DPFSV-CML)[24]。

上述4 類系統的K 熵密度和K 熵闊度分別如圖3 和圖4 所示。

圖3 K 熵密度Fig.3 K entropy density

圖4 K 熵闊度Fig.4 K entropy breadth

由圖3(a)可知,傳統CML 系統僅在控制參數大于3.67 時才存在正的K 熵密度,而與之對應的圖3(b)中,本文所設計的PRSCML-Henon 系統在整個控制參數區間上,其K 熵密度均大于0,而在圖3(c)和圖3(d)中,K 熵也只有在控制參數大于3.67 時才存在正值,這說明要使得系統TDCCML 和DPFSV-CML 處于混沌狀態,控制參數的可取范圍是有限的,同時由 圖3(d)可知,DPFSV-CML 系統的K 熵密度對耦合強度也十分敏感,耦合強度在0.5 附近時,K 熵較大,而在接近0 或1 時K 熵密度較小,對于TDCCML 和PRSCML-Henon 系統則不存在這種問題,兩種系統對耦合強度不敏感,在整個耦合強度區間上其K 熵密度的變化基本是一致的。進一步地,由 圖4(a)~圖4(d)可 知,傳 統CML 系 統、TDCCML 系統及DPFSV-CML 系統僅在控制參數大于3.67 時才存在理想值“1”,而PRSCML-Henon 系統的K 熵闊度在整個控制參數區間上均接近于“1”,也就是說大部分格子在任意控制參數下均處于混沌狀態。綜上所述,所提新型時空混沌系統PRSCMLHenon 的混沌特性不僅強于傳統CML 系統,而且還強于新提出的TDCCML 和DPFSV-CML 系統,可見置亂耦合和擾動的存在大幅增強了新型時空混沌系統的混沌特性,這為后續該系統作為密鑰流產生器提供了良好性能基礎。

3 隱私圖像加密算法

鑒于PRSCML-Henon 系統所具備的良好混沌特性,如非周期性和遍歷性以及混沌系統本身的初值敏感性,本文進一步基于該系統設計了一種隱私圖像加密算法。

該加密算法由4 個部分構成:種子密鑰生成,混沌系統初始化,密鑰流生成與量化以及圖像加解密。

1)種子密鑰生成

首先利用SHA-256 計算明文的哈希值,然后將該哈希值與用戶設置的256 bit 秘密密鑰相異或,得到了256 bit 的種子密鑰:

其中:HASH 函數代表SHA-256 算法,該算法保證了計算的單向性,使得敵手無法通過HASH 值得到明文的有效信息,同時該過程使得種子密鑰與明文相關,使得選擇明/密文攻擊無效,提高了算法的安全性。此外,SHA-256 算法可以有效地將明文的微小變化反映出來,有效提高了算法的擴散性,K作為種子密鑰在加解密端通過秘密信道進行傳輸。

2)混沌系統初始化

PRSCML-Henon 系統需要初始化的值包括ECA的初值和迭代規則、置亂耦合映像格的初值、系統的初始迭代次數等。為了保證系統具備良好的混沌特性,令控制參數為固定值a=1.4、b=0.3,同時系統中格子總數和元胞總數均為256,與種子密鑰長度一致。

ECA 中各元胞的初值即為256 bit 的種子密鑰K,其迭代規則由K的Hamming 重量決定,計算過程如下:

其中:r代表全局混沌規則在圖1 中的索引,由于共有34 個不同的規則,此處進行模34 的運算,并加“1”,使r為1~34 的整數。

接著將K分為8 個32 bit 二進制數,并進行如下的量化:

其中:xi和yi代表各個格子的初值構成的向量;K(1:32)代表種子密鑰的第1~32位,以此類推,函數bin 2dec將二進制數轉化為十進制數。初始化上述4 個格子(第1、65、129、193 個格子)后,再由Henon 映射迭代初始化完成余下的格子,初始化過程如圖5所示。

圖5 各格子初始化過程Fig.5 Initialization process of each lattice

耦合強度ε由K的中間32 bit 決定,計算過程如下:

其中:函數bin 2dec 與式(15)中的作用相同。此外,算法還設置了初始迭代次數n0,它的值由K的中間10 bit 決定,計算過程如下:

顯然n0為區間[10,1 033]中的整數。系統在生成密鑰流前,會預先迭代n0次,并不輸出,以此來隱藏初始值,提高系統的安全性。

3)密鑰流生成與量化

系統初始化完成后,便迭代生成密鑰流,生成密鑰流的長度由明文圖像的大小所決定,一般圖像的存儲單元為無符號的8 bit 二進制數,假設明文圖像的存儲單元共有N個,則需要由PRSCML-Henon 系統迭代生成長度為3×N+256 的密鑰流。密鑰流共分為4 個部分,如圖6 所示。

圖6 密鑰流的構成Fig.6 Constitute of key stream

在圖6 中,初始異或和最終異或部分的密鑰流需要量化為無符號的8 bit 二進制數,量化過程如下:

其中:函數floor 的目的是向下取整;X為時空混沌直接輸出的在區間(0,1)上的序列;Y為量化后的用于異或的密鑰流。

4)隱私圖像加解密

與生成密鑰流的4 個部分相對應,對于隱私圖像的加密共分為4 個步驟:初始異或,替換,置換與最終異或,該流程如圖7 所示。

圖7 加解密流程Fig.7 Procedure of encryption and decryption

在圖7 中,初始異或和最終異或就是利用與明文圖像等長,且經過量化后得到的密鑰流進行簡單的按位異或運算。初始異或是利用密鑰流與明文圖像進行異或,而最終異或是將置亂后得到的中間值與密鑰流進行異或。

替換則是由密鑰流的替換部分生成替換盒,也叫S 盒,然后由該S 盒進行非線性的替換過程。S 盒的生成過程如下:

其中:KSSbox為密鑰流中的替換盒部分;sort 函數是對KSSbox進行升序排列,并得到其中元素升序排列后的亂序索引Ik,利用該索引向量減1 便能夠生成只含有0~255 整數的替換盒SSbox。該替換盒的輸入為初始異或后得到的無符號的8 bit 二進制數,該數加1 作為索引,輸出該索引對應下的替換盒中的元素,完成替換操作。

置換過程與置亂耦合過程與式(6)類似,利用密鑰流的置亂盒部分對其進行升序排列,得到亂序后的索引,利用該亂序索引實現對圖像存儲單元的亂序。

由于種子密鑰相同,加解密過程生成的密鑰流是完全相同的,因此解密過程與加密過程相對稱,此處不再贅述,需要注意的是,解密過程中使用的替換盒為式(19)生成的S 盒的逆。

4 加密結果與分析

為驗證該算法在隱私圖像加密中的有效性,使用示例體檢單和示例身份證圖像作為傳輸對象進行加解密,加解密的結果如圖8 和圖9 所示(彩色效果見《計算機工程》官網HTML 版,下同)。

圖8 體檢單加解密結果(灰度圖)Fig.8 The encryption and decryption of medical examination report(gray map)

圖9 身份證加解密結果(彩圖)Fig.9 Encryption and decryption results of identity card(color map)

由圖8 和圖9 可知,無論加密對象是體檢單類型的灰度圖,還是證件照類型的彩圖,利用本文算法均可以有效隱藏原始隱私圖像的信息,且加解密過程是無失真的。

為進一步驗證該加密算法的安全性和可靠性,本文將引入統計分析、安全性分析以及魯棒性分析。

4.1 統計分析

4.1.1 直方圖

直方圖可以直觀地判斷加密結果的有效性,密文的像素直方圖分布越均勻平滑,則說明加密質量越好。上述體檢單和身份證加密結果的直方圖如圖10 所示,其中,圖10(a)左圖為明文(體檢單),右圖為密文(體檢單),圖10(b)上為明文(身份證),下為密文(身份證)。

圖10 直方圖加密結果分析Fig.10 Analysis of histogram encryption results

圖10 中各個直方圖的橫坐標代表像素值,縱坐標代表當前像素值下的總像素數。其中對于彩圖,分別對紅綠藍三色通道進行了統計。由圖10 可知,無論加密的隱私圖像是灰度圖還是彩圖,密文的直方圖分布總是均勻的,說明了該加密算法生成的密文圖像接近于真隨機圖像。

4.1.2 相關性分析

由于圖像的信息冗余較大,明文圖像中相鄰像素的相關性較強,為了更好地隱藏原始圖像的信息,密文圖像中相鄰像素之間的相關性應較弱,甚至無關。圖11 和圖12 所示為明文和密文圖像相鄰像素的相關性對比,其中,在圖11(a)、圖11(b)中,從左到右分別為水平、垂直、對角線方向,在圖12(a)、圖12(b)中,第1~3 行分別為水平、垂直、對角線方向。

圖11 體檢單明文與密文的相關性分析(灰度圖)Fig.11 Correlation analysis of plaintext and ciphertext of medical examination report(gray map)

圖12 身份證明文與密文的相關性分析(彩圖)Fig.12 The correlation analysis of plaintext and ciphertext of identity card(color map)

由圖11(a)和12(a)可知,明文圖像中任意方向相鄰的像素,像素值都是相近的,因此其分布基本在圖中的對角線上。由圖11(b)和圖12(b)可知,在密文圖像中,相鄰像素之間幾乎是無關的,其分布接近于噪點。進一步地,計算上述圖像中相鄰像素的相關性,如表2 和表3 所示,其中,R 代表紅色,G 代表綠色,B 代表藍色。

表2 體檢單(灰度圖)相關性分析 Table 2 The correlation analysis of medical examination report(gray map)

表3 身份證(彩圖)相關性分析 Table 3 The correlation analysis of identity card(color map)

由表2 和表3 可知,在明文圖像中,相鄰像素的相關性均大于0.5,甚至接近于0.9,具有強相關性,但經過本文加密算法加密后,密文圖像中相鄰像素的相關性始終小于0.1,具有極弱的相關性。

進一步地,對Lena 圖像進行加密,并與其他方案進行對比分析,對比結果如表4 所示。

表4 Lena 圖像(灰度圖)的相關性分析 Table 4 Correlation analysis of Lena image(gray map)

由表4 可知,經本文方案加密后,密文圖像相鄰像素之間的相關性顯著降低,并且低于其他方案。綜上所述,相比其他方案,本文所提出的加密方案能夠更好地降低相鄰像素之間的相關性,有效隱藏明文信息。

4.1.3 信息熵分析

對于存儲單位為無符號8 bit 二進制數的圖像,其信息熵越接近8,則說明隨機性越好,所含的有用信息越少。為了使本文加密算法的有效性更加可靠,不僅對上文兩張隱私圖片進行信息熵分析,另外還對以南加州大學信號與圖像處理研究所標準圖像數據庫中的一些圖片(見圖像編號)也進行了分析,結果如表5 所示。

表5 信息熵分析結果 Table 5 Analysis results of information entropy

由表5 可知,原始明文的信息熵都遠離8,這是由于其中含有有用信息較多,而經過加密后,密文圖像的信息熵都大于7.999,且十分接近于8,因此密文圖像具有較好的和真隨機圖像類似的隨機性,有效地隱藏了原始圖像的有用信息。進一步地,加密Lena 圖像,與其他圖像加密方案的對比結果如表6所示。

表6 Lena 圖像(灰度圖)的信息熵對比分析 Table 6 Comparative analysis of information entropy in Lena image(gray map)

從表6 可以看出,本文方案與文獻[25]的加密結果信息熵最接近8。因此,相比其他方案,本文方案加密后獲取的Lena 密文圖像更接近于真隨機圖像。

4.2 安全性分析

4.2.1 密鑰空間

本文所提算法的秘密密鑰和傳輸的種子密鑰均是256 bit 的二進制數,其密鑰空間遠大于2128,敵手想要通過暴力破解的方法去猜測密鑰,所需要的時間在實際中是不可接受的,因此可以抵抗窮舉攻擊。

4.2.2 密鑰流隨機性測試

本文引入隨機性測試套件NIST SP800-22 對PRSCML-Henon 系統生成的密鑰流進行隨機性測試,該測試套件包含15 項子測試,每項測試的p值用于判斷其是否通過該項測試,p值越大越好,當p值大于0.01 時,則認為通過該項測試,且置信度為0.01[30]。令PRSCML-Henon 系統中格子數為256,迭代生成256 組序列,采用式(18)對序列進行量化,每組序列的長度為106bit,根據NIST 官方文件,對于256 組序列只有通過率達到或超過248/256,測試序列則被判定為具備良好的隨機性且無法與真隨機數區分。PRSCML-Henon 系統輸出序列的測試結果如表7 所示,其中,標記有*的子測試表示該子測試下含多個小測試,因此通過率那一列以“—”表示,數字為通過該項測試的最少樣本數/測試樣本總數,此時p值給出的是這些小測試中的均值,“通過”代表序列在這些小測試下的通過率均能夠達到要求,即序列的隨機性能夠通過這些小測試。

表7 NIST 測試結果 Table 7 Test results of NIST

由表7 可知,本文所設計系統PRSCML-Henon生成的序列經過量化后得到的密鑰流能夠通過NIST 的隨機性測試,包括全部的15 項子測試。NIST 隨機性測試是極為嚴格且權威的,通過此測試說明密鑰流的隨機性是滿足安全性要求的。

4.2.3 密鑰敏感性

一個安全可靠的密碼算法對密鑰應具備良好的敏感性,即發生微小改變的密鑰無法正確解出或部分解出密文。本文改變密鑰中的某一位(包括第1 位、中間位以及末位),或改變整個密鑰,使其取反。利用改變后的密鑰解出的結果如圖13 和14 所示。在圖13 和14 中,KEY1、KEYmid、KEYend、KEY~分別代表種子密鑰改變第1 位、中間位、末尾以及全部取反的值,圖片為密文解密后的結果??梢钥闯?,無論是灰度圖還是彩圖,在密鑰發生微小改變后密文均不能正確解出或部分解出,說明該算法具備良好的密鑰敏感性。

圖13 體檢單(灰度圖)密鑰敏感性測試Fig.13 Key sensitivity test of medical examination report(gray map)

圖14 身份證(彩圖)敏感性測試Fig.14 Key sensitivity test of identity card(color map)

4.2.4 擴散性

理想的圖像加密算法是當明文發生微小變化時,密文也應地相應發生巨大的變化,這就要求加密算法具有良好的擴散性,即雪崩效應。這里引入歸一化像素變化率(NPCR)和統一平均變化強度(UACI)來衡量明文圖像發生一位變化時,密文圖像發生的變化。NPCR 和UACI 的計算過程如下:

其中:C1和C2分別代表不同明文生成的密文圖像;C1(i,j)代表圖像中第i行、第j列的像素值;M×N代表圖像的尺寸;F為圖像中支持的最大像素值,即255。

任意改變明文圖像中的某一像素值,得到的密文圖像和原圖像之間的NPCR 和UACI 如表8 和表9所示。同樣地,為了使結果更具普適性,此處引入數據庫中的標準圖片進行測試,測試結果如表8 所示。根據文獻[13,31],不同尺寸下的圖像其NPCR 和UACI 是有臨界值的,如表9 所示。

表8 擴散性分析 Table 8 Diffusion analysis

表9 NPCR 和UACI 的臨界值 Table 9 Critical values of NPCR and UACI

只有當NPCR 的值大于臨界值、小于100%、UACI 的值處于區間[UACI-,UACI+]時,表明兩張圖像C1和C2近似于隨機生成,且相互無關。顯然表8中標準數據庫中的圖像,其原始圖像得到的密文和改變任意像素值后得到的密文之間的NPCR 和UACI 均處于臨界值內,說明本文所提出加密算法具有良好的擴散性。

4.2.5 抗選擇明/密文攻擊

只有當密鑰為固定值時,利用不同的明/密文對才能夠實現選擇明/密文攻擊,破解出密鑰。然而本文所提算法種子密鑰與明文HASH 值相關,當明文發生變化時,種子密鑰必然發生變化,所生成的密鑰流由于算法良好的擴散性,也會發生巨大的變化。這就導致當敵手試圖進行選擇明/密文攻擊及所選明密文對發生變化時,種子密鑰也會隨之發生變化,不再固定,因此選擇明/密文失效。綜上所述,該隱私圖像加密算法能夠抵抗選擇明/密文攻擊。

4.3 魯棒性分析

密文在公共信道傳輸時,難免會受到噪聲的影響,或者敵手的阻塞攻擊。因此,加密算法應具備較好的魯棒性,即使密文發生了一些篡改或阻塞,依舊能夠正確解出明文。為驗證本文所提算法的魯棒性,向密文圖像中添加不同強度的椒鹽噪聲,并阻塞不同大小的部分密文,使用正確種子密鑰解出的結果如圖15~圖17 所示。

圖15 噪聲魯棒性分析Fig.15 Robust analysis about noise

圖16 體檢單阻塞攻擊后的解密結果Fig.16 Decryption results after medical examination report blocking attack

圖17 身份證阻塞攻擊后的解密結果Fig.17 Decryption results after identity card blocking attack

由圖15~圖17 可知,當傳輸的密文添加的椒鹽噪聲強度為0.1 時,依舊可以較為清晰地解出明文。而當遭受阻塞攻擊時,即當丟失信息低于圖片大小的1/2 時,解密結果中依舊能夠依稀看到明文圖像中的信息。綜上所述,本文提出的隱私圖像加密算法能夠有效抵抗信道中的噪聲和阻塞攻擊,具有較好的魯棒性。

4.4 效率分析

RSCML-Henon 系統中各個格子是并行運行的,因此密鑰流生成與量化的過程相比其他混沌加密算法要更快,效率更高。同時,本文提出方案的加密過程又相對簡單,因此整個加密方案的運行速度很快。不同方案在處理器固定主頻下加密512×512 像素灰度圖的平均時間消耗如表10所示。顯然,在加密相同大小的圖像條件下,盡管處理器主頻只有2.20 GHz,但本文方案為所有方案中最快的,僅耗時0.127 s,效率較高。

表10 效率分析 Table 10 Efficiency analysis

5 結束語

基于Henon 二維混沌映射和耦合映像格,本文提出一種新型的時空混沌系統,即偽隨機置亂耦合映像格系統PRSCML-Henon。相比于單一Henon 映射、傳統CML 系統以及其他新型時空混沌系統,該系統均具有更好的非周期性、遍歷性和強混沌特性,輸出的密鑰流隨機性也更好,更適合于進行隱私圖像加密。在PRSCML-Henon 系統的基礎上,本文提出一種隱私圖像加密算法,安全性分析結果表明,該算法相比其他混沌圖像加密算法具有更好的隨機性、擴散性及可靠的安全性,同時擁有較好的魯棒性和較快的加密速度。

猜你喜歡
明文控制參數加密算法
高超聲速飛行器滑??刂茀嫡ǚ椒ㄔO計*
Birkhoff系統穩定性的動力學控制1)
奇怪的處罰
基于PI與準PR調節的并網逆變器控制參數設計
奇怪的處罰
基于小波變換和混沌映射的圖像加密算法
四部委明文反對垃圾焚燒低價競爭
Hill加密算法的改進
對稱加密算法RC5的架構設計與電路實現
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合