張建偉 吳作棟 蔡增玉 王文倩
1(鄭州輕工業大學軟件學院 河南 鄭州 450000) 2(鄭州輕工業大學計算機與通信學院 河南 鄭州 450000)
由于5G移動技術的不斷成熟及對將來市場的深入應用,信息趨于共享性,敏感圖像的隱私保護問題越來越受到關注[1]。而數據加密作為信息安全基礎設施即服務的一種重要形式,保密性更是引起大部分人對公共存儲的顧慮。根據調研機構RedLock公司的調查研究,超過49.2%的互聯網用戶的圖像文件資料曾被利用[2],主要的安全威脅如圖1所示。(1)圖像信息存儲在第三方,可能會因服務器受到攻擊或者不可信第三方泄露用戶的隱私;(2)圖像信息在傳輸過程中沒有進行加密保護或者是加密技術太過于簡單而密文容易被破解;(3)缺失訪問控制機制,沒有自主設置訪問權限,攻擊者享有對資源的無限制訪問權限。

圖1 云環境下圖像加密的安全威脅
現階段通常采用以下兩種方式來對自己的敏感圖像進行隱私保護,一是對自己敏感的圖像信息進行良好的保護工作,保證自己所處的互聯網環境足夠安全;二是對圖像信息進行加密,使攻擊者無法讀取泄露的信息。對于加密數據的方式,市面上主流的加密算法(如SM4、RSA等)是面向文本加密應用的,針對圖像加密強度不高[3]。王青等[4]在對無理數序列和混沌序列深入分析的基礎上,利用無理數的偽混沌特性來增加圖像加密的安全性,但其方案對初始值極端敏感,不適合在云端存儲。王圣等[5]提出了一種基于Kaprekar序列的加密方案來保障圖像數據的完整性和準確性,具有較強的抗差分攻擊性能。曹建秋等[6]利用一維Logistic混沌映射對圖像像素分別進行位置置亂和值擾亂,以達到雙重加密的效果,但該算法密鑰空間不大,抗窮舉攻擊能力不足。文獻[7-8]用二維貓映射結合全隨機矩陣和二維Logistic映射分別進行置亂、擴散圖像,產生類隨機密文圖像,改善了傳統混沌系統不能抵御相空間重構攻擊的缺陷,提高了密文圖像的隱私保護能力。
現有圖片加密研究主要存在以下兩個問題:(1)傳統的圖像加密算法產生的密鑰保密性和敏感性不足,不能抗暴力攻擊和統計分析攻擊;(2)針對云環境下圖像數據的存儲還沒有一種高效的隱私保護策略。因此,本文在云環境下構造出具有自然對數序列的似混沌序列來加密圖像數據,有效減少了圖像數據在傳輸過程中和在第三方存儲中的欺詐行為,并能把加密圖像的無損恢復圖像以新方案加密。本文主要創新如下:
(1)在置亂階段引入對輸入值敏感的SM3雜湊算法,避免了惡意用戶篡改云端圖像而導致的完整性問題,提升了本文方案的安全性和高效性。(2)提出一種具有似混沌特性的圖像加密新方案,用來解決云環境下加密圖像抗統計分析和暴力攻擊的不足。
(1)0≤S(i)<1,i=1,2…,N。S(i)是從lnI順序取出的m位整數,并對這些整數除以10m形成介于0與1之間的小數。


