楊吉云,吳 昊
(重慶大學 計算機學院,重慶 400044)
隨著數(shù)字技術和通信網(wǎng)絡的發(fā)展,越來越多的數(shù)字信息需要通過網(wǎng)絡傳輸。由于數(shù)字圖像具有直觀、生動等特點,已成為應用最廣泛的一種數(shù)字信息,但其也面臨著日益嚴重的安全威脅。數(shù)字圖像加密技術是一種有效保護數(shù)字圖像安全的方法,由于混沌加密技術具有實現(xiàn)簡單、魯棒性好、加密速度快、安全性高等特點,經(jīng)過多年的發(fā)展,已被應用于圖像加密技術研究中[1-3]。文獻[1]提出一種基于置亂擴散結構的采用時空混沌系統(tǒng)的圖像加密算法。文獻[2]提出了一種提出了基于多維混沌系統(tǒng)同時對圖像像素位置置亂和像素值加密的新算法。但安全性分析表明,混沌加密技術保護圖像安全性的能力還需進一步提高[4-5]。文獻[4]指出加密算法對于明文改變的低敏感性使得攻擊者易于采用選擇明文攻擊破解加密算法的置亂過程。文獻[5]研究發(fā)現(xiàn)當密鑰與明文無關及加密過程中各像素相互獨立,算法無法有效抵抗已知明文和選擇明文攻擊。
文獻[6]中首次提出了DNA計算,其具有超大規(guī)模并行性、超低的能量消耗和超高的存儲密度等優(yōu)點。DNA計算作為提高混沌圖像加密技術安全性的有效途徑,已被一些學者應用于混沌圖像加密方案。文獻[7]將DNA序列操作應用到了加密算法的置亂和擴散過程,有效提高了算法抵抗明文攻擊的能力。文獻[8]在置亂和擴散階段有效結合混沌序列的隨機性和DNA編碼的特性,擴大了算法的密鑰空間并且提高了抵抗統(tǒng)計攻擊的能力。
然而,當前結合混沌系統(tǒng)和DNA計算的圖像加密算法也存在不足之處。文獻[9]通過對加密算法數(shù)學模型的分析,找到了加密系統(tǒng)中存在的線性關系,通過對加密算法進行等價代換,一方面減小了算法密鑰空間,削弱了算法抵抗窮舉攻擊的能力,另一方面針對算法采用單一的編碼規(guī)則和運算規(guī)則的缺陷,運用選擇明文攻擊獲取了算法的等價密鑰。文獻[10]指出了采用固定編碼和單一運算規(guī)則的DNA混沌圖像加密算法容易通過選擇明文攻擊進行破解。
針對上述DNA混沌圖像加密算法中存在的不足,本文結合混沌系統(tǒng)和DNA計算,通過用Intertwining Logistic映射產(chǎn)生的隨機序列值動態(tài)選擇彩色圖像R、G、B信道每個像素在進行DNA加密計算時所采用的編碼規(guī)則和運算規(guī)則,避免算法因采用固定編碼規(guī)則和單一運算規(guī)則而導致易被破解的缺陷。采用模擬退火算法構造置亂序列分別對R、G、B信道行和列進行充分置亂,再結合混沌映射通過動態(tài)DNA計算對圖像進行擴散,消除加密系統(tǒng)中存在的線性關系,并解決算法抵御窮舉攻擊及明文攻擊能力弱的問題。
Intertwining Logistic映射可被描述為以下形式:
(1)
其中,0<μ≤3.999,|k1|>33.5,|k2|>37.9,|k3|>35.7。Intertwining Logistic映射比Logistic映射具有更優(yōu)秀的混沌特性,且因其沒有空白窗口而具有更好的特性[11],如圖1所示。

