一種基于級(jí)聯(lián)混沌系統(tǒng)的圖像加密算法
摘 要: 提出了一種基于級(jí)聯(lián)混沌系統(tǒng)的圖像加密算法。實(shí)驗(yàn)結(jié)果表明,這種加密算法具有高度的安全性和有效性。
關(guān)鍵詞: 圖像加密算法;混沌;級(jí)聯(lián)混沌
目前混沌加密己成為密碼學(xué)研究的熱點(diǎn)之一,但已有的大部分混沌加密算法都是基于單個(gè)混沌系統(tǒng)的。事實(shí)表明,一些混沌映射可通過相空間重構(gòu)的方法精確預(yù)測(cè)出來[1]。另外,由于計(jì)算機(jī)精度的限制,單混沌系統(tǒng)輸出的時(shí)間序列并不能達(dá)到理論上的完全隨機(jī),而可通過多個(gè)混沌系統(tǒng)的級(jí)聯(lián)使這一缺陷得到改善[2]。為此,本文提出了一種基于多混沌系統(tǒng)級(jí)聯(lián)的圖像加密算法,理論分析與數(shù)值實(shí)驗(yàn)均表明本算法能夠達(dá)到密碼學(xué)要求的混淆和擴(kuò)散的目的,并能有效地預(yù)防差分攻擊。
1 混沌序列的生成
1.1 Logistic映射
Logistic映射由數(shù)學(xué)生態(tài)學(xué)家May于1976年提出,是非線性迭代方程和研究最廣泛的動(dòng)力系統(tǒng)。Logistic映射的定義為:
當(dāng)3.569 945 6<μ≤4時(shí),Logistic映射工作處于混沌狀態(tài),即由初始條件x0在Logistic映射的作用下所產(chǎn)生的序列{xk}是非周期、不收斂的, 并對(duì)初始值非常敏感;當(dāng)μ=4時(shí),該映射是滿射,產(chǎn)生的混沌序列在區(qū)間(0,1)上具有遍歷性。由于Logistic映射具有與白噪聲相似的特性、簡(jiǎn)單和 初始值敏感性的特點(diǎn),因此很多混沌圖像加密算法都是基于Logistic映射的。
1.2 時(shí)空混沌映射
時(shí)空混沌系統(tǒng)是一個(gè)空間上的擴(kuò)展系統(tǒng)[3],它展現(xiàn)了時(shí)間和空間上的混沌性。耦合映射格子(CML)通常被作為時(shí)空混沌系統(tǒng)使用,這種系統(tǒng)是具有離散時(shí) 間、離散空間和連續(xù)狀態(tài)的動(dòng)力系統(tǒng)。它由位于格子站點(diǎn)上的稱為局部映射的非線性映射組成,每個(gè)局部映射與其他局部映射以一定規(guī)則進(jìn)行耦合連接。由于每個(gè)局 部映射所固有的非線性動(dòng)力特性及相互間耦合所產(chǎn)生的發(fā)散性,CML可以展現(xiàn)時(shí)空混沌性。所以采用不同的局部映射和耦合方法便可以構(gòu)造出不同形式的 CML[4]。本算法構(gòu)造的二維CML為:
[!--empirenews.page--]
2 加密與解密的實(shí)現(xiàn)
本算法選用的混沌系統(tǒng)為時(shí)空混沌系統(tǒng)與一維Logistic映射。首先利用式(2)時(shí)空混沌系統(tǒng)產(chǎn)生隨機(jī)序列,然后將這個(gè)序列值分別作為式(1)的 Logistic映射初始值,經(jīng)過特定次數(shù)的迭代以后得到最后所需的混沌序列。這個(gè)特定次數(shù)是由上一個(gè)圖像像素加密后的結(jié)果決定的。
(4)對(duì)圖像c1按相反的方向從最后兩個(gè)像素開始按步驟(3)對(duì)像素值進(jìn)行操作得到圖像c,即為加密后的密文圖像。
2.2 解密過程
解密過程與加密過程相反,即:將步驟(2)中提到的迭代的次數(shù)改為由密文圖像的前兩個(gè)像素值決定,再將步驟(3)與步驟(4)的順序顛倒過來,即可完成密文圖像的解密。
[!--empirenews.page--]
3 安全性分析
本算法有很高的安全性,具有更大的密鑰空間,且能夠抵御大部分常見的攻擊。
[!--empirenews.page--]
3.3 統(tǒng)計(jì)分析
圖像中相鄰像素的相關(guān)性非常大,在加密過程中為了防御統(tǒng)計(jì)攻擊,必須使得相鄰像素間的相關(guān)性降低[5]。本文在待加密圖像和加密后的圖像中各隨機(jī)地選取了2 008對(duì)像素對(duì),測(cè)試其水平方向、垂直方向、對(duì)角方向的像素相關(guān)性,并利用式(8)計(jì)算其相關(guān)系數(shù):
3.4 差分攻擊分析
通過對(duì)待加密圖像做微小的改變,然后觀察該改變帶來的結(jié)果的方法,攻擊者可以獲得加密后圖像與原圖像之間的關(guān)聯(lián)。若某加密算法可使原圖像發(fā)生微小變化,使前后加密的結(jié)果變化很大,則該算法即可很好地預(yù)防差分攻擊。
像素?cái)?shù)目改變率(NPCR)是指當(dāng)待加密圖像改變一個(gè)像素時(shí),加密后圖像像素?cái)?shù)目的改變率。NPCR越大,表明加密算法對(duì)于待加密圖像變化越敏感,則該加 密算法抵抗明文攻擊能力越強(qiáng);平均強(qiáng)度變化率(UACI)是指待加密圖像和加密后圖像相應(yīng)像素的平均強(qiáng)度的變化率,該指標(biāo)越大,表示加密后圖像與待加密圖 像比平均強(qiáng)度變化越大,則該加密算法抵抗差分攻擊能力越強(qiáng)。設(shè)兩幅加密后的圖像分別為c1和c2,則:
本文提出一種基于級(jí)聯(lián)混沌系 統(tǒng)的圖像加密算法,采用由Logistic映射構(gòu)成的一維CML作為時(shí)空混沌系統(tǒng),然后將它的輸出序列作為L(zhǎng)ogistic由某一初始值經(jīng)過特定次數(shù)的迭 代后得到最終的密鑰序列。安全性分析表明,本算法的密鑰空間足夠大,使得暴力攻擊不可能。仿真實(shí)驗(yàn)結(jié)果也表明,本算法具有較高的性能,在圖像加密和圖像傳 輸中具有一定的潛在應(yīng)用價(jià)值。