圖像文件加密方案之基于可逆矩陣的具有完整性檢驗能力的方法
為了保護圖像信息的安全,我們利用組合理論知識,提出一種新的基于可逆整數(shù)矩陣的、具有完整性檢驗能力的圖像加密方案。該方案將一個灰度圖像加密生成一個脆弱的噪聲密圖,解密過程是加密的簡單逆過程。密圖的完整性可以憑借人類視覺系統(tǒng)進行檢驗,不需要任何復雜的計算。當密圖遭受惡意篡改時,解密得到一個噪聲圖,無法得到原始圖像的任何信息。
一、關于模M的可逆整數(shù)矩陣
基于組合理論的性質,利用一個整數(shù)導出了可逆整數(shù)矩陣和其逆矩陣的表達式。設給定整數(shù)x≥O,由關系式:
為元素可以定義一個n階方陣:
它的元素都是整數(shù),稱之為整數(shù)矩陣。以關系式:
為元素可以構造一個與A(x)互逆的n階整數(shù)矩陣:
其中規(guī)定:Co1=1,且當n<m或m<0時Cnm=O。
由資料證明可知,所構造的矩陣A(x)和B(x)互逆,且矩陣均由x決定。在圖像加密過程中,x可以作為加解密的密鑰。
但是由于計算組合數(shù)的緣故,導出生成的可逆矩陣元素值可能非常大,以致超過256灰度級的范圍。為了解決這個問題,將以上得到的可逆矩陣的所有元素模M。顯而易見,模M后的矩陣同樣是??赡娴?,即:
其中A'和B'分別是A和B模M后的矩陣。由于圖像的灰度級為256,為了使得加密后的密圖仍為256的灰度級別,本文中令M為256。
二、基于可逆整數(shù)矩陣的圖像加密方案
一幅灰度圖G可以視為一個元素值為[O,255]的整數(shù)矩陣。本方案首先給出密鑰x、M= 256、以及密鑰矩陣的大小blocksize,然后根據(jù)前面描述的算法,產(chǎn)生一對模256的可逆矩陣A和B,其值的范圍為[O,255]。在加密方案中,矩陣B用來作為加密的密鑰,而A用來作為解密的密鑰。 A和B均可由x導出生成,在加密解密過程中,僅需要把x作為密鑰保存即可。
加密前對秘密圖像進行預處理,即將原始圖像的像素加128,目的是為了處理全黑的特殊情況。解密恢復時,把得到的結果相應的減去128。假定,經(jīng)過預處理之后的灰度圖像為:
其中gij為圖像坐標(i,j)處的灰度值。
1、加密過程
加密過程分為兩個過程,具體描述如下:
Phase 1 將密鑰矩陣B從圖像G的左上角,以1/4 - blocksize的步驟,從左到右,從上到下覆蓋地掃描到右下角,得到Gfo移動過程中,密鑰矩陣B和掃描經(jīng)過的圖像塊block的作用方式:
Phase 2 將密鑰矩陣B從G'右下角,以1/4-blocksize的步驟,從右到左,從下到上覆蓋地掃描到左上角,得到G''。移動過程中,密鑰矩陣B和掃描經(jīng)過的圖像塊block的作用方式:
加密過程中的掃描方式,決定了塊的變化將對其他塊的恢復產(chǎn)生影響。而掃描過程中,加密矩陣和矩陣塊的作用方式,決定了塊內(nèi)點的變化將對塊內(nèi)其他點的恢復產(chǎn)生影響,這就增加了像素點之間的相關性。這樣,加密圖像出現(xiàn)微小變化,將影響到恢復圖像的全局變化。因此,該圖像的加密方案是脆弱的。該性質可以用作圖像信息的完整性檢驗。
2、解密過程
解密密鑰A同樣可由x生成導出,且A與B是模256的可逆矩陣。解密過程是加密的簡單逆過程,也分為兩個階段,具體流程如下:
Phase 1 將密鑰矩陣A從G"的左上角,以1/4-blocksize的步驟,從左到右,從上到下覆蓋地掃描到右下角,得到G'。而移動過程,密鑰矩陣A和掃描經(jīng)過的矩陣塊block的作用方式:
Phase 2 將密鑰矩陣A從G'的右下角,以1/4-blocksize的步驟,從右到左,從下到上覆蓋的掃描到左上角,得到圖像G。而移動過程中,密鑰矩陣4和掃描經(jīng)過的矩陣塊block的作用方式:
最后,將圖像G的像素按照預處理的逆過程減去128,便可得到原始的秘密圖像。
三、實驗結果及分析
1、實驗結果
在實驗中,令密鑰x=1,blocksize=32,M= 256。根據(jù)前面描述的算法,產(chǎn)生一對模256的可逆整數(shù)矩陣A和B,作為密鑰矩陣。選擇復雜圖像Fishingboat,Lena,Clock,Babooi和簡單黑白圖像S作為測試圖像,所有測試圖像大小均為256-256。系統(tǒng)環(huán)境Wmdows7,安裝內(nèi)存2G,CPU2.90GHZ,實驗測試環(huán)境matlab7.9 0實驗結果如圖1所示。
圖1的實驗結果表明,不管是復雜的自然圖像,還是輪廓明顯的簡單黑白圖像,加密后的密圖是一個均勻的噪聲圖。而且,當密圖中的某一個像素發(fā)生微小變化時,解密得到的圖像仍然是噪聲圖,得不到原始圖像的任何信息,所以該加密方案是脆弱、易損的。通過人眼視覺可以判斷該秘密圖像是否被篡改,從而檢驗密圖信息的完整性,不需要任何復雜的計算。實驗結果表明了圖像加密方案的有效性。
本文為了客觀的描述加密圖像與原始圖像的差別,利用兩圖像的相關系數(shù)作為圖像相似性的客觀度量。
為了比較,本文對Lena圖像分別利用本文方案和Arnold置亂方案網(wǎng)進行測試,實驗結果如圖2所示。結果表示,當密圖中的某一像素發(fā)生微小變化時,利用本文方案解密得到的恢復圖依然是個噪聲圖(與原始圖像的相關系數(shù):= 0.0005),而Arnold方案卻可以恢復出原始圖像的許多信息(與原始圖像的相關系數(shù))=0.9999。
2、安全性分析
在進行安全性分析前,介紹本文所描述的一個定理,即Zm上n階可逆矩陣的個數(shù)為:
其中M≥2為整數(shù),M=P1r1,p2r2,psrs為M的既約因子分解ri≥1(i=1,2...,s),p1,p2,…,Ps為互異的素數(shù)。
在本文加密方案中,由于模數(shù)M為256時,當n= 10時,N10(256)=9j=1(210,2j)2700,此時密鑰空間足夠大,足以抵抗大量攻擊。
小知識之可逆矩陣
可逆矩陣是線性代數(shù)中的一個矩陣,其定義為在線性代數(shù)中,給定一個 n 階方陣A,若存在一n 階方陣B, 使得AB=BA=In(或AB=In、BA=In 任滿足一個),其中In 為n 階單位矩陣,則稱A 是可逆的,且B 是A 的逆陣,記作 A^(-1)。








