聶佳琦 呂夢(mèng)如 張曉飛 王玉雯
摘要:本文提出了一種基于混沌映射構(gòu)造動(dòng)態(tài)S盒的加密方法。在Fridrich所提出的permutation-diffusion圖像安全加密設(shè)計(jì)框架基礎(chǔ)上,方法包括四個(gè)階段:構(gòu)造動(dòng)態(tài)S盒、S盒替換、置亂與擴(kuò)散。首先,提出了一種基于混沌映射聯(lián)系明文的動(dòng)態(tài)S盒構(gòu)造方法。然后,利用基于貓映射的置亂過(guò)程提高算法的加密性能。最后,擴(kuò)散過(guò)程實(shí)現(xiàn)雪崩效應(yīng)降低加密算法的復(fù)雜度。根據(jù)不同類型的統(tǒng)計(jì)分析實(shí)驗(yàn)的結(jié)果表明,本文提出的加密方法與以前的加密方法相比更加安全、高效。
關(guān)鍵詞:圖像加密;動(dòng)態(tài)S盒;混沌系統(tǒng)
中圖分類號(hào):TP18? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)16-0012-02
開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
近年來(lái),隨著計(jì)算機(jī)技術(shù)以及通信技術(shù)的快速發(fā)展,數(shù)字信息被廣泛地應(yīng)用到社會(huì)各個(gè)領(lǐng)域當(dāng)中。由于圖像信息相關(guān)性強(qiáng),冗余度高,且對(duì)于所加密的圖像,要求解密圖像具有高保真度,研究者們提出了一些新的針對(duì)圖像的加密方案[1]。
混沌具有遍歷性、混合性、確定性以及對(duì)初始條件和控制系數(shù)的敏感性等顯著特點(diǎn),非常適合于數(shù)據(jù)的加密。為了更好地隱藏明文信息,Y.Wang于2009年介紹了一種基于混沌的可變參數(shù)的圖像加密算法。在這個(gè)算法中,產(chǎn)生密鑰流的初始密鑰由混沌映射與圖像密文計(jì)算得出[2]。2011 年 Y.? Wang 等提出了一種基于時(shí)空混沌的快速圖像加密算法[3]。同年,M. Seyedzadeh 與 A. Mirzakuchaki 提出了一種基于分段混沌映射的快速圖像加密算法[4]。2013 年澳門(mén)大學(xué)的 C. Chen 等也提出了一種基于變化參數(shù)與混沌映射的圖像加密算法,體現(xiàn)出了混沌映射在改變圖像加密系統(tǒng)參數(shù),提升算法安全性方面的廣泛應(yīng)用[5]。
但在當(dāng)前的研究中,仍存在一些未解決的問(wèn)題,主要體現(xiàn)在:混沌雖然具有非線性的特點(diǎn),但在用于S盒的構(gòu)造算法時(shí),由于S盒大小本身的限制,靜態(tài)S盒在圖像加密中的性能不能達(dá)到實(shí)際應(yīng)用的要求;得到較高非線性度的S盒,利用更復(fù)雜的迭代系統(tǒng)會(huì)導(dǎo)致加密算法效率降低。
1 加密算法
提出利用一維Logistic映射結(jié)合明文的動(dòng)態(tài)S盒構(gòu)造方法,并引入置亂與擴(kuò)散步驟構(gòu)造加密方案。方案中利用兩種混沌映射確保加密的安全性,并降低算法復(fù)雜度。構(gòu)造與被加密圖像相關(guān)的動(dòng)態(tài)S盒,利用混沌特性很好的貓映射對(duì)明文進(jìn)行置亂,擴(kuò)散以達(dá)到雪崩效應(yīng)。方法能夠?qū)⒒煦缋碚摵蚐盒替換加密兩種技術(shù)的優(yōu)勢(shì)結(jié)合在一起,提供一種隨機(jī)性更強(qiáng)、復(fù)雜度更低的加密方案。
1.1一維Logistic映射
其數(shù)學(xué)表達(dá)式為:
1.2明文密鑰建立關(guān)系
將明文輸入公式(2)得到一個(gè)取值在[0,1]的數(shù)[keyi],用于構(gòu)造動(dòng)態(tài)S盒。
1.3構(gòu)造動(dòng)態(tài)S盒
[keyi]作為混沌系統(tǒng)的初值[x1],控制參數(shù)為3.99,生成256長(zhǎng)度的數(shù)組與0~255的整數(shù)構(gòu)建映射關(guān)系,即替換數(shù)組。由于明文不同因此構(gòu)造的S盒也不同。
1.4加密步驟
Step1:輸入一張圖片[P(m,n)],m與n為圖片像素的高度與寬度,也表現(xiàn)出了像素?cái)?shù)目。
Step2:將圖片矩陣代入迭代公式,得出密鑰[keyi(i=1,2,...,8)]。其中, pj代表圖像中第j個(gè)像素,ki(i=1,2,…,8)為用戶選定的8個(gè)不同的范圍在(0,1)的初始值。[keyi(i=1,2,...,8)]∈(0,1)用于生成構(gòu)造動(dòng)態(tài)S盒所需的密鑰。
Step3:將明文分塊[Bi(i=1,2,...,8)],每塊大小為[m4×n2]。
Step4:構(gòu)造每一明文塊[Bi(i=1,2,...,8)]的S盒[S-boxi(i=1,2,...,8)]。將密鑰作為初始值輸入混沌系統(tǒng)。得到替換后圖像[P1]。
Step5:利用貓映射公式如下:
對(duì)[P1]進(jìn)行置亂,得到置亂后圖像[P2]。
Step6:將[P2]代入擴(kuò)散公式:
得到擴(kuò)散后的結(jié)果[P3]。Step7:重復(fù)5次Step5,得到加密后圖像,加密步驟見(jiàn)圖。
解密步驟為加密步驟的逆步驟。
2 檢驗(yàn)與分析
為了檢驗(yàn)本文加密算法的性能,與其他四種圖像加密算法做比較。分別為Scheme1[6],Scheme2[7],Scheme3[8],Scheme4[9]。
2.1 直方圖分析
圖2分析了幾個(gè)平面圖像的灰度直方圖和圖像加密后的直方圖,可以看出,加密圖像的直方圖是均勻并且完全不同于明文各自的直方圖。因此.該算法可以抵抗任何統(tǒng)計(jì)攻擊。
2.2相關(guān)分析
計(jì)算和比較原圖像和密文圖像中鄰域像素的相關(guān)性。計(jì)算方法如公式(5)所示:
從表1中可以看出,該加密方案產(chǎn)生去相關(guān)的相鄰像素圖像,清晰的的圖像的相關(guān)系數(shù)接近1,但那些加密圖像的平均相關(guān)性水平近似等于0,這表明,提出的方案對(duì)統(tǒng)計(jì)理論的攻擊是安全的。
2.3密鑰空間分析
對(duì)于一個(gè)健壯的加密方案,密鑰空間必須足夠大,才能使蠻力攻擊不可行。在加密過(guò)程中,算法的密鑰空間是指所有可能的算法的排列組合。為了考察該密鑰有效抵抗攻擊的能力,隨機(jī)擬定一個(gè)初值,用16位十進(jìn)制數(shù)表示(1位整數(shù),15位小數(shù)),則本文算法的密鑰空間為(1016)6×28×(28-1)4=2359。
2.4密鑰敏感度分析
密鑰敏感度分析滿足了用戶不受網(wǎng)絡(luò)襲擊的需求,本文做了一系列的密鑰敏感度測(cè)試:用不同的尺寸加密了不同尺寸大小的灰度圖像[P(M,M)],在用最初密鑰加密的圖像和在這種情況下加密的圖像的不同像素的百分比在表2顯示:
從表2中,可以清晰地看出,在密鑰[keyi(i=1,2,...,8)]中細(xì)小的差別就可以導(dǎo)致加密圖像大的改變。因此,一個(gè)好的加密系統(tǒng)必須具有較高的敏感度。
2.5執(zhí)行時(shí)間
一個(gè)圖像加密算法的執(zhí)行時(shí)間取決于許多因素,如CPU結(jié)構(gòu),內(nèi)存大小,操作系統(tǒng),程序設(shè)計(jì)語(yǔ)言,編譯器選項(xiàng),編程技巧和代碼優(yōu)化等。當(dāng)用相同的環(huán)境進(jìn)行了分析比較,會(huì)提出了明確的加密方案,用于測(cè)量圖像密碼的速度。
為了更準(zhǔn)確地測(cè)出加密速度,實(shí)現(xiàn)了MATLAB代碼的加密算法和其他方案。多次執(zhí)行每一組的定時(shí)測(cè)試,測(cè)試結(jié)果如表3所示。經(jīng)過(guò)該算法和其他加密算法的加密速度的比較,得出該加密算法有著可接受的加密速度的結(jié)論。
3總結(jié)
針對(duì)開(kāi)放網(wǎng)絡(luò)環(huán)境中存在的數(shù)字圖像隱私保護(hù)這一亟待解決的問(wèn)題,基于混沌理論提出一種創(chuàng)新、安全、有效的圖像加密算法,確保圖像安全。在方案設(shè)計(jì)方面,借助一維混沌映射生成動(dòng)態(tài)S盒,并結(jié)合S盒替換、置亂、擴(kuò)散三種技術(shù)設(shè)計(jì)加密方案。在實(shí)驗(yàn)驗(yàn)證方面,分別從密鑰空間分析、密鑰敏感度分析、直方圖分析、相關(guān)性分析、明文與密文對(duì)比分析、執(zhí)行時(shí)間等方面全面驗(yàn)證所提出加密方案的有效性。
參考文獻(xiàn):
[1] 王雅慶. 基于混沌的數(shù)字圖像加密算法研究[D]. 重慶大學(xué), 2013.
[2] Wang Y, Wong K W, Liao X, et al. A chaos-based image encryption algorithm with variable control parameters[J]. Chaos Solitons & Fractals, 2009, 41(4):1773-1783.
[3] Wang Y, Wong K W, Liao X, et al. A new chaos-based fast image encryption algorithm[J]. Applied Soft Computing, 2011, 11(1):514-522.
[4] Seyedzadeh S M, Mirzakuchaki S. Image encryption scheme based on Choquet fuzzy integral with pseudo-random keystream generator[J]. 2011.
[5] Zhou Y, Long B, Chen C L P. Image encryption using a new parametric switching chaotic system[J]. Signal Processing, 2013, 93(11):3039-3052.
[6] X. Wang, L. Teng, X. Qin, A novel colour image encryption algorithm based on chaos, Signal Process. 92 (4) (2012) 1101–1108.
[7] X. Wang, L. Liu, Y. Zhang, A novel chaotic block image encryption algorithm based on dynamic random growth technique, Opt. Lasers Eng. 66 (2015) 10–18
[8] Z. Hua, Y. Zhou, C.M. Pun, C.L. Philip Chen, 2D sine logistic modulation map for image encryption, Inf. Sci. 297 (2015) 80–94
[9] X.Y. Wang, L. Yang, R. Liu, A. Kadir, A chaotic image encryption algorithm based on perceptron model, Nonlinear Dyn. 62 (3) (2010) 615–621.
【通聯(lián)編輯:唐一東】