楊曉剛 劉國(guó)榮 毛彥斌
(西安交通大學(xué)電子信息工程學(xué)院 陜西 西安 710049)
?
基于通信編碼序列與多混沌圖像加密算法
楊曉剛劉國(guó)榮毛彥斌
(西安交通大學(xué)電子信息工程學(xué)院陜西 西安 710049)
摘要結(jié)合量子混沌映射的良好特點(diǎn),首次提出一種全新的基于通信編碼序列與多混沌映射的圖像加密算法。該算法運(yùn)用量子Logistic和Logistic兩種不同的混沌映射,結(jié)合通信領(lǐng)域常用的無(wú)線編碼技術(shù),靈活地運(yùn)用模板圖像對(duì)原始圖像像素進(jìn)行編碼加密。實(shí)驗(yàn)表明,該算法既可以很好地拓展密鑰空間,又可以成功地抵御統(tǒng)計(jì)分析等各種攻擊操作,具有很強(qiáng)的前瞻性和創(chuàng)新性。
關(guān)鍵詞通信編碼模板圖像量子混沌圖像加密
0引言
隨著DNA計(jì)算的發(fā)展和運(yùn)用,基于DNA序列的圖像加密算法也越來(lái)越多地出現(xiàn)于各類期刊文章中。同時(shí),隨著無(wú)線電編碼技術(shù)的日益成熟,莫爾斯電碼編碼規(guī)則也漸漸地淡出了人們的視野。但利用莫爾斯電碼符號(hào)傳遞數(shù)據(jù)這一通信方式今天依然被廣泛使用,特別是在無(wú)線電通信領(lǐng)域。為增強(qiáng)圖像加密算法的安全性和高效性,首次提出一種基于通信編碼規(guī)則的多混沌圖像加密算法。在主動(dòng)克服了低維單混沌序列弱點(diǎn)的同時(shí),充分發(fā)揮通信編碼的特殊性和量子混沌映射優(yōu)勢(shì),有效地解決了低維混沌系統(tǒng)缺陷的問題,也進(jìn)一步豐富了加密的手段和樣式。
1通信編碼序列
1.1莫爾斯密碼
從事通信領(lǐng)域研究的人員,普遍對(duì)莫爾斯電碼有所了解。文中所講到的通信編碼即指莫爾斯編碼。莫爾斯編碼是對(duì)莫爾斯電碼符號(hào)進(jìn)行編碼后所得的結(jié)果。莫爾斯電碼是利用電流的閉合、斷開來(lái)產(chǎn)生劃、點(diǎn)符號(hào),即“-”和“.”,在語(yǔ)言上讀作“嗒”和“嘀”,之后根據(jù)點(diǎn)、劃的特定組合,將字母、數(shù)字及各類語(yǔ)言符號(hào)進(jìn)行特殊編碼,產(chǎn)生了一種特殊的編碼規(guī)則。而后,成功地將該編碼規(guī)則應(yīng)用到無(wú)線電通信領(lǐng)域,產(chǎn)生了長(zhǎng)碼和短碼兩種不同編碼規(guī)則的莫爾斯密碼。文中所談到的,均是針對(duì)短碼而言。早期,莫爾斯密碼是運(yùn)用莫爾斯編碼規(guī)則所進(jìn)行的編碼結(jié)果。對(duì)數(shù)字的編碼規(guī)則原型如表1所示。
表1 莫爾斯密碼的原型
而經(jīng)過長(zhǎng)期的實(shí)踐運(yùn)用,目前對(duì)于數(shù)字的編碼規(guī)則已有所變化,如表2所示。
表2 莫爾斯密碼的新品種
1.2密碼序列
將“.”定義為“0”,類似于電路中的低電平;“-”定義為“1”,類似于電路中的高電平。同樣,也可作相反定義。這樣,對(duì)數(shù)字的莫爾期密碼如表3所示。
表3 莫爾斯密碼的01編碼
對(duì)于任何一個(gè)數(shù)字,均可用如上編碼規(guī)則給予編碼,如234,即為0010001100001。為了進(jìn)一步提高編碼規(guī)則的安全性,對(duì)如上映射關(guān)系又作了進(jìn)一步的變化,即數(shù)字與密碼之間的映射關(guān)系不是固定不變的,而是根據(jù)外部條件的變化而適時(shí)變化。同時(shí),01編碼之間也存在著許多運(yùn)算規(guī)律,如互逆、取補(bǔ)、移位等,而且編碼后所得結(jié)果的位數(shù)也不相同,這在一定程度增加了算法的多樣性和安全性。
1.3混沌映射
Logistic映射是一個(gè)常見的低維混沌系統(tǒng),其中,初值和參數(shù)的設(shè)置為3.569945 wn+1=twn(1-wn) (1) 根據(jù)式(1)得到的混沌序列wn在[0,1]之間無(wú)規(guī)律地震蕩變化。 量子Logistic映射是一種具有良好密碼性能的多維混沌映射,其具有經(jīng)典混沌系統(tǒng)的自然屬性,其定義如下: (2) 1.4加密方案 文中提出的加密算法具體步驟如下: 1) 根據(jù)輸入密鑰,運(yùn)用Logistic映射生成一維混沌序列A。其中A={A(i),i=1,2,…,S},S為原始圖像像素點(diǎn)的總數(shù)。 2) 對(duì)A序列元素指定倍數(shù)(10p,p為正整數(shù),文中取p=3)放大并取整后,再進(jìn)行求模運(yùn)算,將所得的結(jié)果A*轉(zhuǎn)換為模板圖像矩陣(m×n)。其中,m、n為原始圖像數(shù)據(jù)矩陣的行數(shù)和列數(shù)。 3) 再次運(yùn)用Logistic映射,在新的密鑰及迭代次數(shù)N的情況下,生成x(N)。 4) 建立數(shù)字0~9與莫爾斯密碼之間的所有映射關(guān)系,根據(jù)關(guān)系總數(shù)(10!)將0~1等分為若干份,然后由第3步所得結(jié)果選擇編碼規(guī)則區(qū)間,生成新的01編碼規(guī)則。 5) 根據(jù)第4步的結(jié)果對(duì)第2步中的矩陣元素進(jìn)行逐位01編碼,生成長(zhǎng)度不一的01串矩陣。 6) 根據(jù)矩陣中每個(gè)元素序列中1的個(gè)數(shù)來(lái)決定是否對(duì)該序列執(zhí)行取反操作。本文中,若元素序列中1的個(gè)數(shù)為偶數(shù)或0,則取反,否則不變。 7) 對(duì)第6步的結(jié)果進(jìn)行十進(jìn)制轉(zhuǎn)換,并再次進(jìn)行求模運(yùn)算,得到不同于第2步的新的模板圖像矩陣,其矩陣的行數(shù)和列數(shù)亦為m、n。 8) 根據(jù)第一輪量子Logistic映射的初始值a、b、x0、y0和z0及迭代次數(shù)N1,生成3個(gè)混沌序列。取某一時(shí)刻i的混沌值與調(diào)制因子r相乘,生成新一輪量子Logistic映射的初始值x1、y1和z1,即x1=x(i)×r,y1=y(i)×r和z1=z(i)×r。新一輪量子映射的可調(diào)參數(shù)和耗散參數(shù)作為密鑰不同于a、b。 9) 運(yùn)用第二輪量子Logistic映射產(chǎn)生長(zhǎng)度為m×n的混沌序列和xn,yn并對(duì)兩個(gè)序列按升序進(jìn)行排列,根據(jù)排列編號(hào)即索引分別對(duì)原圖像矩陣及第7步所得模板矩陣進(jìn)行全局置亂,生成長(zhǎng)度為m×n的置亂序列J和D。 10) 對(duì)原始圖像生成的置亂序列值進(jìn)行第1輪加密。首先對(duì)第1個(gè)像素點(diǎn)采用如下方式進(jìn)行加密: F(1)=[J(1)⊕D(1)+D(1)]mod256 (3) 對(duì)置亂序列其他位置像素點(diǎn)按照如下公式進(jìn)行加密: F(i)={[J(i)⊕D(i)+D(i-1)]mod256}⊕F(i-1) (4) 11) 對(duì)第1輪加密的結(jié)果接著進(jìn)行第2輪加密,其中,第1個(gè)像素點(diǎn)采用如下方式加密: E(1)={[F(1)⊕D(1)+D(1)]mod256}⊕F(m×n) (5) 其他位置像素點(diǎn)按照如下公式進(jìn)行加密: E(i)={[F(i)⊕D(i)+D(i-1)]mod256}⊕E(i-1) (6) 將加密后的序列E轉(zhuǎn)化為二維矩陣,得到最后的加密圖像。解密過程是加密過程的逆操作。在此,不再作詳細(xì)說(shuō)明。 2仿真實(shí)驗(yàn)與分析 本文運(yùn)用Matlab 2012軟件,分別對(duì)尺寸大小均為256×256的Rice、Lena和Cameraman灰度圖像。采用2個(gè)Logistic映射和2個(gè)量子Logistic映射的圖像加密算法對(duì)原始圖像進(jìn)行加密操作。第一個(gè)Logistic映射的初始值t=3.65411、w1=0.48651;第二個(gè)Logistic映射的初始值t=3.8427、w1=0.33265、迭代次數(shù)N=10 000。第一個(gè)量子Logistic映射的初始值a=3.9、b=4.5、x0=0.32、y0=0.12565、z0=0.1234和迭代次數(shù)N1=5 000;第二個(gè)量子Logistic映射的初始值a=3.98、b=6.22、i=4899、r=0.3。 2.1密鑰空間分析 如表4所示,對(duì)于圖像加密算法來(lái)說(shuō),密鑰空間的大小是度量一個(gè)算法好壞的重要技術(shù)指標(biāo)。在本文中,算法的迭代次數(shù)N、N1及時(shí)刻點(diǎn)均是正整數(shù),且1≤i≤N1,兩個(gè)Logistic映射的w1、t及量子Logistic映射的初始值x0、y0、z0,參數(shù)a、b、r的值都為小數(shù)。假設(shè)計(jì)算機(jī)精度為10-16,則密鑰空間為1016×1016×1016×10128=10176。與文獻(xiàn)[3-9]中的加密算法密鑰空間相比較,加密空間提高了多倍。與文獻(xiàn)[2]加密空間相比較,也提高了很多,在抵御窮舉法攻擊方面具有良好的空間特性。 表4 各類文獻(xiàn)算法的密鑰空間比較 2.2統(tǒng)計(jì)特性分析 對(duì)于圖像處理過程來(lái)說(shuō),加密結(jié)果與原始圖像之間的相關(guān)性越小,說(shuō)明該算法抵御統(tǒng)計(jì)攻擊的能力越強(qiáng)。這種相關(guān)性不僅體現(xiàn)在像素點(diǎn)位置的置亂上,也體現(xiàn)在像素值的替換上。目前,定量地分析這種相關(guān)性的方法有直方圖分析、信息熵分析、相鄰像素間的相關(guān)性分析、明密文圖像相關(guān)性分析、圖像的幅值頻譜圖分析等。下面結(jié)合仿真實(shí)驗(yàn)逐一進(jìn)行分析,并與相關(guān)文獻(xiàn)結(jié)果作同類對(duì)比。 2.2.1直方圖 圖1分別給出了明文Rice、Lena、Cameraman圖像及其對(duì)應(yīng)的密文圖像像素分布規(guī)律直方圖。從圖中可以看出,原始圖像的直方圖在整個(gè)空間呈高低起伏狀態(tài),甚至部分圖像的像素值分布過于集中,主要集中在某一區(qū)間內(nèi)。而加密后的圖像,直方圖比較均勻,峰值與均值差異較小,說(shuō)明加密后的圖像在灰度值值域內(nèi)近似等概率取值,具有很好的隨機(jī)特性,也說(shuō)明了加密后各像素之間的相關(guān)性得到了很好的削弱。因此,該算法具有很強(qiáng)的抵御統(tǒng)計(jì)攻擊分析的能力。 圖1 3種測(cè)試圖像原始圖像、加密圖像、解密圖像及其直方圖 2.2.2信息熵 由信息熵的定義可知,信源的信息熵計(jì)算公式如下: (7) 式中,p(mi)為信號(hào)mi出現(xiàn)的概率,L為每個(gè)信號(hào)的比特?cái)?shù)。從理論層面上來(lái)講,理想情況下密文圖像的信息熵應(yīng)該為8(主要針對(duì)8位二進(jìn)制的灰度圖像來(lái)說(shuō))。經(jīng)實(shí)驗(yàn)測(cè)試,運(yùn)用本文算法對(duì)圖像Rice、Lena和Cameraman的加密圖像其信息熵分別為:7.9972、7.9964、7.9972,這些值與理想值非常接近。反映出該算法在加密的過程中對(duì)原始圖像的信息做了很好的隱藏,在抵御熵攻擊方面具有良好的抗攻擊特性。 2.2.3相鄰像素點(diǎn)的相關(guān)性 實(shí)驗(yàn)做法是:分別從原始圖像和加密后的圖像中選擇水平方向相鄰的像素對(duì)、垂直方向相鄰的像素對(duì)及對(duì)角線方向相鄰的像素對(duì)各1000對(duì),定量地計(jì)算其相鄰像素之間的相關(guān)系數(shù)。經(jīng)過實(shí)驗(yàn),結(jié)果如表5所示。與文獻(xiàn)[5,10,12]相比,運(yùn)用文中所提算法加密后的圖像在三個(gè)方向上相鄰像素點(diǎn)的相關(guān)性系數(shù)都比較小,相鄰的兩個(gè)像素之間基本不相關(guān)。這說(shuō)明明文圖像經(jīng)加密過后,其原有的圖像信息統(tǒng)計(jì)特性已被很好地?cái)U(kuò)散到隨機(jī)的密文圖像中,具有了更高的安全性。 表5 明文和密文Lena圖像相鄰像素的相關(guān)系數(shù) 2.2.4明密文圖像相似度 直方圖僅從視覺上反映像素值的分布特性,但是對(duì)于這些像素原來(lái)的位置在直方圖中并沒有體現(xiàn),對(duì)于圖像內(nèi)部到底存在什么樣的物體,形狀是什么,每一塊的灰度分布是什么樣的這些信息在直方圖中均被省略掉了。針對(duì)此方面的問題,有人提出了利用二維相關(guān)系數(shù)[13]來(lái)分析明文圖像和密文圖像之間的相關(guān)性。本文提出了用圖像相似度來(lái)度量?jī)煞鶊D像之間的匹配程度。圖像相似度計(jì)算主要用于對(duì)于兩幅圖像之間內(nèi)容的相似程度進(jìn)行打分,根據(jù)分?jǐn)?shù)的高低來(lái)判斷圖像內(nèi)容的相近程度。若加密后的圖像與原圖像有許多相似的地方,那么加密圖像的安全度就比較低。設(shè)G=(gij)M×N,C=(cij)M×N是明文和密文圖像,α、β是兩個(gè)整數(shù),且0≤α (8) 其中,XSD表示兩幅圖像的相似度。XSD介于0和1之間,其值越小,說(shuō)明加密算法的安全性越高。當(dāng)α=β=0時(shí),反映的是明文圖像與密文圖像對(duì)應(yīng)點(diǎn)的灰度變化情況,依據(jù)灰度變化情況來(lái)度量加密前后圖像的相似程度;對(duì)于圖像的分塊平移操作,該取值卻不能準(zhǔn)確反映明文圖像和密文圖像之間的相似情況。當(dāng)α、β取不同值時(shí),不僅能反映兩幅圖像的相似程度,也能反映圖像的平移性。因此,對(duì)于一個(gè)算法來(lái)說(shuō),需要選擇合適的參數(shù)α、β值。 XSD(Rice.bmp,Ricem.bmp)=0.0992 XSD(Lena.bmp,Lenam.bmp)=0.4858 XSD(Cameraman.bmp,Cameramanm.bmp)=0.4803 通過實(shí)驗(yàn)可以看出,明文圖像和密文圖像之間的相似度很低,特別是針對(duì)Rice圖像來(lái)說(shuō),明文圖像與密文圖像之間幾乎毫不相關(guān)。 2.2.5圖像的幅值頻譜圖 圖像可以看作是一個(gè)定義在空間域的二維平面上的信號(hào),該信號(hào)的幅值對(duì)應(yīng)于像素的灰度值。圖像的頻率又稱為空間頻率,它反映了圖像中各像素灰度值在空間中的變化情況,而幅值頻譜圖則用來(lái)反映圖像頻率統(tǒng)計(jì)分布情況。文中,我們經(jīng)二維傅里葉變換來(lái)定量地反映圖像的空間頻率能量的分布情況。通常情況下,我們習(xí)慣將圖像頻率的低頻成分放在幅度譜的中央,而將高頻成分放在幅度譜邊緣。而對(duì)于一幅原始圖像來(lái)說(shuō),其幅值頻譜圖符合上述規(guī)律,即其在二維空間顯示上過于集中,在三維空間上,它的頻譜分布會(huì)出現(xiàn)一個(gè)凸起的部分。而經(jīng)過加密處理之后,無(wú)論是在二維空間,還是在三維空間,均會(huì)呈現(xiàn)出均勻、平整的狀態(tài),即幅值會(huì)被均勻地?cái)U(kuò)散到整個(gè)二維或三維空間中,從而使得原始圖像的頻率特性被充分地?cái)U(kuò)散開來(lái)。實(shí)驗(yàn)結(jié)果正好印證了這一點(diǎn)。同時(shí),在正確解密之后,可以看出,明文圖像的幅值頻譜圖與解密后的圖像幅值頻譜圖相同,這說(shuō)明加密算法的靈敏度很高,匹配度很高。二維和三維幅值頻譜圖的一致相關(guān)性,在很大程度上反映了該算法在防止密文信息泄露方面具有相當(dāng)?shù)陌踩浴?/p> 采用文中算法對(duì)標(biāo)準(zhǔn)256×256 Lena圖像進(jìn)行加密和解密,其二維和三維的幅值頻譜圖如圖2所示。其中,(a)、(b)、(c)分別是原始圖像、加密圖像及解密圖像的二維幅值頻譜圖,(d)、(e)分別是原始圖像和加密圖像的三維幅值頻譜圖。解密圖像的三維幅值頻譜圖與原始圖像的完全一致。 圖2 Lena圖像的二維、三維幅值頻譜圖 2.3對(duì)明文敏感性的分析 NPCR值是用來(lái)定量地衡量密文對(duì)明文敏感性的慣用指標(biāo),其主要是通過對(duì)密鑰或原始圖像中像素點(diǎn)灰度值的微小改變來(lái)檢測(cè)加密結(jié)果的變化劇烈程度,即變化率。變化率可通過以下公式求得: (9) (10) 其中,P(i)和P*(i)分別是改變前與改變后兩種加密結(jié)果對(duì)應(yīng)于同一像素i的灰度值。一般來(lái)說(shuō),一個(gè)標(biāo)準(zhǔn)的8位的灰度圖像,其NPCR值為99.6094%[2]。實(shí)驗(yàn)結(jié)果如表6所示,對(duì)于不同的測(cè)試圖像,NPCR值均與理想值很接近,說(shuō)明該算法對(duì)明文圖像具有很強(qiáng)的敏感性,可有效抵制已知明文攻擊與選擇明文攻擊,具有一定的抵御差分攻擊的能力。 表6 常見測(cè)試圖像的NPCR值 3結(jié)語(yǔ) 本文首次提出了基于通信編碼與多混沌系統(tǒng)的圖像加密算法,類似于當(dāng)初的基于DNA序列的圖像加密算法。雖因編碼規(guī)則的多樣性及運(yùn)算的復(fù)雜性,在運(yùn)算效率上還有一定差距,但基于該領(lǐng)域的加密算法研究數(shù)量很少。算法對(duì)明文和密鑰均具有很強(qiáng)的敏感性,同時(shí)具有良好的統(tǒng)計(jì)特性,密鑰空間大,安全性高。經(jīng)仿真實(shí)驗(yàn)測(cè)試,該算法能很好地抵御各類攻擊操作,確保圖像加密、傳輸?shù)陌踩?。同時(shí),因與無(wú)線電密碼技術(shù)相結(jié)合,對(duì)密鑰的傳輸也可改變傳統(tǒng)意義上網(wǎng)絡(luò)傳輸?shù)饶J?,改用無(wú)線電編碼傳輸,進(jìn)一步增加了傳輸樣式的多樣性和安全性。 參考文獻(xiàn) [1] Goggin M E,Sundaram B,Milonni P W.Quantum logistic map[J].Physical Review A,1990,41(10):5705-5708. [2] 朱從旭,黃大足,郭迎.結(jié)合多混沌映射和輸出反饋的圖像加密算法[J].武漢大學(xué)學(xué)報(bào):信息科學(xué)版,2010,35(5):528-531. [3] 羅玉嶺,杜明輝.基于量子Logistic映射的小波域圖像加密算法[J].華南理工大學(xué)學(xué)報(bào):自然科學(xué)版,2013,41(6):53-62. [4] Chen Guanrong,Mao Yaobin,Chui Charkes K.A symmetric image encryption scheme based on 3 D chaotic cat maps[J].Chaos Solutions & Fractals,2004,21(3):749-761. [5] 朱從旭,陳志剛,歐陽(yáng)文衛(wèi).一種基于廣義Chen’s混沌系統(tǒng)的圖像加密新算法[J].中南大學(xué)學(xué)報(bào):自然科學(xué)版,2006,37(6):1142-1148. [6] 陳艷峰,李義方.交替分段相互置亂的雙混沌序列圖像加密算法[J].華南理工大學(xué)學(xué)報(bào):自然科學(xué)版,2010,38(5):27-33. [7] Zhu Congxu.A novel image encryption scheme based on improved hyperchaotic sequences[J].Optics Communications,2012,285(1):29-37. [8] 文昌辭,王沁,黃付敏,等.JPEG彩色圖像白適應(yīng)加密算法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2012,24(4):500-505. [9] Bhatnagar G,Wu Q M Jonathan.Chaos.based security solution for fingerprint data during communication and transmission[J].IEEE Transactions on Instrumentation and Measurement,2012,61(4):876-887. [10] Akhshani A,Akhavan A,Lim S C,et al.An image encryption scheme based on quantum logistic map[J].Communications in Nonlinear Seience and Numerical Simulation,2012,17(12):4653-4661. [11] Behnia S,Akhshani A,Mahmodi H,et al.A Novel Algorithm for Image Encryption Based on Mixture of Chaotic Maps[J].Chaos,Solutions & Fractals,2008,35(2):408-419. [12] Wang X,Zhao J,Zhang Z.A Chaotic Cryptosystem Based on Multi-one-dimensional Maps[J].Modern Physics Letters B,2009,23(2):183-189. [13] Chen G,Mao Y,Charles K.A Symmetric Image Encryption Scheme Based on 3D Chaotic Cat Maps[J].Chaos,Solitons and Fractals,2004,21(3):749-761. [14] 詹新生.圖像加密置亂性能分析[D].鄭州:鄭州大學(xué),2005. 收稿日期:2015-01-08。陜西省自然科學(xué)基金項(xiàng)目(2014JM83 22)。楊曉剛,碩士生,主研領(lǐng)域:圖像處理。劉國(guó)榮,副教授。毛彥斌,碩士生。 中圖分類號(hào)TP309 文獻(xiàn)標(biāo)識(shí)碼A DOI:10.3969/j.issn.1000-386x.2016.07.068 MULTI-CHAOS IMAGE ENCRYPTION ALGORITHM BASED ON COMMUNICATION CODING SEQUENCE Yang XiaogangLiu GuorongMao Yanbin (SchoolofElectronicsandInformationEngineering,Xi’anJiaotongUniversity,Xi’an710049,Shaanxi,China) AbstractCombining the good characteristic of quantum chaos mapping, this paper puts forward for the first time a brand new image encryption algorithm which is based on communication coding sequence and multi-chaos mapping. The algorithm uses two different chaotic maps (quantum Logistic and Logistic), in combination with wireless coding technology commonly used in communication field, it flexibly uses the template image to encode and encrypt original image pixels. Experiments show that the proposed image encryption algorithm can well expand the key space, and meanwhile successfully resists various attacks such as statistical analysis operation, thus has strong forward-looking and innovative properties. KeywordsCommunication codingTemplate imageQuantum chaosImage encryption