SM3雜湊算法是國家密碼管理局采用的一種密碼散列函數標準[9],主要運用在對消息的預處理和壓縮成Hash值,其安全性及效率與SHA-256相當。該算法采用Merkle-Damgard 結構,對輸入長度小于264 bit的消息,進行局部范圍的快速擴散和混亂,生成長度為256 bit的雜湊值。該算法在對消息的預處理和壓縮成雜湊值的過程中,主要由填充、迭代過程、消息擴展和壓縮函數所構成。
二維貓映射實際上就是將圖像中各個像素值的位置進行拉伸折疊的過程[10],其中乘以A相當于對圖像進行拉伸,取模相當于對圖像進行折疊,這樣可以大幅度提高加密圖像的魯棒性和安全性。假設圖像的像素坐標為xn,yn∈{0,1,…,N-1},a和b都是整數,n為置亂的次數。則二維貓映射方程如下:
(1)
由式(1)可知該映射為一一映射且正逆映射的系數均為整數,圖像在對像素值位置置亂的時候不會出現計算誤差甚至是解密錯誤。但該方法不能抵抗統計分析攻擊,需要和其他加密算法共同實現加密圖像的隱私保護。
混沌系統是一種復雜的非線性系統,具有對初始值極端敏感,序列長度可變、無周期等優點,非常適合圖片加密。因此,本文采用自然對數序列代替混沌映射,并用非線性時間序列的分析方法來揭示自然對數序列的似混沌特性。
王青等[4]通過分析Pi序列的功率譜和Lyapunov指數二方面證明了Pi序列的似混沌特性。因此,本文也遵循同樣的分析方法來證明自然對數的偽混沌特性,如果自然對數序列滿足了混沌序列連續寬頻譜和正的最大Lyapunov指數這二個性質,就稱自然對數序列具有偽混沌特性。
功率譜分析是區別混沌信號和周期信號的一種重要手段,周期信號具有峰值,而混沌信號的功率譜圖無明顯的峰值或峰值連續。本文通過對比多個自然對數序列和Pi序列的功率譜圖發現,自然對數序列和Pi序列具有相似的連續寬功率譜,峰值均連續,如圖2所示。

圖2 自然對數和Pi序列的功率譜分析


表1 Pi序列和自然對數序列的相空間重構和最大Lyapunov指數
本文研究表明,非周期無限長的數字序列也就是自然對數序列和混沌序列具有非常多的相似性,非常適合云環境下的圖像加密。因此,本文用自然序列代替這些混沌映射,并結合圖像像素位置置亂和值擾亂技術,提出云環境下基于自然對數序列的似混沌序列圖像加密方案,其方案結構如圖3所示,其中下載解密方案就是加密上傳的逆過程。

圖3 基于自然對數序列的似混沌序列圖像加密方案
1)基于二維貓映射的像素位置置亂操作。對像素位置置亂的目的是讓像素的位置進行一次全排列,使圖像像素喪失原有的相鄰關系和色彩的漸變效果,在直觀上無法辨認原始圖像,從而達到圖像數據加密的效果。二維貓映射是現在主流的圖片像素位置置亂技術,采用隨機位置映射的方式使像素得到位置呈現均勻分布和弱相關性,而且具有周期性,在本文中應用效果良好,該操作如算法1所示。
算法1像素位置置亂加密
輸入:N×N的圖像。
輸出:像素位置置亂后的圖像。
1.選取參數a=7,b=6,n1=50,n2=100,n3=500;
2.使用式(1)對要上傳到云存儲的大小為256×256的圖像的像素位置進行置亂,原始圖像如圖4(a)所示,(xn+1,yn+1)為置亂后的新坐標;
3.為了增強加密方案的魯棒性,將步驟2重復2~3次、每次置亂次數n均不同,結果如圖4(b)、(c)所示;
4.進行若干次貓映射后會恢復圖像,如圖4(d)所示。