圖1 Intertwining Logistic映射
一個DNA序列由A、T、C、G 4種核酸堿基組成,其中,A與T,C與G互補配對。二進制序列中0與1互補,因此可以使用A、C、G、T編碼00、01、10、11,根據(jù) Watson.Crick互補規(guī)則[12]有8中編碼規(guī)則符合要求,如表1所示。另外,根據(jù)編碼規(guī)則0定義的DNA加法、減法和異或操作,分別如表2~表4所示。

表1 DNA編碼規(guī)則

表2 DNA加法運算規(guī)則

表3 DNA減法運算規(guī)則

表4 DNA異或運算規(guī)則
本文算法由2個階段組成:行列置亂階段和DNA加密擴散階段。第1階段利用Intertwining Logistic映射產(chǎn)生隨機序列,將其與模擬退火算法相結合構造出置亂序列,然后對圖像進行置亂。第2階段通過Intertwining Logistic映射產(chǎn)生隨機序列,先根據(jù)隨機序列值對圖像進行DNA編碼并選擇運算規(guī)則,再進行DNA加密計算。算法加密流程如圖2所示。

圖2 本文算法加密流程
算法的具體執(zhí)行過程如下所示。

(2)

(3)
式(2)中sumr,sumg,sumb分別為各信道像素和。
步驟2對于信道R,借鑒文獻[13]采用模擬退火算法(SA)構造無序序列的方法,將r1、r2和1,2,…,M作為SA輸入值,構造行置亂序列u1,u2,…,uM,其中ui∈[1,M]。同樣用c1、c2和1,2,…,N構造列置亂序列v1,v2,…,vN,其中vi∈[1,N]。采用相同方法為信道G和B構造置亂序列。
步驟3R信道中先把第1,2,…,M行重新置于第u1,u2,…,uM行,再將第1,2,…,N列重新置于第v1,v2,…,vN列,獲取置亂信道R′。同理獲取信道G、B的置亂信道G′、B′。

l(i)=floor(mod(l(i)×1 014,256))
(4)
在DNA加密計算過程中隨機序列與信道序列的DNA編碼方式和計算規(guī)則選取如下所示。
1)DNA編碼。由表1可知,DNA編碼有8種不同規(guī)則,在DNA加密計算中,由隨機序列值l(i)根據(jù)式(5)確定每個信道序列和隨機序列第i個值的編碼規(guī)則rule。編碼時將隨機序列值和信道序列值分別轉(zhuǎn)換為8位二進制序列,再將二進制序列轉(zhuǎn)換為由4個堿基組成的DNA序列。
rule=mod(l(i),8)
(5)
2)計算規(guī)則的選取。本文算法中DNA計算公式如式(6)所示,其中P(i) 為信道序列第i個值的DNA序列,C(i)為P(i)的密文 DNA序列,C(i-1)為密文對應的前一個密文DNA序列,L(i)為隨機序列第i個值的DNA序列。運算規(guī)則frule(*,·)定義如表5所示,其中DNA運算規(guī)則frule由l(i)根據(jù)式(7)確定。
C(i)=P(i)×C(i-1)·L(i)
(6)
frule=mod(l(i),9)
(7)

