基于混沌序列的頻域圖像加密技術(shù)

目前,越來(lái)越多的信息需要通過(guò)網(wǎng)絡(luò)來(lái)傳蝓,這些信息不僅包括文本,而且還包括聲音、數(shù)字固像和多媒體等,然而網(wǎng)絡(luò)傳輸帶寬十分有限,特別節(jié)約存儲(chǔ)空間、加快傳輸效率,成為設(shè)計(jì)圖倦加密方式實(shí)現(xiàn)要考慮的問(wèn)置.傳統(tǒng)的加密算法主要針對(duì)文本信息,而不針對(duì)圖像文件,為此,我今天給大家介紹一種基于基于混沌序列的頻域圖像加密技術(shù)。

一、混沌系統(tǒng)

混沌現(xiàn)象是在非線性動(dòng)力系統(tǒng)中出現(xiàn)的確定性的、類(lèi)似隨機(jī)的過(guò)程,這種過(guò)程既非周期又不收斂,并且對(duì)初始值有極其敏感的依賴性。通過(guò)混沌系統(tǒng)對(duì)初始值和結(jié)構(gòu)參數(shù)的敏感依賴,可以提供數(shù)量眾多、非相關(guān)、類(lèi)隨機(jī)而又確定可再生的信號(hào)。

由于上述特點(diǎn),混沌已廣泛應(yīng)用干保密通訊中,同時(shí)也可以作為加密序列?;煦缋碚摵蛿?shù)據(jù)保密的有機(jī)結(jié)合,是混沌理論研究不斷深入和信息社會(huì)對(duì)信息安全的更高要求的必然結(jié)果。混沌加密技術(shù)已成為一種新興的加密技術(shù)。

1、混沌的定義

設(shè)(X,p)是一致的度量空間。f:X→X是連續(xù)映射,如果f滿足如下3個(gè)條件.稱f在X上是混沌的。

(1)f具有對(duì)初值敏感依賴性;

_δ>0,使_x∈X及x的鄰域N(x),_y∈N(x),當(dāng)n≥O時(shí),p(fn(x),fn(y))>δ

(2)f在X上拓?fù)鋫鬟f;

_U,V開(kāi)集,U,V _X,_k>0,使fk(u)∩v≠Φ

(3)f的周期點(diǎn)在X中稠密。

通常情況下,可采用Lyapunov指數(shù)、功率譜分析或Pioncare截面法來(lái)識(shí)別系統(tǒng)是否進(jìn)入混沌狀態(tài)。

2、 加密算法原理

圖像文件加密系指將一幅明圖經(jīng)過(guò)某個(gè)加密算子的作用,變?yōu)榭蓚鬏數(shù)拿軋D,接收方將密圖經(jīng)過(guò)解密算子的作用,還原為明圖;在傳輸過(guò)程中,即使密圖被竊取,沒(méi)有密鑰很難或根本無(wú)法
完成解密。加密算法往往可以寫(xiě)成如下的變換式:

基于混沌序列的頻域圖像加密技術(shù)

其中X明文X,密文Y和密鑰k分別是有限長(zhǎng)度的字符序列,他們的長(zhǎng)度Lx,Ly,Lk可以不相等,方程(1)強(qiáng)調(diào)一個(gè)密文Y與一個(gè)明文X對(duì)應(yīng),函數(shù)由密鑰的值來(lái)決定,既稱為加密算法。

一般的數(shù)字圖像包含大量的數(shù)據(jù),但這些數(shù)據(jù)是高度相關(guān)的,對(duì)于靜止圖像往往含有大量的空間冗余信息。在該文提出的算法中,把混沌映射的初始值xo,結(jié)構(gòu)參數(shù)n和過(guò)渡過(guò)程參數(shù)n。作為密鑰。根據(jù)密鑰產(chǎn)生相應(yīng)的混沌序列xk,yk,根據(jù)xk,yk生成相應(yīng)的變換矩陣,實(shí)現(xiàn)對(duì)數(shù)字圖像的加密。

3、混沌序列的生成

基于混沌映射廠生成混沌序列的方法主要有如下三種:

(1)實(shí)數(shù)值序列,即{xk,k=0,1,2,3,…},是混沌映射的軌跡點(diǎn)形成的序列;

(2)m值序列(用戶自己定義的a1,a2,…,am-1,am構(gòu)成),通過(guò)定義一個(gè)閥值函數(shù)Sign,由上述的實(shí)數(shù)值混沌序列經(jīng)過(guò)(2)式得到:

