圖像雙重置亂加密

為了提高混沌系統(tǒng)的復(fù)雜性和偽隨機(jī)性,通過分析和改進(jìn)常用的經(jīng)典混沌系統(tǒng),我們設(shè)計了一種變參混沌系統(tǒng),理論分析與仿真測試結(jié)果表明其具有更好的混沌特性。并對傳統(tǒng)的基于混沌的數(shù)字圖像加密算法進(jìn)行改進(jìn),提出了一種基于變參混沌系統(tǒng)的圖像雙重置換加密算法,將這種變參混沌系統(tǒng)應(yīng)用于數(shù)字圖像像素位置與像素值雙重置換的加密算法中。

一、一種新型變參混沌系統(tǒng)

1、變參混沌系統(tǒng)定義

本文提出的變參混沌系統(tǒng)即對固定分形參數(shù)的混沌系統(tǒng)進(jìn)行改進(jìn)和綜合設(shè)計,其根本思想是將混沌系統(tǒng)中的分形參數(shù)設(shè)為變量,在加密過程中其分形參數(shù)隨時間變化而在一定范圍內(nèi)變化,這樣將極大擴(kuò)寬密鑰空間,提升安全性。變參混沌映射定義:

其中a為參數(shù),控制混沌序列的變化幅值,Xn[O,a],而分形參數(shù)bn不固定,設(shè)為時變參數(shù),且服從如下的混沌映射:

u為參數(shù)。

二、變參混沌系統(tǒng)性能分析

本文在變參混沌系統(tǒng)性能分析仿真實(shí)驗(yàn)中均取參數(shù)a=4,u=4,為測試其對初值的極端敏感性,取兩個相差極為細(xì)微的初值b1=0.8851111與b2=0.885 1112,由式(1)和式(2)分別迭代2000次,生成兩組混沌序列X1和X2,其差值隨迭代次數(shù)變換的部分波形圖如圖1所示。

很顯然兩個非常接近的初值在迭代12次時開始分叉,且函數(shù)值差異很大,兩組混沌序列X和X2的運(yùn)動軌跡毫無聯(lián)系。同樣取Chebyshev混沌系統(tǒng)的兩個相差細(xì)微的初值c1=0.8851111與C2=0.8851112,取其分形參數(shù)co=4,分別迭代2000次,構(gòu)成兩組Chebyshev混沌序列C1和C2,其差值隨迭代次數(shù)變換的部分波形如圖2所示。

兩個相差甚微的初值經(jīng)過迭代18次時開始分叉,兩組混沌序列C1和C2運(yùn)動軌跡變得毫不相干,本文提出的變參混沌序列只需迭代12次則開始出現(xiàn)分叉,而Chebyshev混沌序列在同樣的初值情況下卻需要迭代18次才開始分叉,將其參數(shù)改變進(jìn)行多次實(shí)驗(yàn),均能得出類似的結(jié)論。這表明:本文提出的變參混沌系統(tǒng)對初值具有極端的敏感性,而且還要優(yōu)于Chebyshev混沌系統(tǒng)?;煦缧蛄形宓牟ㄐ螆D圖3表明:變參混沌系統(tǒng)具有類似白噪聲的性質(zhì),而且分散程度比較高。

為對迭代產(chǎn)生的混沌序列進(jìn)行性能分析,通過一個閾值函數(shù)B將離散的實(shí)數(shù)值混沌序列轉(zhuǎn)換成二值序列,B函數(shù)定義:

其中{xi}為實(shí)數(shù)值混沌序列,u為{xi}序列均值,則{Bi}序列為二值隨機(jī)序列。為對隨機(jī)O、1二值序列{Bi}進(jìn)行隨機(jī)性測試,應(yīng)采用一些公認(rèn)的科學(xué)合理的測試標(biāo)準(zhǔn)進(jìn)行測試,本文采用美國標(biāo)準(zhǔn)技術(shù)研究所(NIST)制定的FIPS PUB 140-2標(biāo)準(zhǔn)進(jìn)行測試。每個二值序列的長度為20 000位,經(jīng)過單位測試實(shí)驗(yàn),其測試的結(jié)果如表1所示(統(tǒng)計1的個數(shù)),由實(shí)驗(yàn)結(jié)果表明其二值序列通過單位測試,具有良好的隨機(jī)性。任取6個不同的初值,由變參混沌系統(tǒng)生成6個不同的二值序列,進(jìn)行撲克測試結(jié)果如表2所示,顯然均通過撲克測試。分析游程特性時,與幾個經(jīng)典混沌系統(tǒng)生成的序列進(jìn)行比較測試,仿真實(shí)驗(yàn)的測試結(jié)果如表3所示。經(jīng)過對表中數(shù)據(jù)詳細(xì)分析比較,游程長度最好的是Chebyshev混沌序列,其次是本文提出的變參混沌序列,其游程特性要優(yōu)于Logistic混沌序列和Tent混沌序列。滿程測試中,游程長度大于25的長游程為O,變參混沌系統(tǒng)產(chǎn)生的二值序列顯然通過長游程測試。移位特性的測試結(jié)果如表4所示,實(shí)驗(yàn)數(shù)據(jù)顯示變參混沌序列的移位特性略遜于Logistic混沌序列,而要優(yōu)于Chebyshev混沌序列和Tent混沌序列。

譜分析是尋找混沌特性的—個重要方法,列初值b1=0.921111生成的變參混沌序列進(jìn)行功率譜分析,其功率譜如圖4所示。從功率譜密度圖來看,其功率譜是類似寬帶噪聲的連續(xù)譜,這證實(shí)系統(tǒng)具有明顯混沌特征。

經(jīng)過對本文所提出的變參混沌系統(tǒng)進(jìn)行性能測試,實(shí)驗(yàn)結(jié)果表明其是典型的混沌系統(tǒng),且其一些性能指標(biāo)要優(yōu)于傳統(tǒng)的混沌系統(tǒng)。

三、加密與解密算法具體實(shí)現(xiàn)

基于變參混沌系統(tǒng)的數(shù)字圖像雙重置換的加密算法有兩個過程,首先對像素位置進(jìn)行置換,再進(jìn)行像素值的置換,從而得到密圖,設(shè)原數(shù)字圖像大小為m,n。

第一步對數(shù)字圖像像素位置進(jìn)行置換的算法如下:

(1)將數(shù)字圖像矩陣Am,n按行掃描轉(zhuǎn)換成一維序列I{I1, I2,Im,n}。

(2)利用變參混沌系統(tǒng)產(chǎn)生—個混沌序列V{V1,V2,Vm,n},且與I{I1, I2,Im,n}中的元素一一對應(yīng)。

(3)將混沌序列V{V1,V2,Vm,n}由小到大排序,形成有序序列V'{V'1,V'2,V'm,n},由于V'{V'1,V'2,V'm,n}與I{I1, I2,Im,n}中的元素一一對應(yīng),I{I1, I2,Im,n}也由同樣的置換規(guī)則置換成I'{I1', I2',I'm,n}。

(4)將I'{I1', I2',I'm,n}按順序每m個元素構(gòu)成一行,從而重構(gòu)二維矩陣Bm,n,即為經(jīng)過像素位置加密后的圖像矩陣。

第二步對數(shù)字圖像像素值進(jìn)行置換的算法如下:

(1)構(gòu)造—個長度為m’,z的一維序列G{Go,G1,... ,Gm,n-1),令Go=O,G1=1,…,Gm-n-1=m’n-1。

(2)用變參混沌系統(tǒng)產(chǎn)生另—個混沌系統(tǒng)V{VO,V2,,Vm‘n-1),并且與序列G{Go,G1,... ,Gm,n-1)中的元素一一對應(yīng),即V與Gk對應(yīng)。

(3)將混沌序列V{VO,V2,,Vm‘n-1)由小到大排序,形成有序序列V’{V‘O,V’2,,V‘m‘n-1),由于V’{V‘O,V’2,,V‘m‘n-1)與G{Go,G1,... ,Gm,n-1)中的元素一一對應(yīng),G{Go,G1,... ,Gm,n-1)也由同樣的置換規(guī)則置換成G{Go,G1,... ,Gm,n-1)。