步驟5由式(8)獲得sumc0,根據(jù)其值利用式(5)將其編碼為初始DNA密文C0。將C0作為PR初始密文CR(0),依次先根據(jù)LR的元素LR(i)把PR(i)和LR(i)編碼成長為4的DNA序列并選取運算規(guī)則,再利用式(6)進行DNA加密計算獲取CR(i),最后獲得長M×N×4的PR密文DNA序列CR,其中,i=1,2,…,MN。將CR(MN)作為PG初始密文,進而獲得CG;然后將CG(MN) 作為PB初始密文,計算CB。
sumc0=mod((sumr+sumg+sumb),256)
(8)
步驟6將3個密文序列根據(jù)對應隨機序列值利用式(5)選擇編碼規(guī)則進行解碼,然后轉(zhuǎn)換為3個M×N的密文矩陣,合并3個矩陣得到密文圖像C。
解密算法為加密算法的逆,具體過程如下:
步驟1使用擴散密鑰獲取隨機序列LR、LG、LB,利用式(4)使其值l(i)∈[0,255](i=1,2,…,MN)。再將密文圖像C各信道轉(zhuǎn)化為長M×N的一維密文信道序列。
步驟2每個密文信道序列和隨機序列的每個值依次根據(jù)l(i)編碼為DNA序列,再用l(i)選取的計算規(guī)則利用式(6)的逆運算獲取每個密文信道中每個密文的明文DNA序列。各密文信道序列計算完成后分別得到長度為M×N×4的明文DNA序列。
步驟3根據(jù)l(i)選取編碼規(guī)則將3個明文DNA序列解碼為長M×N的一維置亂信道序列PR、PG、PB,再將其轉(zhuǎn)化為M×N的二維置亂信道R′、G′、B′。
步驟4運用置亂密鑰獲取隨機序列,然后采用SA構造行列置亂序列,將R′、G′、B′行和列的位置根據(jù)置亂序列反向重排列,從而得到恢復像素R、G、B。最后合并R、G、B信道得到解密后的原始圖像P。
在Windows7 64位系統(tǒng)環(huán)境下使用MATLAB軟件,運用本文算法對標準512像素×512像素的Lena.bmp和Baboon.bmp彩色圖像進行加密和解密。選用的密鑰如表6所示,實驗結果如圖3所示。

表6 加密和解密密鑰

圖3 加密解密效果
通過觀察圖3可以看出加密后的圖像沒有顯示任何明文信息。通過比較原始圖像圖3(a)、圖3(d)和解密圖像圖3(c)、圖3(f)的所有像素點可知,2個圖像像素點的值完全相同,說明本文提出的算法在加密和解密過程中沒有丟失圖像的任何信息。
本文算法的密鑰由Intertwining Logistic映射在2個加密階段的初始值及參數(shù)和t組成,即表6所示的置亂密鑰key1和擴散密鑰key2。根據(jù)文獻[14]和IEEE Standard 754-2008 存儲密鑰采用的類型為雙精度浮點型,其使用8 Byte對數(shù)據(jù)進行存儲,密鑰精度為10-15,因此,本文算法密鑰長度為960 bit,密鑰空間可達2960≈9.75×10288。由文獻[15]可知本文的密鑰空間可以很好地抵抗各種類型的窮舉攻擊并且提高加密系統(tǒng)的安全性。
對表6所示的密鑰key1、key2,在此僅僅將key2中的μ做一個微小的改變,即μ=μ+ 10-15,其余密鑰保持不變得到一個改變后的密鑰key2′,然后用key1、key2′對key1、key2加密的圖像進行解密。圖4給出了key1、key2和key1、key2′的解密結果,從圖中可以看出key1、key2′無法正確解密密文圖像,說明本文算法對密鑰具有極強的敏感性。

圖4 密鑰敏感性分析
隨機選取Lena和Baboon的R、G、B信道明文和密文圖像中5 000對相鄰像素點,分別進行水平、垂直、對角3個方向的相關性統(tǒng)計測試,測試結果如表7所示。

表7 明文、密文圖像R、G、B信道的相關性系數(shù)
相關性計算公式如下:
(9)
(10)
(11)
(12)
從表7可以看出,Lena和Baboon的明文圖像相關系數(shù)均接近于1,密文圖像相關性系數(shù)均接近于0。其中Lena圖像中選取的水平方向上5 000對相鄰像素點分布情況如圖5所示。

圖5 Lena水平方向相鄰像素相關性分析
可以看出,明文圖像相鄰像素點連續(xù)分布,密文圖像相鄰像素點值隨機分布且布滿整個二維空間。由以上可知,密文圖像已基本消除了相鄰像素的相關性且掩蓋了原始圖像的數(shù)據(jù)特征。
圖6為Lena圖像R、G、B信道的明文和密文頻率直方圖,其中圖6(a)、圖6(c)、圖6(e)分別是明文圖像直方圖,圖6(b)、圖6(d)、圖6(f)分別是密文圖像直方圖。通過比較直方圖能夠發(fā)現(xiàn),明文圖像的像素值都集中在一些值上,而密文圖像的像素值是均勻分布的,這些均勻分部的密文像素值能夠較好的抵抗統(tǒng)計攻擊。