圖4 像素位置置亂加密結果
2)基于自然對數序列和SM3雜湊算法的像素值擾亂操作。
對像素值擾亂的目的是為了抵抗對圖像的分析統計攻擊。該操作主要是通過改變原圖像像素的灰度值分布信息來實現圖片加密,使加密后的直方圖失去原有的特征,從而達到隱藏明文圖像的作用。本文采用的是基于偽混沌序列的像素值擾亂方法,利用自然對數序列通過XOR和XNOR操作來擾亂像素的灰度值大小,從而加密圖像,如算法2所示。
算法2像素值擾亂加密
輸入:密鑰m、l、N和圖片加密密碼S。
輸出:加密圖像。
1.將m、l、N、S作為加密方案的密鑰在傳遞給接受者;
2.利用SM3算法把密碼S進行填充、迭代、擴展和壓縮生成雜湊值Y;
3.把Y轉化成10進制,并進行自然對數運算得出lnY;
5.初始化確定C(0),利用C(k)=P(k)⊕I(k)⊕C(k-1)形成像素值置換矩陣,其中P(k)為置亂操作后的待處理的像素值,C(k-1)是前一個處理后的像素值,C(k)是當前被處理后的像素值,I(k)是自然對數序列從小數域轉化為整數域的整數;
6.根據像素值置換矩陣進行像素值擾亂操作,完成加密。
云環境下圖像像素位置置亂和值擾亂技術是本文討論的重點。二維貓映射產生的離散序列由于在分布上不符合統計學原理,所以置換元素的變動率接近為100%,保證了置亂后的像素位置具有良好的隨機性,攻擊者難以獲得云圖像的任何特征信息,有效地降低了已知明文等破譯方式的成功率。而且基于自然對數序列的似混沌序列和普通的無理數似混沌序列相比,其密鑰空間的擴展性增強,數據加密的速率和安全性也得到了提升,并且具有相似的抗統計分析的特性也完美契合混沌加密。針對整個具有似混沌效應的圖像加密新方案,本文主要從以下二個方面進行安全性分析:
1)密文保密性分析。保密性是指攻擊者從一個密文中獲取任何明文信息在計算上是不可行的。本文采用了IND-CCA安全模型,采用SM3算法把密碼預處理生成雜湊值,把安全性建立在隨機預言機的基礎上,把本文方案規約到離散對數假設中,就意味著給定密文,沒有敵手能確定密鑰。在具體的描述中,攻擊者A和挑戰者B進行如下交互游戲。
(1)初始化階段。挑戰者B在云環境下產生本方案系統。敵手A僅能推測出Y是在隨機預言機上均勻選取的一個隨機雜湊值。
(2)訓練。敵手A向挑戰者B發出對密文C的解密詢問,即挑戰者B取加密圖像C,解密并把它發給敵手A,這一過程可重復多項式有界次。
(3)挑戰。敵手A輸出二個長度相等的明文M0、M1,挑戰者隨機選擇一個比特值β∈{0,1},計算C*=ε(Μβ),并將C*發送給敵手A。
(4)猜測。敵手輸出猜測β′∈{0,1},如果β′=β,則敵手攻擊成功。敵手的優勢定義為安全參數E的函數:
(2)

2)密鑰空間和敏感性分析。為了防止窮舉攻擊,圖像加密算法必須有足夠大的密鑰空間[12]。本文圖像加密算法在置亂階段引進的二維貓映射加密有2個控制參數和加密次數,而且二維貓映射對參數具有極高的敏感度,即使參數發生細微的變化,加密后的圖像也會發生較大的改變。值擾亂階段采用的基于自然對數序列的似混沌序列有三個密鑰和一個初始值,其密鑰空間大小與N的大小有關。一般來說,N要足夠大才能保證置亂像素位置的向量、密鑰空間復雜度就越高,攻擊者越難破譯加密圖像。特別是經過SM3雜湊算法聯合無理數異或處理,擴展性能進一步提升,一位密鑰的變化,會擴散到整個云傳輸的數據中,從而導致整個明文圖像的改變,其良好的擴展性可以引起“雪崩效應”,增強了安全性。
本文利用SM3算法加密速度快和混沌加密靈敏度高的特點,將兩者優勢相結合,能得到較高的加解密效率。經過似混沌加密處理,解決了數據加密需要嚴格的同步問題,形成了具有靈活性、實時性強的一系列特色。對比其他混沌圖像加密算法,該算法具有的無理化特性優化了密鑰空間問題,增強擴展性;而且算法復雜度低,加密過后圖像大小幾乎相同,不需要設置奇偶校驗或其他通信開銷。
本文通過在利用Hadoop搭建分布式云存儲的同時,使用MATLAB語言實現基于自然對數序列的偽混沌圖像加密新方案,對安全和效率方面進行測試分析。在安全性測試中,使用標準測試圖片lena.png(原圖大小為463 KB)作為實驗參考圖像。效率測試中,選取大小不同的圖像和不同長度的密鑰作為實驗參數。
在安全測試中,首先模擬抵御窮舉攻擊,測試密鑰的保護能力和恢復明文圖像的可行性;其次模擬抵御統計攻擊,測試攻擊者在獲取密文的各種情況下,是否能恢復出完整的圖像,并用直方圖分析方案對于統計攻擊的抵抗能力。具體實驗結果如表2和圖5所示。

表2 密文測試結果和說明