(4)將Bm,n(表示經(jīng)過像素位置置換所得加密圖像矩陣)中的像素值進(jìn)行置換加密,具體置換規(guī)則:對Bm,H任意像素點(diǎn)的像素值bij,取G'{G'o,G'1,... ,G'm,n-1)序列中對應(yīng)元素G’膏,其中k= (i-1)’m+j,令Pk=G'kmod 256,再將Pk與bi進(jìn)行異或運(yùn)算得Hk,即為bij置換后的像素值。

(5)重復(fù)(4),對Bm,n的所有元素bij進(jìn)行像素值置換,得到矩陣Hm,n即為經(jīng)過像素位置與像素值雙重混沌置換后的加密圖像矩陣。本算法極易擴(kuò)展到彩色圖像的加密,只需在(4)和(5)過程中分別對bij的R、G、B分量進(jìn)行像素值的置換即可。

解密過程與加密過程正好互逆,根據(jù)加密算法設(shè)計,易得具體的解密算法。

四、加密效果評價

1、加密效果圖

原數(shù)字圖像圖5 (a)只經(jīng)過像素位置置換得加密圖5(b),圖5(C)為只經(jīng)過像素值置換的加密圖,而圖5 (d)則為經(jīng)過像素位置與像素值雙重置換的加密圖。

由圖5可以得出:經(jīng)過像素位置與像素值雙重置換加密所得密圖像素分布均勻,已覆蓋了原圖像的人物輪廓,無法得出原圖像的細(xì)節(jié)信息,其加密效果良好,安全性更高。

2、直方圖分析

原圖像圖5 (a)的直方圖如圖6(a)所示,只經(jīng)過像素位置置換的加密圖5(b)的直方圖如圖6(b)所示,而只經(jīng)過像素值置換的加密圖5 (c)的直方圖則如圖6(c)所示,圖6(d)為雙重置換的加密圖5(d)的直方圖。

實(shí)驗(yàn)數(shù)據(jù)表明:變參混沌系統(tǒng)的雙重置換加密圖的直方圖與原圖像的直方圖有很大變化,而且密圖的直方圖分布比較均勻,從而很大程度上增強(qiáng)抵御統(tǒng)計攻擊的能力。

3、抗裁減分析

圖7(a)顯示加密圖受到裁剪攻擊,受攻擊面積約為整個圖像的1/2,其解密所得的圖像如圖7(b)所示。當(dāng)加密圖受到如圖7(c)所示的面積約為整個圖像的1/5的裁剪攻擊時,其解密圖像如圖7(d)所示。這表明:加密圖受到不同程度的裁剪攻擊,本算法解密圖像微有噪聲,但并不明顯影響圖像的整體效果,因此本算法具有很強(qiáng)的抗裁剪性。

4、抗噪聲實(shí)驗(yàn)

在加密圖中加入各種參數(shù)的高斯白噪聲(m表示均值,σ表示方差),其抗噪聲效果如圖8所示。由此可見,受到噪聲污染的密圖像基本能夠恢復(fù)出原圖,表明本算法抗噪聲能力很強(qiáng)。

5、密鑰分析

圖9(a)是原圖像,圖9(b)是用正確密鑰解密的效果圖(其密鑰與圖5中的密鑰一致),圖9(c)與圖9(d)是使用錯誤密鑰進(jìn)行解密的效果圖。錯誤解密密鑰與正確的加密密鑰相差甚微,解密后的圖像不具有原圖像的任何信息。以上實(shí)驗(yàn)數(shù)據(jù)充分表明本算法對密鑰具有極強(qiáng)的敏感性,因此安全性是很高的。本加密算法的密鑰為K=(Xc,u),若所選變參混沌系統(tǒng)初值XO的精度為小數(shù)點(diǎn)后10,由于算法中一共用到4個混沌序列,更極大地擴(kuò)展了密鑰空間,密鑰空間有1010’ 1010‘1010 ’1010= 1040,XO可以取(0 1)之間的任何值,如精度提高,則其密鑰空間將會進(jìn)一步擴(kuò)展。因此,本算法具有極強(qiáng)的抗強(qiáng)力攻擊能力,使得對密鑰的窮舉攻擊變得不可行。

小知識之置亂

所謂“置亂”,就是將圖像的信息次序打亂,將a像素移動到b像素的位置上,b像素移動到c像素的位置上……使其變換成雜亂無章難以辨認(rèn)的圖像。