楊鳳霞
(滄州師范學院計算機系,河北滄州061000)
基于Logistic映射和z-映射的圖像分組加密算法
楊鳳霞
(滄州師范學院計算機系,河北滄州061000)
針對圖像加密,提出了一種基于Logistic映射和z-映射的圖像分組加密算法,該算法在每一輪迭代中,交替使用矩陣置亂、非線性數值替換和數值關聯混迭三級操作。經大量實驗驗證,該算法能夠有效抵抗明文攻擊、差分攻擊、統計分析,密鑰空間較大,因而安全性較高,并且加解密速度相當快,適用于數據存儲。
Logistic映射;混沌序列;圖像分組加密
由于圖像表達信息直觀、形象生動,所以圖像的使用越來越廣泛,它已經成為一種主流的信息表達方式。但是數字圖像的安全保障問題也隨之出現,并且已經成為一個備受關注的問題。許多學者就此開展了各種研究工作[1-3],其中圖像加密是保障圖像安全的一個重要研究分支。目前,圖像加密主要有基于混沌的圖像加密,基于神經網絡的圖像加密以及基于細胞自動機的圖像加密等。
近年來,一些學者運用混沌理論構造了密碼算法,用于圖像分組加密,這類算法的核心是交替地使用置亂和擴散機制,置亂是對圖像的像素坐標進行變換,擴散是對圖像像素值進行混迭[4-8]。林克正[6]等設計了一種Arnold映射和分段Logistic混沌映射相結合的雙混沌系統,算法具有較高的抗攻擊能力和初值敏感性。徐剛[7]等基于Logistic映射和Arnold映射設計了圖像分組密碼算法,通過交替迭代混沌系統實現了像素值的擾亂和位置置亂,迭代次數敏感地依賴于明文分組和密鑰,具有可擴展性強和密鑰空間大等特點。本文結合對前人分組加密算法的分析比較,提出一種基于一維Logistic混沌映射和z-映射的將置亂、替換和混迭三者結合的數字圖像分組加密算法。實驗驗證,本算法具有較大的密鑰空間,安全性較高,并且加解密速度也相當快,因而比較適用于數據存儲。
2.1 一維Logistic映射
一維Logistic映射模型簡單,具有確定性,但有極為復雜的動力學行為,其方程定義如下:

其中,r為分支參數,當0≤r≤3.569945972……時,該動力系統因從穩定狀態到分叉而產生倍周期,當3.569945972……<r≤4時,該動力系統進入混沌狀態。
2.2 z-映射
文獻[9]中給出了一個與k階Chebyshev映射非常類似的一維非線性動態系統,其定義式為:

此處z為整型參數,由該式可以看出,此映射與一維Logistic映射具有完全一樣的混沌吸引域和值域,但結構卻完全不同,且其Lyapunov指數為λ=ln z,當z>1時,系統處于混沌狀態。本文中將式(2)稱為“z-映射”。
算法設計思想:將整個圖像分成或填充成若干256×256大小的數據塊,通過多輪迭代完成對各數據塊統計特性的改變。在每一輪迭代中,交替使用矩陣置亂、非線性數值替換和數值關聯混迭三級操作。
3.1 置亂變換
置亂即對圖像的像素坐標進行變換。
算法1 用z-映射序列等間隔調制Logistic混沌序列
Step 1將初值x0帶入式(2),迭代生成序列{yj,j=1,2,……};
Step 2令x0′=|x0+y1|/2,將新的初值x0′帶入式(1),迭代生成相應的混沌序列{xi,i=1,2,……};
Step 3每間隔n(n∈N)個數據,令x0′=|xj+n+yj|/2(j=1,2,……),不斷代入式(1)迭代生成混沌序列Xn;
Step 4對Xn進行2m連續等分,并設定奇偶區間,用Xn落入區間的奇偶性來判定bn的0、1值,按式(3)生成所需長度的二進制序列:

其中,m>0,為任意的正整數(如m=1000),Im0, Im1,…,Im2m-1代表Xn上的2m個連續的等分區間。
算法1采用雙混沌映射,所得的混沌二進制序列具有非常好的偽隨機性,所以克服了離散混沌系統中動力學退化、單個混沌迭代軌跡暴露等問題,提高了算法的安全性。
3.2 數值替換
算法2 排序方式生成替換表
選定Logistic映射進行迭代產生混沌序列,舍棄前200個數值,然后從后續數據中選出256個不重復的數值進行遞增或遞減排序,則該段數據的原始位置序號與排序后序號構成一個值域為1~256的整數替換表。具體替換算法為:
加密過程:

解密過程:

其中,I(i)為圖像的第i個數據(已經一維化);T為替換表數組;C(i)為經過替換表替換后的第i個圖像數據。
算法2生成的替換表是一種非線性替換,為了達到更好的擴散目的,還需結合異或、取模等操作進行混迭。
3.3 混迭變換
算法3 耦合混迭變換
為了將前一點的影響耦合到下一點上,利用式(6)、(7)、(8)、(9)對相鄰兩點進行異或操作,如此循環,直到將一點的數值擴散到整個圖像上。
加密過程:

解密過程:

第1點加密:

第1點解密:

其中,I(k)為第k次混迭時的明文數據;C(k)為第k次混迭后的密文數據;M(k)為算法1所得的混沌二進制序列。
算法3將混沌映射得到的整數密鑰序列與圖像相鄰像素按照式(6)到式(9)進行異或和取模運算,由于算法1得到的M(k)分布比較均勻,所以圖像得到很好的混迭,從而使得選擇明文攻擊失效。
3.4 基于Logistic映射和z-映射的數字圖像分組加密算法
具體步驟如下:
Step 1 圖像預處理。對給定的圖像進行分割或填充,使之成為256×256的圖像或圖像塊。
Step 2 產生密鑰。初始密鑰是一個192比特的序列,分成4組,將這4組比特流分別映射為(0,1)間的浮點數k1,k2,k3,k4,其中k1為置換變換初始密鑰,k2為替換操作初始密鑰,k3為混迭運算初始密鑰,為了使每輪加密的密鑰得到更新,設k4為新一輪加密k1,k2,k3的微調增量,計算公式為:k′i=ki+(j-1)× k4,i=1,2,3,…,j為加密輪數,若k′i≥1,k′i=ki。
Step 3 置亂變換。將k1代入算法1對明文圖像進行位置置亂。
Step 4 數值替換。將k2代入算法2生成排序替換表,依據此表對置亂后的圖像像素值進行數值替換。
Step 5 混迭運算。以k3為初始密鑰,按算法3中式(6)和(8)對置亂替換后的數據進行混迭加密。
重復步驟3、4、5,直至完成L輪加密,每輪加密前用微調增量k4更新密鑰。隨著加密輪數的增加,算法加密強度越來越大。
3.5 解密流程
解密流程與加密流程對稱,先用式(7)和式(9)進行反混迭,再用式(5)進行反替換,最后進行逆矩陣置亂變換,重復L輪即得解密圖像。
4.1 仿真實驗
在PIII-1G CPU,256M內存和MATLAB 7.0軟件平臺下對本算法進行仿真實驗。選定192比特數據“564328857649247568000100”為初始密鑰,將其映射為4個浮點數密鑰k1=0.564328,k2=0.857649,k3=0.247568,k4=0.000100,對一幅256×256大小的灰度圖像Lena進行仿真實驗,其加解密效果如圖1所示。由該圖可知,本算法僅加密1輪即可取得良好的加密效果。
4.2 測試分析
4.2.1 密鑰空間分析
本算法的密鑰空間為2192≈6.2771×1057,同時生成混沌置亂矩陣和整數序列時多次用到Logistic映射、z-映射,控制參數和加密輪數均可算入密鑰空間,因而本算法的密鑰空間相當龐大,能有效阻止攻擊者通過窮舉法來解密圖像。

圖1 基于Logistic映射和z-映射的數字圖像分組加密算法的加解密圖
密鑰敏感性測試:
測試一:對原圖像用密鑰“56432885764924756 8000100”進行5輪加密,然后任意改變1位密鑰,如改變密鑰k4的最低位,即用“564328857649247568000101”再對原圖像進行5輪加密,比較兩幅加密圖像對應的不同像素的個數,圖2給出了兩幅加密圖像及其差值,測試結果表明,兩幅圖像共有252個相同像素點,不同像素點所占比例達到了99.62%。

圖2 密鑰敏感性測試一
測試二:采用密鑰“56432885764924756 8000100”對原圖進行5輪加密,然后任意改變1位密鑰,如改變密鑰k3的最低位,即用“564328857649247568000100”進行解密,實驗結果如圖3所示。
測試表明,加密圖像對密鑰非常敏感,可以有效抵抗差分攻擊。
4.2.2 統計攻擊
加密圖像的統計直方圖:圖4示出了對原始圖像進行1輪加密過程中置亂、替換和混迭各個階段所對應的直方圖。

圖4 1輪加密過程中各階段對應的直方圖
由圖4看出,加密后圖像的直方圖與原始圖像的直方圖有很大的不同,且非常均勻。說明本算法僅加密1輪即可取得較好的效果,隨著加密輪數的增加,安全性將逐漸加強。
相鄰像素的相關性:一般原始圖像中相鄰兩像素的相關性很大,為了阻止統計攻擊,必須降低相鄰兩像素的相關性。隨機選擇5輪加密圖像和原始圖像中各2000對像素對,10次測算的平均值,觀測其水平、垂直和對角方向的像素相關性,結果如表1所列。
從表1可以看出,加密前的圖像像素之間具有較強的相關性,經過加密后,這種相關性基本被破壞了。