基于混沌序列的頻域圖像加密技術(shù)

m值序列,即{Sign(xk),k=0,1,2,3,…),該序列同樣具有混沌特性。

(3)比特序列,同樣由實(shí)數(shù)值混沌序列得到。所不同的是,比特序列是通過(guò)對(duì){xk,k=0,1,2,3,…}中的xk改寫(xiě)為L(zhǎng)-bit的浮點(diǎn)形式得到。

基于混沌序列的頻域圖像加密技術(shù)

其中bi(xk)是|xk|的第i位。所需序列為:

基于混沌序列的頻域圖像加密技術(shù)
二、 圖像加密/解密系統(tǒng)

基于混沌序列的圖像加密方法主要分為空間域算法和頻域算法。空間域算法的優(yōu)點(diǎn)是能夠充分利用圖像數(shù)據(jù)的點(diǎn)陣特征使算法更直觀,實(shí)現(xiàn)比較簡(jiǎn)單,且加密過(guò)程中不會(huì)引入額外的圖像畸變。但如果直接應(yīng)用該算法對(duì)圖像逐一像素進(jìn)行加密,其計(jì)算量仍然很大,特別是對(duì)一些尺寸較大的圖像。另外位圖經(jīng)過(guò)加密后,各像素點(diǎn)的空間相關(guān)性被破壞,難以再進(jìn)行壓縮處理?;陬l域的算法優(yōu)勢(shì)在于圖像的頻域空間比較穩(wěn)健,抗干擾性好,而且可以將加密和壓縮過(guò)程一步完成。相對(duì)于空間域算法,頻域算法加密效率較高,且可以由頻域的數(shù)學(xué)表達(dá)的復(fù)雜度給非法破譯造成更大的困難,基于頻域的圖像壓縮方法目前存在DCT Discrete Cosine Transformation),DWT Discrete Wavelet Transformation)等多種形式,DCT作為JPEC編碼方案的重要組成部分,應(yīng)用相當(dāng)廣泛,但DWT存在比DCT更加優(yōu)異的性能,能夠克服DCT的不足之處,達(dá)到更好的壓縮比和圖像恢復(fù)效果,并被推薦為JPEG-2000編碼方案的組成部分,因此,研究基于DWT的加密技術(shù)更有應(yīng)用潛力。該文根據(jù)這一思想構(gòu)建基于小波變換的圖像加密/解密系統(tǒng),如圖1,圖2所示。

加密過(guò)程:如圖1所示。

基于混沌序列的頻域圖像加密技術(shù)

輸入:原圖像、參數(shù)1、參數(shù)2、參數(shù)3、…

輸出:加密圖像文件、密鑰

步驟1:首先對(duì)于大小為M×N的任意圖像,其大小可能不是8×8整數(shù)倍。這時(shí)要對(duì)原圖像進(jìn)行預(yù)處理,使得其大小為8×8的整數(shù)倍,其方法是在圖像的邊界填充0(黑色),然后對(duì)圖像
進(jìn)行多級(jí)小波分解,該文采用五級(jí)分解,得到小波變換系數(shù)矩陣。

步驟2:根據(jù)輸入?yún)?shù)確定選用的混沌系統(tǒng)(該文選擇Logistic系統(tǒng)),確定初始參數(shù)、選擇加密模板產(chǎn)生方法,并輸出小波系數(shù)加密模板,同時(shí)將輸入?yún)?shù)和前兩步的選擇結(jié)果數(shù)據(jù)一
同輸入加密程序1,經(jīng)過(guò)加密處理成一個(gè)特定的密碼字符串文件,提供給日后對(duì)圖像信息進(jìn)行解密時(shí)使用。

步驟3:根據(jù)步驟3生成的密鑰模板,分別對(duì)每組小波系數(shù)進(jìn)行非線形變換,得到經(jīng)過(guò)加密處理的小波系數(shù)矩陣。

步驟4:將加密數(shù)據(jù)輸入圖像量化編碼系統(tǒng),進(jìn)行圖像數(shù)據(jù)的量化編碼,輸出加密圖像文件,供圖像信息傳輸與保存。

解密過(guò)程:具體過(guò)程如圖2所示。

基于混沌序列的頻域圖像加密技術(shù)
輸入:加密圖像文件、密鑰

輸出:解密圖像