圖5 本文方案加解密結果
由表2結果見,系統在進行多次窮舉攻擊時,云用戶除非同時擁有用戶的全部密鑰和密文才能恢復出正確完整的明文消息,其他項目都會導致圖片失真。這說明在實際應用中,最壞的情況是攻擊者獲得密鑰,并嘗試著通過分析部分密文找到規律。用上述加密方案對圖5(a)所示的Lena圖像進行加密處理后的圖像如圖5(b)所示,可以看出經過似混沌環境下加密處理的數據已經完全失去了明文的所有特征,離散的數據并不具備任何規律,是不具備任何實際應用的。如果云用戶通信成功接收到無損密鑰,則可以正確恢復原始圖像,如圖5(c)所示;一旦解密密鑰發生細微變化,解密就會失敗,如圖5(d)所示。
4.2.1直方圖分析
圖像加密算法抵御統一攻擊的能力能通過直方圖的分析反映出來[13]。加密圖像的算法越先進,加密后圖像的直方圖分布越均勻,抵御統計攻擊的能力就越強。直方圖方差計算如下:
(3)
式中:xi、xj為像素值得數量。圖6顯示的是該方案加密前后的圖像的直方圖。通過對比加密前后的直方圖發現,原始圖像直方圖更具有明顯的統計特性,對統計攻擊比較敏感;而加密后圖像的直方圖更趨于均勻化,具有更強的防御統計分析的能力。

圖6 加密前后圖像的直方圖
4.2.2密鑰空間大小與敏感性分析
密鑰空間是評判現代密碼系統是否安全的一個重要指標[14]。因此,一個健壯的加密系統必須具備足夠大的密鑰空間才能抵抗窮舉攻擊和暴力破解[15]。在本文所提出的圖像加密算法中,將構造自然對數序列的m、l、N、S作為系統密鑰,且在似混沌加密環境與圖像相關,對明文圖像極為敏感,僅僅是極其微小的像素改變,密鑰也會產生巨大的改變,仍然無法正確還原原始圖像,雪崩效應明顯。而且如果將二維貓映射和SM3算法的控制參數也作為密鑰產生的元素,密鑰空間還有擴容的可能。本文將系統計算精度確定為1015,則本文密鑰空間至少為1090?2200(1060),足以抵御窮舉攻擊和暴力破解。而且本文方案和現有方案的密鑰空間大小對比如表3所示,可以看出該方案和同類圖像加密算法的密鑰空間大小相當,密鑰空間滿足云環境下安全性要求。

表3 方案密鑰空間對比
在效率測試中,首先選擇不同大小的圖像進行加密處理并和文獻[6-8]作對比分析,分析其運行時間;其次,在圖像大小都是256 KB的情況下,測試上述文獻方案圖像加密算法的執行效率,分析本方案在云環境下的可用性。具體實驗結果如圖7和圖8所示。

圖7 各運行時間分析比較

圖8 云環境各方案執行效率
由圖7可以看出,本文系統加密過程較文獻[7]和文獻[8]算法快,但是較文獻[6]算法慢。這是由于本文為了增強方案對密鑰的敏感性和抗攻擊性以達到較好的加密效果,采用二維貓映射等方式,增加了方案的時間復雜度。雖然文獻[7-8]方案也應用了二維貓映射,但其采用分塊置亂增加了時間開銷;而文獻[6]未使用分塊置亂而且混沌同步性比較高,但是密鑰空間不大,不足以抵抗暴力攻擊。因此,本文以犧牲時間復雜度來換取較高的加密安全性。此外,文獻[6]和文獻[8]在云環境下的交互圖像都是在數據鏈路層進行加密,密鑰很容易泄露,增加了對密鑰保護的時間消耗。文獻[7]圖像的動態加密性能不夠,無法充分利用云服務器的性能和整體利用率。本文方案由于使用了SM3雜湊算法對密鑰進行了初始化,使其具有更好的同步性和更快的執行速度,彌補了因安全性帶來的時間開銷,從而平衡安全和效率問題,證明了其優越性。
本文主要針對圖像數據在云環境下容易遭到隱私泄露等問題,提出了一種基于自然對數序列的似混沌序列圖像加密方案。首先提出自然對數序列,從功率譜密度圖和最大Lyapunov指數兩方面證明自然對數序列的似混沌特性;其后將自然對數序列代替混沌映射進行像素值擾亂,并結合二維貓映射置亂技術,設計并實現了本文方案;最后,通過IND-CPA游戲和直方圖分析證明了本文方案的安全性,具有更強的防御統計分析和防窮舉攻擊的能力。在效率方面通過引入SM3雜湊算法使本文方案具有良好的密鑰敏感性和擴展性,降低因安全性帶來的時間開銷,具有廣闊的應用空間。