表1 原始圖像和5輪加密圖像相鄰像素對之間的相關性
4.2.3 與DES算法的性能比較
本算法是一種典型的分組加密算法,包含了置亂、替代和混迭運算,加密強度與加密輪數有關?,F代密碼學中典型的分組加密算法(如DES、FEAL、LOKI、GOST、Lucifer、Blowfish、Khufu)的核心也是基于替換-置亂運算。以DES算法為例,將基于Logistic映射和z-映射的數字圖像分組加密算法與經典加密算法在性能上進行簡單的對比,結果如表2所列。

表2 本文算法與DES算法性能的簡單對比
本文結合對前人分組加密算法的分析比較,提出一種基于一維Logistic混沌映射和z-映射的將置亂、替換和混迭三者結合的數字圖像分組加密算法。本算法與其他分組加密算法相比,能夠有效抵抗明文攻擊、差分攻擊、統計分析,密鑰空間較大,因而安全性較高。數字化后的混沌系統只涉及整數運算,置亂變換與擴散變換的運行速度都比較快,因此該算法的加解密速度也相當快。但是本算法對諸如加噪、濾波、壓縮等操作魯棒性較差,因而較適用數據的存儲。
參考文獻:
[1] Patidar V,Pareek N K,Sud K K.A new substitution-diffusionbased image cipher using chaotic standard and logistic maps[J].Com mun Nonlinear Sci Numer Simul,2009,14(7):3056-3061.
[2] Hu Chunqiang,Deng Shaojiang,Qin Mingfu,et al..Image encryption algorithm based on logistic and standard map[J].Computer Science,2010,37(12):57-59.(in Chinese)胡春強,鄧紹江,秦明甫,等.基于Logistic與標準映射的數字圖像加密算法[J].計算機科學,2010,37(12):57-59.
[3] Zhu Zhiyu,Zhang Daihua.Watermarking algorithm based on DWT and chaotic encryption[J].Laser&Infrared,2006,36(5):417-420.(in Chinese)朱志宇,張代華.基于離散小波變換和混沌加密的圖像水印算法[J].激光與紅外,2006,36(5):417-420.
[4] Chen Yanfeng,Li Yifang.Image encryption algorithm based on recipro-cally-disordered diploid chaotic sequences alternated in subsec-tion[J].Journal of South China University of Technology:Natural Science Edition,2010,38(5):27-33.(in Chinese)陳艷峰,李義方.交替分段相互置亂的雙混沌序列圖像加密算法[J].華南理工大學學報:自然科學版,2010,38(5):27-33.
[5] Wang Qingsong,Fan Tiesheng.Chaotic image scrambling algorithm based on location and gray transformation[J]. Journal of Chinese Computer Systems,2012,33(6):1284-1287.(in Chinese)王青松,范鐵生.基于位置和灰度變換的混沌圖像置亂算法[J].小型微型計算機系統,2012,33(6):1284-1287.
[6] Lin Kezheng,Zhong Yuan.Image encryption technology based on dual chaotic maps[J].Computer Engineering and Applications,2010,46(36):195-197.(in Chinese)林克正,鐘媛.雙混沌映射的圖像加密技術[J].計算機工程與應用,2010,46(36):195-197.
[7] Xu Gang,Zhang Yadong,Zhang Xinxiang,et al.Digital image encryption algorithm based on an alternating iterative chaotic system[J].Journal of University of Science and Technology Beijing,2012,34(4):464-470.(in Chinese)徐剛,張亞東,張新祥,等.基于交替迭代混沌系統的圖像加密算法[J].北京科技大學學報,2012,34(4):464-470.
[8] Zhang Hualin.Research on applications of chaos-based encryptions[D].Chongqing:Chongqing University,2006.(in Chinese)張林華.基于混沌的密碼技術應用研究[D].重慶:重慶大學,2006.
[9] Mao Yaobin.Research on chaos based image encryption and watermarking technology[D].Nanjing:Nanjing University of Science and Technology,2003.(in Chinese)茅耀斌.基于混沌的圖像加密與數字水印技術研究[D].南京:南京理工大學,2003.
Image grouping encryption algorithm based on Logistic mapping and z-mapping
YANG Feng-xia
(Computer Department of Cangzhou Normal University,Cangzhou 061000,China)
Aiming at the image encryption,a kind of image grouping encryption algorithm based on logistic mapping and z-mapping is put forward.In each iteration of this algorithm,the matrix scrambling,the nonlinear numerical replacement and the numeral value iteration are alternately used.By a large number of experimental verification,this algorithm can effectively resistplaintextattack,differentialattack and statisticalanalysis,and ithas larger key space and higher security,and the speed of encryption and decryption is quite fast,which is suitable for data storage.
Logistic mapping;chaotic sequence;image grouping encryption
TN918
A
10.3969/j.issn.1001-5078.2014.01.023
1001-5078(2014)01-0103-05
楊鳳霞(1971-),女,碩士,講師,研究方向為數據挖掘。E-mail:szyfx@163.com
2013-05-22;
2013-06-26