步驟1:首先將加密圖像文件輸入系統(tǒng),通過(guò)圖像解碼、反量化處理得到經(jīng)過(guò)加密的小波變換系數(shù)矩陣,供解密程序2使用;

步驟2:通過(guò)運(yùn)行特定的解密程序,從載體圖像中提取密鑰包數(shù)據(jù),同時(shí)進(jìn)行客戶端的解密程序1,得到解密參數(shù);

步驟3:然后利用得到的參數(shù)確定解密需要的混沌系統(tǒng)的種類(lèi)及各初始參數(shù),生成解密模板供解密程序2使用,得到小波變換系數(shù)矩陣,進(jìn)行小波逆變換,輸出解密圖像。

三、仿真結(jié)果與分析

為驗(yàn)證該系統(tǒng)的有效性和對(duì)加密/解密效果進(jìn)行驗(yàn)證,該文采用Lena512灰度圖像(圖3a)作為實(shí)驗(yàn)圖像,分別進(jìn)行如下3個(gè)實(shí)驗(yàn)。

基于混沌序列的頻域圖像加密技術(shù)

實(shí)驗(yàn)一、線形變換

首先利用Daubechies 9小波對(duì)Lena512圖像進(jìn)行5級(jí)離散小波分解(圖3 )),(圖3 c)分別為第一級(jí)和第二級(jí)分解的近似圖像;用[1,-1]構(gòu)造一個(gè)正負(fù)交替的模板,通過(guò)模板調(diào)整小波系數(shù)的正負(fù),模板上出現(xiàn)-1的位置的小波系數(shù)反號(hào)。通過(guò)調(diào)整后,再進(jìn)行Daubechies 9小波的五級(jí)逆變換得到重構(gòu)圖像(如圖3d所示)。該方法實(shí)際上是引入一種周期跳變,圖像的內(nèi)容在一定程度上得到隱藏,但如此強(qiáng)烈的周期很容易讓攻擊者找到解密方法,使保密失去了意義。為此進(jìn)一步采取一種線形增量方式,依據(jù)像素位置,逐次增大系數(shù)的倍數(shù),同時(shí)調(diào)節(jié)系數(shù)的正負(fù),結(jié)果如圖3 e所示。

該方法雖然進(jìn)一步增大了混亂程度,圖像信息的隱藏仍然沒(méi)有達(dá)到用戶的需求。為此考慮采用非線形的Aronld變換對(duì)小波系數(shù)進(jìn)行置亂處理,得到結(jié)果如圖3 f所示。基于置亂的方法雖然打亂了系數(shù)的排列位置,但相應(yīng)的數(shù)值并沒(méi)有改變,因此仍然從密圖上可以得到大量的有用信息如輪廓邊界等。圖像解密與文本文件的解密有不同之處,只要滿足在一定范圍內(nèi)可識(shí)別的要求即可,少量的圖像降質(zhì)可以接受。采用此類(lèi)方法對(duì)小波頻域加密存在缺陷,無(wú)法滿足高強(qiáng)度加密的需要。

實(shí)驗(yàn)二、混沌模板

采用一個(gè)混沌系統(tǒng)生成的密鑰模板對(duì)小波系數(shù)進(jìn)行非線形變換,得到結(jié)果如圖3g。文章采用最簡(jiǎn)單的一維Logistic混沌系統(tǒng),生成密鑰模板。它的描述如下:

基于混沌序列的頻域圖像加密技術(shù)

參數(shù)為:a=1.6,x(1))=0.4。生成離散序列X(n),序列中從n=no(其起始位置n0也作為密鑰的一部分,此處no=310)開(kāi)始,抽取序列A (n-no),長(zhǎng)度與需要加密的小波系數(shù)個(gè)數(shù)相同。X(n)模板按照式(5)關(guān)系生成。

基于混沌序列的頻域圖像加密技術(shù)

從no=310處截取密鑰模板MK,將密鑰模板MK與小波系數(shù)進(jìn)行點(diǎn)乘,完成對(duì)小波系數(shù)的加密。圖3g即采用Daubechies9直接對(duì)該加密系數(shù)進(jìn)行IDWT變換的結(jié)果,得到一副非常混亂的Lena512密圖,可見(jiàn)原圖像信息得到有效的加密處理。

實(shí)驗(yàn)三、破解實(shí)驗(yàn)

