具有完整性檢驗(yàn)?zāi)芰Φ膱D像文件加密方案

為了保護(hù)圖像信息的安全,我們結(jié)合組合理論知識(shí),提出一種新的基于可逆整數(shù)矩陣的、具有完整性檢驗(yàn)?zāi)芰Φ膱D像文件加密方案。該方案可以應(yīng)用于數(shù)字圖像隱藏的預(yù)處理,以提高信息的隱蔽性。此外,本文方案可以簡(jiǎn)單地?cái)U(kuò)展到彩色圖上的應(yīng)用,實(shí)現(xiàn)彩色圖的加密,具有良好的擴(kuò)展性和應(yīng)用性。

一、關(guān)于模M的可逆整數(shù)矩陣

基于組合理論的性質(zhì),利用一個(gè)整數(shù)導(dǎo)出了可逆整數(shù)矩陣和其逆矩陣的表達(dá)式。設(shè)給定整數(shù)x≥0,由關(guān)系式:

為元素可以定義一個(gè)n階方陣系式:

它的元素都足整數(shù),稱之為整數(shù)矩陣。以關(guān)系式:

為元素可以構(gòu)造一個(gè)與A(x)互逆的n階整數(shù)矩陣:

其中規(guī)定:C0-1=,且當(dāng),l<m或m<0時(shí)Cnm=0。

由相關(guān)資料證明可知,所構(gòu)造的矩陣A(x)和B(x)互逆,且矩陣均由x決定。在圖像文庫加密過程中,x可以作為加密和解密的密鑰。

但是由于計(jì)算組合數(shù)的緣故,導(dǎo)出生成的可逆矩陣元素值可能非常大,以致超過256灰度級(jí)的范圍。為了解決這個(gè)問題,將以上得到的可逆矩陣的所有元素模M。顯而易見,模M后的矩陣同樣是模可逆的,即:

其中A’和B'分別是A和B模M后的矩陣。由于圖像的灰度級(jí)為256,為了使得加密后的密圖仍為256的灰度級(jí)別,本文中令M為256。

二、基于可逆整數(shù)矩陣的圖像加密方案

一幅灰度圖G可以視為一個(gè)元素值為[O,255]的整數(shù)矩陣口本方案首先給出密鑰x、M= 256、以及密鑰矩陣的大小blocksize,然后根據(jù)第1節(jié)描述的算法,產(chǎn)生一對(duì)模256的可逆矩陣A和B,其值的范圍為[O,255]。在加密方案中,矩陣B用來作為加密的密鑰,而A用來作為解密的密鑰。A和B均可由x導(dǎo)出生成,在加密解密過程中,僅需要把x作為密鑰保存即可。

加密前對(duì)秘密圖像進(jìn)行預(yù)處理,即將原始圖像的像素加128,目的是為了處理全黑的特殊情況。解密恢復(fù)時(shí),把得到的結(jié)果相應(yīng)的減去128。假定,經(jīng)過預(yù)處理之后的灰度圖像為:

其中g(shù)ij為圖像坐標(biāo)(i,j)處的灰度值。

1、加密過程

加密過程分為兩個(gè)過程,具體描述如下:

Phase l 將密鑰矩陣B從圖像G的左上角,以1/4×blocksize的步驟,從左到右,從上到下覆蓋地掃描到右下角,得到G'。移動(dòng)過程中,密鑰矩陣B和掃描經(jīng)過的圖像塊block的作用方式:

Phase 2 將密鑰矩陣B從G'的右下角,以1/4×blocksize的步驟,從右到左,從下到上覆蓋地掃描到左上角,得到G''。移動(dòng)過程中,密鑰矩陣B和掃描經(jīng)過的圖像塊block的作用方式:

加密過程中的掃描方式,決定了塊的變化將對(duì)其他塊的恢復(fù)產(chǎn)生影響。而掃描過程中,加密矩陣和矩陣塊的作用方式,決定了塊內(nèi)點(diǎn)的變化將對(duì)塊內(nèi)其他點(diǎn)的恢復(fù)產(chǎn)生影響,這就增加了像素點(diǎn)之間的相關(guān)性。這樣,加密圖像出現(xiàn)微小變化,將影響到恢復(fù)圖像的全局變化。因此,該圖像的加密方案是脆弱的。該性質(zhì)可以用作圖像信息的完整性檢驗(yàn)。

2、解密過程

解密密鑰A同樣可由X生成導(dǎo)出,且A和B是模256的可逆矩陣。解密過程是加密的簡(jiǎn)單逆過程,也分為兩個(gè)階段,具體流程如下:

Phase l 將密鑰矩陣A從G'',的左上角,以114×blocksize的步驟,從左到右,從上到下覆蓋地掃描到右下角,得到G'。而移動(dòng)過程,密鑰矩陣A和掃描經(jīng)過的矩陣塊block的作用方式:

Phase 2 將密鑰矩陣A從G'的右下角,以114×blocksize的步驟,從右到左,從下到上覆蓋的掃描到左上角,得到圖像G。而移動(dòng)過程中,密鑰矩陣A和掃描經(jīng)過的矩陣塊block的作用方式:

最后,將圖像G的像素按照預(yù)處理的逆過程減去128。便可得到原始的秘密圖像。

三、實(shí)驗(yàn)結(jié)果及分析

1、實(shí)驗(yàn)結(jié)果

在實(shí)驗(yàn)中,令密鑰x=1,blocksize= 32,M= 256。根據(jù)第1節(jié)描述的算法,產(chǎn)生一對(duì)模256的可逆按數(shù)矩陣A和B。作為密鑰矩陣。選擇復(fù)雜圖像Fishingboat,Lena,Clock,Baboon和簡(jiǎn)單黑白圖像S作為測(cè)試圖像,所有測(cè)試圖像大小均為256x256。系統(tǒng)環(huán)境Windows7,安裝內(nèi)存2G,CPU 2.90GHZ,實(shí)驗(yàn)測(cè)試環(huán)境matlab7.9。實(shí)驗(yàn)結(jié)果如圖1所示。

圖1的實(shí)驗(yàn)結(jié)果表明,不管足復(fù)雜的自然圖像,還是輪廓明顯的簡(jiǎn)單黑白圖像,加密后的密圖是一個(gè)均勻的噪聲圖。而且,當(dāng)密圖中的某一個(gè)像素發(fā)生微小變化時(shí),解密得到的圖像仍然是噪聲圖,得不到原始圖像的任何信息,所以該加密方案是脆弱、易損的。通過人眼視覺可以判斷該秘密圖像是否被篡改,從而檢驗(yàn)密圖信息的完整性,不需要任何復(fù)雜的計(jì)算。實(shí)驗(yàn)結(jié)果表明了圖像加密方案的有效性。

本文為了客觀的描述加密圖像與原始圖像的差別,利用兩圖像的相關(guān)系數(shù)作為圖像相似性的客觀度量。

為了比較,本文對(duì)Lena圖像分別利用本文方案和Arnold置亂方案進(jìn)行測(cè)試,實(shí)驗(yàn)結(jié)果如圖2所示。結(jié)果表示,當(dāng)密圖中的某一像素發(fā)生微小變化時(shí),利用本文方案解密得到的恢復(fù)圖依然是個(gè)噪聲圖(與原始圖像的相關(guān)系數(shù)ρ=0.0005),而Arnold方案卻可以恢復(fù)出原始圖像的許多信息(與原始圖像的相關(guān)系數(shù)ρ=0.9999)。

2、安全性分析

在進(jìn)行安全性分析前,描述的一個(gè)定理,即ZM上N階可逆矩陣的個(gè)數(shù)為:

其中M≥2為整數(shù),M=p1r1p2r2...psrs,p為M的既約因子分解ri≥1( i=1,2--,s),p1,p2,…,Ps為互異的素?cái)?shù)。

在本文加密方案中,由于模數(shù)M為256時(shí),當(dāng)n=10時(shí):

此時(shí)密鑰空間足夠大,足以抵抗大量攻擊。

小知識(shí)之矩陣矩陣是高等代數(shù)學(xué)中的常見工具,也常見于統(tǒng)計(jì)分析等應(yīng)用數(shù)學(xué)學(xué)科中。在物理學(xué)中,矩陣于電路學(xué)、力學(xué)、光學(xué)和量子物理中都有應(yīng)用;計(jì)算機(jī)科學(xué)中,三維動(dòng)畫制作也需要用到矩陣。 矩陣的運(yùn)算是數(shù)值分析領(lǐng)域的重要問題。將矩陣分解為簡(jiǎn)單矩陣的組合可以在理論和實(shí)際應(yīng)用上簡(jiǎn)化矩陣的運(yùn)算。對(duì)一些應(yīng)用廣泛而形式特殊的矩陣,例如稀疏矩陣和準(zhǔn)對(duì)角矩陣,有特定的快速運(yùn)算算法。關(guān)于矩陣相關(guān)理論的發(fā)展和應(yīng)用,請(qǐng)參考矩陣?yán)碚摗T谔祗w物理、量子力學(xué)等領(lǐng)域,也會(huì)出現(xiàn)無窮維的矩陣,是矩陣的一種推廣。