圖6 Lena圖像直方圖
信息熵可以判斷元素的隨機性,圖像信源的熵值越接近8,圖像信息的隨機性就越強。對Lena密文圖像的每個信道計算信息熵結果見表8,計算公式如下:
(13)

表8 Lena密文R、G、B信道圖像信息熵
由表8可以看出,本文算法加密后圖像的信息熵均接近8,與文獻[16-17]相比本文具有更大的熵值,因此,證明本文算法加密后密文中各像素點值具有更強的隨機性,能有效地抵御熵攻擊。
加密算法抗差分攻擊的能力可以用像素數(shù)改變率NPCR(Number of Pixels Change Rate)和歸一化像素值平均改變強度UACI(Unified Average Changing Intensity)來度量,計算公式如下:
(14)

(15)
(16)
在Lena明文圖像中隨機選擇一個像素,改變其像素值,根據(jù)式(14)~式(16)進行100組的實驗后,計算得到NPCR和UACI的平均值如表9所示,表中也展示了其他彩色圖像加密算法的實驗結果。

表9 NPCR與UACI度量數(shù)據(jù)
由表9可以看出,本文算法各分量的NPCR均超過0.99,UACI均超過0.33,且與文獻[17-18]對比可以看出,本文總體上具有更大的NPCR和UACI,可知本文算法具有良好的抗差分攻擊能力。
在已知明文和選擇明文攻擊中,攻擊者通常會對明文圖像做一些微小的改變并觀察相應的密文圖像或者選擇特殊的明文圖像(比如各像素點都相同的明文圖像)進行加密來獲取密鑰信息。通過實驗可以看出本文算法對明文極其敏感,任意改變明文圖像一個像素將獲得幾乎完全不同的密文圖像。在加密過程中,步驟1和步驟4采用式(2)利用初始密鑰和明文圖像重新計算了混沌映射的初值,因此攻擊者使用特殊明文獲取的密鑰對于其他已加密的明文圖像來說是無效的。另外,在步驟5中初始密文DNA序列也由明文圖像確定,不同的明文圖像生成不同的初始序列。
本文算法在步驟5中運用式(6)計算密文C(i)時P(i)和L(i)的DNA編碼及采用的計算規(guī)則都是動態(tài)變化的,當明文發(fā)生變化時加密過程中所采用的編碼規(guī)則和計算規(guī)則也相應發(fā)生變化。在DNA加密計算過程中還采用了密文反饋機制,一方面計算每個像素點密文時會受到前面所有密文的影響,另一方面使得明文圖像各信道在加密過程中互相影響。
因此,通過采取以上措施,本文算法抵抗已知明文和選擇明文攻擊的能力得到了有效提高。
本文提出一種結合Intertwining Logistic映射和動態(tài)DNA編碼與運算的圖像加密算法。首先在對明文圖像置亂和擴散過程中使密文與密鑰、明文的關系復雜化,并且2個階段的密鑰都依賴于明文,增強算法對明文的敏感性。其次在DNA計算中編碼規(guī)則和運算規(guī)則的動態(tài)變化提高了算法抵抗已知明文和選擇明文及窮舉攻擊的能力。在加密過程中,2個階段都融合了混沌系統(tǒng)的隨機性,并且擴散階段在彩色圖像R、G、B各信道內(nèi)及信道間還采用了密文反饋機制,有效增強了算法的安全性和可靠性。通過安全性分析可以看出,該算法密鑰空間大,對圖像置亂擴散效果良好,能夠抵抗常見的攻擊。下一步將在實際應用中進一步優(yōu)化時間復雜度,提高運行速度。
[1] ZHANG Xuanping,ZHAO Zhongmeng.Chaos-based Image Encryption with Total Shuffling and Bidirectional Diffu-sion[J].Nonlinear Dynamics,2014,75(1/2):319-330.
[2] 朱從旭,李 力,陳志剛.基于多維混沌系統(tǒng)組合的圖像加密新算法[J].計算機工程,2007,33(2):142-144.
[3] MOLLAEEFAR M,SHARIF A,NAZAR M.A Novel Encryption Scheme for Colored Image Based on High Level Chaotic Maps[J].Multimedia Tools & Applications,2017,76:1-23.
[4] JENG Fuhgwo,HUANG Weilun,CHEN Tzungher.Cryptanalysis and Improvement of Two Hyper-chaos-based Image Encryption Schemes[J].Signal Processing:Image Communication,2015,34:45-51.
[5] XIAO Di,LIAO Xiaofeng,WEI Pengcheng.Analysis and Improvement of a Chaos-based Image Encryption Algorithm[J].Chaos Solitons & Fractals,2009,40(5):2191-2199.
[6] ADLEMAN L.Molecular Computation of Solutions to Combinatorial Problems[J].Science,1994,266(5187):1020-1024.
[7] HUANG Xiaoling,YE Guodong.An Image Encryption Algorithm Based on Hyper-chaos and DNA Sequence[J].Multimedia Tools & Applications,2014,72(1):57-70.
[8] SONI A,KUMAR A A.A Novel Image Encryption Approach Using an Index Based Chaos and DNA Encoding and Its Performance Analysis[J].International Journal of Computer Applications,2012,47(23):1-6.
[9] BELAZI A,HERMASSI H,RHOUMA R,et al.Algebraic Analysis of a RGB Image Encryption Algorithm Based on DNA Encoding and Chaotic Map[J].Nonlinear Dynamics,2014,76(4):1989-2004.
[10] OZKAYNAK F,YAVUZ S.Analysis and Improvement of a Novel Image Fusion Encryption Algorithm Based on DNA Sequence Operation and Hyper-chaotic System[J].Nonlinear Dynamics,2014,78(2):1311-1320.
[11] SHATHEESH S I,DEVARAJ P,BHUVANESWARAN R S.An Intertwining Chaotic Maps Based Image Encryption Scheme[J].Nonlinear Dynamics,2012,69(4):1995-2007.
[12] WATSON J D,CRICK F H.Molecular Structure of Nucleic Acids[J].Nature,1953,171(25):737-738.
[13] WANG Xingyuan,LIU Chuanming,Xu Dahai,et al.Image Encryption Scheme Using Chaos and Simulated Annealing Algorithm[J].Nonlinear Dynamics,2016,84(3):1417-1429.
[14] BORIGA R,DASCALESCU A C,DIACONU A.A New One-dimensional Chaotic Map and Its Use in a Novel Real-time Image Encryption Scheme[J].Advances in Multimedia,2014(7):1-15.
[15] NOROUZ B,SEYEDZADEH S M,MIRZAKUCHAKI S,et al.A Novel Image Encryption Based on Row-column,Masking and Main Diffusion Processes with Hyper Chaos[J].Multimedia Tools and Applications,2015,74(3):781-811.
[16] LIU Shubo,SUN Jing,XU Zhengquan.An Improved Image Encryption Algorithm Based on Chaotic System[J].Journal of Computers,2009,4(11):1091-1100.
[17] KADIR A,AILI M,SATTAR M.Color Image Encryption Scheme Using Coupled Hyper Chaotic System with Multiple Impulse Injections[J].Optikinternational Journal for Light and Electron Optics,2017,129:231-238.
[18] TONG Xiaojun,CUI Minggen.Image Encryption Scheme Based on 3D Baker with Dynamical Compound Chaotic Sequence Cipher Generator[J].Signal Processing,2009,89(4):480-491.