丁汀, 王曉侃
(1. 河南機(jī)電職業(yè)學(xué)院 信息工程學(xué)院, 河南 新鄭 451191;2. 河南機(jī)電職業(yè)學(xué)院 機(jī)電工程學(xué)院, 河南 新鄭 451191;3. 北京交通大學(xué) 電子信息工程學(xué)院, 北京 100044)
像素交叉移位變換耦合動(dòng)態(tài)和諧搜索優(yōu)化機(jī)制的圖像加密算法
丁汀1, 王曉侃2,3
(1. 河南機(jī)電職業(yè)學(xué)院 信息工程學(xué)院, 河南 新鄭 451191;2. 河南機(jī)電職業(yè)學(xué)院 機(jī)電工程學(xué)院, 河南 新鄭 451191;3. 北京交通大學(xué) 電子信息工程學(xué)院, 北京 100044)
提出一種像素交叉移位變換耦合動(dòng)態(tài)和諧搜索優(yōu)化機(jī)制的圖像加密算法.首先,引入鋸齒填充曲線,對(duì)明文進(jìn)行掃描,形成一維像素序列;基于明文像素位置,定義像素交叉移位變換模型,耦合均布Logistic映射輸出的密鑰,對(duì)明文完成高效置亂.然后,定義新的和諧更新模型,以密文信息熵值與相關(guān)性為目標(biāo)函數(shù),改進(jìn)動(dòng)態(tài)和諧搜索機(jī)制,構(gòu)建像素?cái)U(kuò)散函數(shù),徹底改變置亂圖像的像素值.最后,引入HASH檢測(cè)函數(shù),賦予算法認(rèn)證功能.結(jié)果表明:與當(dāng)前混沌加密技術(shù)相比,所提算法具有更高的加密安全性和通用性. 關(guān)鍵詞: 圖像加密; 像素交叉移位變換; 鋸齒填充曲線; 動(dòng)態(tài)和諧搜索; 像素搜索變換; HASH檢測(cè)函數(shù)
圖像包含了諸多信息與秘密,是當(dāng)前用戶常用的介質(zhì),給各行業(yè)帶來了巨大便利[1-2].然而,由于數(shù)字圖像在免費(fèi)的網(wǎng)絡(luò)環(huán)境中傳輸,容易遭受到未知授權(quán)的攻擊,使圖像信息被竊取,帶給用戶巨大的隱患[3].因此,對(duì)圖像進(jìn)行加密保護(hù),防止信息被竊取顯得非常重要[4].但經(jīng)典數(shù)據(jù)加密算法并沒有綜合考慮圖像的大數(shù)據(jù)容量與較高的冗余度等特性,難以用于數(shù)字圖像加密[5].為此,諸多學(xué)者設(shè)計(jì)了相應(yīng)的數(shù)字圖像的加密技術(shù).當(dāng)前主流的加密算法是基于混沌系統(tǒng)的加密機(jī)制[6-8],這種加密技術(shù)雖然取得了較好的保密效果,但該技術(shù)過度依賴混沌參數(shù),缺乏大尺度傳播效應(yīng),無法加密非方形明文,且隨著混沌系統(tǒng)的周期性迭代,其混沌行為會(huì)逐步衰落,從而降低了算法的安全性.本文提出一種像素交叉移位變換耦合動(dòng)態(tài)和諧搜索聯(lián)合優(yōu)化機(jī)制的圖像加密算法,并進(jìn)行仿真實(shí)驗(yàn).
圖1 文中算法的加密過程Fig.1 Encryption process of this algorithm
為了避免混沌加密技術(shù)的不足,設(shè)計(jì)了像素交叉移位變換耦合動(dòng)態(tài)和諧搜索優(yōu)化機(jī)制的圖像加密算法來提高安全性,其加密過程如圖1所示.
1.1 基于像素交叉移位變換模型的明文置亂
令初始圖像的大小為M×N,通過引入鋸齒填充曲線[9],對(duì)明文進(jìn)行掃描,形成一維像素序列P={P(0),P(1),…,P(M×N-1)}.由于傳統(tǒng)的raster,Zigzag及Hilbert填充曲線[10]的置亂度不高,且只能用于方形圖像的掃描,故文中基于鋸齒曲線模型,定義了鋸齒掃描機(jī)制.鋸齒曲線示意圖,如圖2所示.其計(jì)算模型為
(1)
圖2 鋸齒曲線示意圖Fig.2 Sketch map of saw tooth curve
式(1)中:a為曲線的高度;T為曲線周期.
由圖2可知:該鋸齒掃描模型是由連續(xù)的若干個(gè)直角三角形組成,利用鋸齒掃描模型,通過對(duì)三角形中的3個(gè)點(diǎn)完成一次整體遍歷,將明文像素形成一維數(shù)組,實(shí)現(xiàn)初始置亂.
由P={P(0),P(1),…,P(M×N-1)},計(jì)算像素交叉位置,可得
(2)
式(2)中:P(L-1)為前一個(gè)混淆像素的灰度值;L為當(dāng)前像素位置;L′為像素交叉后的新位置;Sp(L)為均布Logistic映射的輸出密鑰,其模型為
(3)
式(3)中:Xi+1,Xi分別為式(3)的第(i+1),i個(gè)迭代值;λ為控制參數(shù),當(dāng)-4≤λ≤4時(shí),映射是混沌的.
因此,根據(jù)式(2)計(jì)算得到的像素位置L′,設(shè)計(jì)像素交叉移位變換機(jī)制,即
(4)
(5)
圖3 像素交叉移位變換機(jī)制Fig.3 Pixel cross shift mechanism
圖4 像素G的交叉移位變換Fig.4 Cross shift of pixel G
為了直觀描述像素交叉移位變換模型,在初始圖中任意選擇7個(gè)像素,如圖3,4所示.如果圖像中的像素A之前的像素均被擾亂,則剩下的像素B,C,D均是交叉移位變換目標(biāo),如圖3所示.借助像素B,C,D,實(shí)現(xiàn)與像素E,F(xiàn),G位置的變換.如果兩個(gè)初始圖像的像素G有微弱的差異,令其灰度值分別為P(G),P(G′).由式(4)可知:位置的差異會(huì)影響到像素C的變換.依據(jù)圖4,像素P(C)被移位變換為P(K),圖像中剩余像素以此類推.利用像素交叉移位變換機(jī)制處理明文,能夠高度置亂其像素位置.
為了衡量所提像素交叉變換模型的置亂率,將文獻(xiàn)[11]視為對(duì)照組,通過計(jì)算兩種算法的置亂率進(jìn)行評(píng)估.置亂率模型[12]為
(6)
式(6)中:Lsd,LSD為混淆前后圖像的小波系數(shù)方差值;u為歸一化因子.
1.2 基于動(dòng)態(tài)和諧搜索機(jī)制的像素?cái)U(kuò)散
為了改變像素值,構(gòu)建置亂-擴(kuò)散的加密體系,提高算法的安全性,引入和諧搜索(HS)算法[13],定義像素?cái)U(kuò)散模型,改變圖像像素灰度值.HS算法主要是模擬音樂演奏,即一個(gè)音樂家搜尋一個(gè)更優(yōu)美和諧狀態(tài)過程的方法[14].
1.2.1 目標(biāo)函數(shù)的確定 和諧搜索實(shí)質(zhì)是一個(gè)優(yōu)化更新過程,通過最小的成本獲取最大的利益,故其目標(biāo)函數(shù)為
(7)
式(7)中:F(X″)為全局函數(shù);X″為設(shè)計(jì)參數(shù);LB(j),UB(j)分別為第j個(gè)參數(shù)的下邊界、上邊界.
然而,文中加密技術(shù)目的是最大化密文的信息熵Hm[8]與最小化相鄰像素的相關(guān)性Cx,y[9],故定義新的目標(biāo)函數(shù)為
(8)
(9)
(10)
式(8)~(10)中:L為圖像灰度級(jí)別;p(mi)為像素mi出現(xiàn)的幾率;x,y分別為圖像中任意相鄰的兩個(gè)像素點(diǎn)的灰度值;n為相鄰點(diǎn)的數(shù)量;E()為均值.
1.2.2 和諧記憶庫的初始化 在進(jìn)行目標(biāo)搜索更新之前,需要對(duì)其參數(shù)完成初始化.令X″i=(Xi(1),Xi(2),…,Xi(n)),它是和諧記憶庫中的第i行諧音,則和記憶庫中的每一個(gè)諧音都可被初始化為
(11)
式(11)中:r為[0,1]內(nèi)的隨機(jī)數(shù).
依據(jù)模型(11)完成初始化后,形成了和諧記憶矩陣HM,即
(12)
為了提高和諧搜索機(jī)制的初始參數(shù)的隨機(jī)特性,利用HM中的奇數(shù)和偶數(shù)的搜索引擎視為明文圖像的寬度和高度,故模型(11)中的系數(shù)UB(j),LB(j)分別為
(13)
(14)
式(14)中:W,H分別為明文圖像的寬度與高度.
依據(jù)模型(13),(14)可獲取密鑰 Xi,即
(15)
(16)
式(15),(16)中:i為HM當(dāng)前所在位置的引擎.
對(duì)于任意的明文,其寬度W與高度H都是常量.因此,對(duì)于任意的奇數(shù)或偶數(shù)j,模型(16)是一個(gè)線性函數(shù).文中可以確保密鑰流的偶數(shù)或奇數(shù)引擎元素分別分布在[1,W],[1,H]中.
1.2.3 諧音的更新 在圖像加密技術(shù)中,每個(gè)加密過程中的諧音都是一個(gè)密鑰.因此,定義了新的諧音更新模型,在加密期間,文中算法能夠不斷更新諧音,產(chǎn)生新的密鑰,使該技術(shù)具有較高的隨機(jī)動(dòng)態(tài)性與安全性.
在所提加密技術(shù)中,新的諧音生成方法有:1) 和諧記憶依戀率(HMCR);2) 音調(diào)調(diào)整率(PAR);3) 隨機(jī)重新初始化.
對(duì)此,為了生成新諧音Xnew(j),首先,在[0,1]內(nèi)生成一個(gè)隨機(jī)數(shù)r1,若r1低于HMCR,則Xnew(j)必須依據(jù)式(17),從和諧記憶庫HM中選擇;否則,根據(jù)式(11)隨機(jī)生成,即
(17)
若Xnew(j)是從HM中選擇,將得到另外一個(gè)隨機(jī)數(shù)r2∈[0,1].最終,r2將與音調(diào)調(diào)整率PAR完成比較,若r2 (18) 式(18)中:BW(j)為第j個(gè)諧音的帶寬. (19) (20) 式(19),(20)中:W,H分別為明文圖像的寬度與高度. 通過迭代和諧動(dòng)態(tài)搜素算法,使模型(8)的輸出值最大.此時(shí)的Xnew(i)即最佳密鑰,利用此密鑰,完成像素?cái)U(kuò)散. 1.2.4 基于搜索變換模型的像素?cái)U(kuò)散 由于像素交叉移位變換只能改變其空間位置,無法變換其灰度值,故基于動(dòng)態(tài)和諧搜索機(jī)制,利用該機(jī)制輸出的密鑰Xnew(j),定義搜索變換模型,以完成像素?cái)U(kuò)散,最大化密文的信息熵值為 (21) 1.3 基于HASH函數(shù)的圖像信息認(rèn)證 引入HASH檢測(cè)函數(shù)[15],估算擴(kuò)散密文與初始明文的HASH值,對(duì)圖像是否被篡改進(jìn)行認(rèn)證.若初始明文大小為I,經(jīng)過和諧搜索擴(kuò)散后,最終密文為I″,則圖像信息真?zhèn)螞Q策過程有以下3個(gè)步驟. (22) 步驟3 令初始明文I,擴(kuò)散密文I″的HASH值分別是H1(i),H2(i),如果H1(i)=H2(i),則表明文中算法安全可靠,明文在傳輸過程中有效抵御了攻擊;如果H1(i)≠H2(i),則表明所提加密技術(shù)安全性不高,明文在傳輸期間遭受到篡改. 采用Matlab工具對(duì)文中算法的加密安全度進(jìn)行驗(yàn)證.同時(shí),為體現(xiàn)文中算法的優(yōu)異性,將當(dāng)前安全性較高的文獻(xiàn)[6]、文獻(xiàn)[16]加密算法視為對(duì)照組.初始密鑰為:r=0.5,LB=1,a=8,T=4,λ=3,x0=0.35,r2=0.75,HMCR=0.6. 2.1 加密質(zhì)量對(duì)比分析 文中算法的通用性測(cè)試,如圖5所示.首先,以非方形明文(圖5(a))為目標(biāo),利用文中算法對(duì)其完成加密,驗(yàn)證所提技術(shù)的通用性與安全性.由圖5可知:文中算法能夠?qū)Ψ欠叫文繕?biāo)完成置亂與擴(kuò)散,且具有較高的加密質(zhì)量(圖5(b),圖5(c)).這是因?yàn)槲闹兴惴ǘx了像素交叉移位變換模型,使其不受明文尺寸限制. (a) 非方形明文 (b) 文中算法的置亂結(jié)果 (c) 文中算法的加密結(jié)果 圖5 文中算法的通用性測(cè)試Fig.5 Universal testing of algorithm in paper 3種算法的加密效果,如圖6所示.由于文獻(xiàn)[6]、文獻(xiàn)[16]無法加密非方形目標(biāo),為了體現(xiàn)公平性,將方形明文(圖6(a))視為測(cè)試對(duì)象,利用文中算法與文獻(xiàn)[6]、文獻(xiàn)[16] 對(duì)其完成加密.由圖6可知:從視覺上看,3種加密技術(shù)都具有較好的可靠性,明文的信息都被有效隱藏. (a) 初始明文 (b) 文中算法 (c) 文獻(xiàn)[6] (d) 文獻(xiàn)[16]圖6 3種算法的加密效果Fig.6 Encryption effect of three algorithms 為了量化3種算法的安全性差異,利用密文信息熵H(m)進(jìn)行評(píng)估[17].測(cè)試數(shù)據(jù)顯示:文中算法擁有最高的H(m)值,達(dá)7.995 2,非常接近8;而文獻(xiàn)[6]、文獻(xiàn)[16]的H(m)值分別為7.971 6,7.987 9.這是因?yàn)槲闹屑用芗夹g(shù)定義了定義像素交叉移位變換模型,高度置亂明文,并利用動(dòng)態(tài)和諧搜索算法擴(kuò)散置亂圖像,最大化密文的熵值.文獻(xiàn)[6]則是通過融合2個(gè)低維Arnold映射和Logistic映射,增加置亂與擴(kuò)散的關(guān)聯(lián)性,從而對(duì)圖像完成加密,但低維映射的加密安全性不高.文獻(xiàn)[16]雖然考慮了時(shí)間延遲現(xiàn)象,提高了序列的偽隨機(jī)特性,但其主要依靠四維超混沌系統(tǒng)實(shí)現(xiàn)像素?cái)U(kuò)散,在迭代期間,因混沌周期性而降低算法的安全度,導(dǎo)致其密文的H(m)值略低于文中算法. 2.2 抗差分攻擊能力測(cè)試 像素變化率(NPCR)與統(tǒng)一平均變化強(qiáng)度(UACI)是評(píng)估加密技術(shù)抗擊差分攻擊能力的常用指標(biāo),故通過測(cè)試密文的NPCR與UACI曲線進(jìn)行量化.3種算法的NPCR與UACI曲線,如圖7所示.圖7中:n為迭代輪數(shù). 由圖7可知:文中算法通過聯(lián)合鋸齒填充曲線與像素交叉移位變換模型,徹底擾亂像素位置,并利用動(dòng)態(tài)和諧搜索機(jī)制改變圖像像素值,通過不斷地迭代優(yōu)化,使其NPCR與UACI值最大化;文獻(xiàn)[6]、文獻(xiàn)[16]主要依賴混沌軌跡實(shí)現(xiàn)像素的擴(kuò)散,而混沌系統(tǒng)在反復(fù)迭代過程中,因其周期性而降低其混沌行為與窗口,導(dǎo)致算法的安全性均低于文中算法. 由圖7還可知:文中算法與文獻(xiàn)[6]具有相當(dāng)?shù)募用苄?,只需兩輪置亂-擴(kuò)散迭代,算法就趨于收斂,NPCR與UACI值達(dá)到了穩(wěn)定值,而文獻(xiàn)[16]雖然保密程度高于文獻(xiàn)[6],但文獻(xiàn)[16]是迭代四維超混沌Chens系統(tǒng)改變像素值,增大了算法的復(fù)雜度,需要經(jīng)過4輪迭代才能進(jìn)入收斂狀態(tài). (a) NPCR值測(cè)試結(jié)果 (b) UACI值測(cè)試結(jié)果圖7 3種算法的抗差分攻擊能力測(cè)試Fig.7 Resist differential attack test resluts of three algorithms 2.3 相鄰兩個(gè)像素點(diǎn)的相關(guān)性分析 明文相鄰像素之間的強(qiáng)烈相關(guān)性最容易給攻擊者留下攻擊線索,故加密技術(shù)通常需要降低此種相關(guān)性[16].任意擇取1 000對(duì)相鄰像素點(diǎn),依據(jù)文獻(xiàn)[16]計(jì)算二者的相關(guān)Cx,y.文中算法消除Cx,y的測(cè)試結(jié)果,如圖8所示.圖8中:n′為像素分布數(shù)量. (a) 明文圖像 (b) 密文 圖8 文中算法的相關(guān)性測(cè)試Fig.8 Correlation test of this algorithm 由圖8可知: 明文的相關(guān)性非常劇烈,聚集為對(duì)角線, 而利用所提加密技術(shù)對(duì)其置亂-擴(kuò)散后,有效降低了Cx,y,其值約為0.001 8.空間上另外2個(gè)方向的Cx,y測(cè)試結(jié)果,如表1所示.由表1可知:文中算法具有較高的可靠性,能大幅度削弱圖像相鄰像素的相關(guān)性,提高圖像傳輸安全度. 表1 3個(gè)方向的相關(guān)性測(cè)試 為了提高加密算法的適應(yīng)性與安全性,設(shè)計(jì)了一種新的加密技術(shù),通過定義像素交叉移位變換,使算法不受明文尺寸的限制,可對(duì)非方形明文完成置亂.通過替換傳統(tǒng)和諧搜索機(jī)制的目標(biāo)函數(shù),形成了一種動(dòng)態(tài)和諧搜索算法,完成像素加密.今后的研究將考慮引入水印技術(shù)進(jìn)一步提高算法的安全性. [1] 劉冰,潘大兵.新三維混沌映射及其在數(shù)字圖像信息加密中的應(yīng)用[J].華僑大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,36(6):655-658. [2] HUANG Xiaoling.Image encryption algorithm using chaotic Chebyshev generator[J].Nonlinear Dynamics,2012,67(4):2411-2417. [3] ZHU Congxu,LIAO Chunlong,DENG Xiaoheng.Breaking and improving an image encryption scheme based on total shuffling scheme[J].Nonlinear Dynamics,2013,71(1/2):25-34. [4] ZHANG Xuanping,ZHAO Zhongmeng.Chaos-based image encryption with total shuffling and bidirectional diffusion[J].Nonlinear Dynamics,2014,75(1):319-330. [5] 朱曉升,廖曉峰.基于圖像分區(qū)的置亂算法[J].計(jì)算機(jī)技術(shù)與發(fā)展,2015,25(12):52-55. [6] 謝國(guó)波,丁煜明.基于Logistic映射的可變置亂參數(shù)的圖像加密算法[J].微電子學(xué)與計(jì)算機(jī),2015,12(4):111-115. [7] 柴秀麗,甘志華.基于超混沌系統(tǒng)的位級(jí)自適應(yīng)彩色圖像加密新算法[J].計(jì)算機(jī)科學(xué),2015,38(6):149-152. [8] YE Guodong.A block image encryption algorithm based on wave transmission and chaotic systems[J].Nonlinear Dynamics,2014,75(3):417-427. [9] SMREK A,EXANDER Y G.A novel family of space-filling curves in their relation to chromosome conformation in eukaryotes[J].Physica A: Statistical Mechanics and Its Applications,2013,392(24):6375-6388. [10] 胡亦,王琳娜,朱恭生.鋸齒空間填充曲線耦合壓縮感知的彩圖灰度化實(shí)時(shí)加密算法[J].激光雜志,2015,26(12):12-18. [11] 曹光輝,賈丹,張毅智.基于超混沌序列的圖像加密方案[J].計(jì)算機(jī)應(yīng)用研究,2013,30(10):3110-3113. [12] 范鐵生,張紹成,張忠清.小波域局部標(biāo)準(zhǔn)差的圖像置亂評(píng)價(jià)方法[J].微電子學(xué)與計(jì)算機(jī),2014,35(4):931-935. [13] HUANG Ming,GUO Shujie,XU Liang.Application of improved harmony search algorithm in test case selection[J].Journal of Software,2014,9(5):1170-1176. [14] MOHAMMED S A.A hybrid harmony search algorithm for ab initio protein tertiary structure prediction[J].Network Modeling Analysis in Health Informatics and Bioinformatics,2012,1(3):69-85. [15] SONG Guangjia,JI Zhenzhou.Novel duplicate address detection with Hash function[J].Plos One,2016,11(3):e0151612-e0151619. [16] YE Guodong,WONG K W.An image encryption scheme based on time-delay and hyper-chaotic system[J].Nonlinear Dynamics,2013,71(1):259-267. [17] 徐亞,張紹武.基于Arnold映射的分塊雙層自適應(yīng)擴(kuò)散圖像加密算法[J].中國(guó)圖象圖形學(xué)報(bào),2015,20(6):740-748. (責(zé)任編輯: 錢筠 英文審校: 吳逢鐵) Image Encryption Algorithm Based on Pixel Cross Shift Transform Coupling Dynamic Harmony Search Optimization Mechanism DING Ting1, WANG Xiaokan2,3 (1. College of Information Engineering, Henan Mechanical and Electrical Vocational College, Xinzheng 451191, China;2. College of Mechanical and Electrical Engineering,Henan Mechanical and Electrical Vocational College, Xinzheng 451191, China;3. College of Electronic and Information Engineering, Beijing Jiaotong University, Beijing 100044, China) The image encryption algorithm based on pixel cross shift transform coupling dynamic harmony search optimization mechanism was proposed in this paper. Firstly, one dimensional pixel sequence was obtained by introducing the saw tooth filling curve to scan the plain; and the plain was permutated by defining the pixel cross shift conversion model based on plain pixel location and coupling the key outputted by Logistic map for enhancing its general performance. Then the dynamic search diffusion model was constructed by the dynamic harmony search mechanism to completely change the pixel value of the permutation image; and finally, the HASH function was introduced to gives the authentication function to this algorithm. Test results show that: this algorithm has higher encryption security and generality compared to the present chaotic encryption technique. Keywords: image encryption; pixel cross shift transform; saw tooth filling curve; dynamic harmony search; pixel search trsnsform; HASH detection function 10.11830/ISSN.1000-5013.201702018 2016-01-26 丁汀(1972-),女,副教授,主要從事圖像處理和數(shù)據(jù)挖掘的研究.E-mail:happy3305@sohu.com. 河南省重點(diǎn)科技攻關(guān)項(xiàng)目(132102210385); 河南省教育技術(shù)裝備和實(shí)踐教育研究基金資助項(xiàng)目(GZS013) TP 391 A 1000-5013(2017)02-0229-072 實(shí)驗(yàn)結(jié)果與分析
3 結(jié)束語