任何一種加密方法都要經(jīng)過(guò)破解實(shí)驗(yàn)的檢驗(yàn)才能證明是有效的。先取a=1.6,x(1)=0.4,no=310,按照式(5)生成解密模板Mk,將解密模板Mk與加密小波系數(shù)進(jìn)行點(diǎn)乘得到解密的小波
系數(shù),將其進(jìn)行Daubechies9的IDWT變換,得到圖3h所示的一副非常清晰,與原圖一致的解密圖。

說(shuō)明Lena圖像能被有效地按照?qǐng)D1、圖2的過(guò)程進(jìn)行方便快速的加密和解密。再分別:取a=1.600001,x(1)=0.4,no=310; a=1.6,x(1)=0.400001,no=310,得到的模板Mk進(jìn)行同樣的IDWT變換,分別等到兩副仍然十分混亂的圖像圖3i、圖3 j。圖3k是采用與圖3 h相同的解密模板,進(jìn)行IDWT時(shí)采用Symlets9,同樣得到一副依然十分混亂的圖像??梢?jiàn),在解密過(guò)程中無(wú)論是混沌密鑰,還是小波變換參數(shù)出現(xiàn)問(wèn)題,均無(wú)法達(dá)到正確解密的目的。

要成功破譯該文的Lena密圖,其關(guān)鍵是要獲取密鑰數(shù)據(jù)文件,并從文件中成功解碼,取得所有加密參數(shù)包括初始值和混沌系統(tǒng)的參數(shù)等。由于該文采用加密圖像信息與密鑰信息分開(kāi)保存,并實(shí)現(xiàn)密鑰信息的偽裝和隱藏,增加密鑰的獲取和破解難度。

Shannon證明一次一密的密碼體制是不可破的。由于每一幅加密圖像對(duì)應(yīng)各自不同的初始條件,所以每一幅圖像就對(duì)應(yīng)不同的置換關(guān)系,那種試圖通過(guò)收集分析原始圖像和相應(yīng)加密結(jié)果信息以求尋找對(duì)應(yīng)關(guān)系的努力將是徒勞的。在混沌系統(tǒng)中,混沌序列對(duì)初始條件具有極其敏感的依賴性,在狀態(tài)空間中其軌道既非周期又不收斂,這種特性使混沌序列是不可預(yù)知、難以分析和預(yù)測(cè)。

下面假設(shè)一位攻擊者已經(jīng)通過(guò)某種途徑得到密鑰文件,他仍然需要運(yùn)行特定的解密程序才能得到密鑰。此處的密鑰也通過(guò)混沌加密處理,具有很強(qiáng)的隨機(jī)特性,且采用的混沌系統(tǒng)的初始值和參數(shù)的取值范圍為整個(gè)實(shí)數(shù)域,如果采用窮舉法,成功破解密鑰的機(jī)會(huì)為零。

如果攻擊者如果不去破解密鑰,而直接對(duì)圖像數(shù)據(jù)流進(jìn)行解密,如果他不知道采用了變換域加密技術(shù),破解過(guò)程根本無(wú)從談起;更進(jìn)一步,假設(shè)他知道采用何種小波變換,此時(shí)的關(guān)鍵技術(shù)就集中在對(duì)混沌序列的破解,該文采用混沌序列對(duì)特定位置的值進(jìn)行了特殊處理,由于混沌系統(tǒng)的種類(lèi)未確定,初始值和參數(shù)值的取值范圍為整個(gè)實(shí)數(shù)域,如果攻擊者采用窮舉法搜索初始值和系統(tǒng)參數(shù),目前還沒(méi)有計(jì)算機(jī)能夠完成這個(gè)任務(wù),因此該方法具有相當(dāng)高的安全性。

小知識(shí)之頻域:

頻域frequency domain 是描述信號(hào)在頻率方面特性時(shí)用到的一種坐標(biāo)系。對(duì)任何一個(gè)事物的描述都需要從多個(gè)方面進(jìn)行,每一方面的描述僅為我們認(rèn)識(shí)這個(gè)事物提供部分的信息。例如,眼前有一輛汽車(chē),我可以這樣描述它方面1:顏色,長(zhǎng)度,高度。方面2:排量,品牌,價(jià)格。而對(duì)于一個(gè)信號(hào)來(lái)說(shuō),它也有很多方面的特性。如信號(hào)強(qiáng)度隨時(shí)間的變化規(guī)律(時(shí)域特性),信號(hào)是由哪些單一頻率的信號(hào)合成的(頻域特性)