圖像加密算法之對(duì)角線拉伸混沌映射加密
根據(jù)雙邊對(duì)角線拉伸的思想,我們提出一種利用圖像加密的可逆二維混沌映射。該映射由左映射和右映射2個(gè)子映射組成,該方法通過對(duì)圖像的拉伸和折疊處理,來實(shí)現(xiàn)圖像文件的混沌加密。
一、二維混沌映射原理和算法
二維混沌映射利用了圖像的一個(gè)重要性質(zhì):像素能夠插入到其他像素間。設(shè)圖像大小為N×N,通過映射首先將原圖像拉伸為長N2的直線,然后再折疊成N×N的圖像,如圖1所示。

1、左映射算法?
設(shè)A(i,j),i,j=0,1,2,…,N-1,為圖像中任意一點(diǎn);l(i),i=0,1,...,N2-1,t為將A(i,j)拉伸后的一維向量。如圖1(a)所示,左映射算法為:
當(dāng)i+j<N、i>j時(shí),有:
![]()
當(dāng)i+j<N、i≤j時(shí),有:
![]()
當(dāng)i+j≥N、i<j時(shí),有:
![]()
當(dāng)i+j≥N、i≥j時(shí),有:
![]()
2、右映射算法
右映射算法既可以直接推導(dǎo)得到,也可以通過下列過程得到:
1)將原圖像作一次鏡像。設(shè)A,表示鏡像后的圖像,有:
![]()
式中i=0,1,2,…,N一1;j=0,1,2,...,N-1。
2)使用算法(1)~(4),得到右映射算法。
3、折疊算法
![]()
式中,i=0,1,2,…,N一1;j=0,1,2,:…,N-1。
二、圖像文件加密、解密算法
由于映射可分為左映射和右映射。將左映射和右映射的映射次數(shù)設(shè)計(jì)為密鑰Key。如Key=1234,表示圖像依次左映射1次,右映射2次,然后用左映射3次,最后用右映射4次。為了保證加密效果,每一個(gè)部分密鑰值都小于10。加密算法如圖2所示,其中Ki及K2分別是密鑰Key的一部分,可以相同或可互相推導(dǎo)得到,函數(shù)F(K)為密鑰的函數(shù),輸出為擴(kuò)散函數(shù)的參數(shù)。

圖像文件加密算法所采用的擴(kuò)散函數(shù)為:
![]()
式中:νk是指每一個(gè)像素的值;v'k為擴(kuò)散后的像素值;v-1=F(K2),G(v'k一1)=5×v'k一1;256灰度圖,L=256。
圖像加密算法分為3步:
1)利用密鑰Ki及算法(1)~(5),將圖像A(i,j)拉伸成一條直線l(i),i=0,1,...,N2 -1。
2)利用算法(6),將直線折疊得到置亂圖像B(i,j)。
3)利用密鑰K2及擴(kuò)散函數(shù),對(duì)置亂函數(shù)進(jìn)行處理得到密圖。
圖像解密算法與加密算法相反,如圖3所示。解密密鑰與加密密鑰相同,因此該加密算法為對(duì)稱加密算法。

三、加密實(shí)例和安全性能分析
如圖4所示,對(duì)Lena 256灰度網(wǎng)進(jìn)行加密。為了研究二維混沌映射的加密效果,首先令K2 =0,即不使用擴(kuò)散函數(shù)。此時(shí),加密系數(shù)僅僅置亂圖像,沒有改變圖像的像素值(直方圖不
變)。當(dāng)Key=1時(shí),圖像已沒有原圖特征;當(dāng)Key=1234567890123456時(shí),密圖像素平均分布,加密效果良好。

1、安全性能分析
(1)密鑰空間分析
由于最基本、最流行的破解方法是對(duì)密鑰進(jìn)行窮盡搜索,密鑰空間大是加密算法安全的前提。圖像加密算法的密鑰空間(無擴(kuò)散函數(shù))如表1所示。研究表明,密鑰空間大小只和密鑰長
度有關(guān),在理想情況下(計(jì)算速度允許),可認(rèn)為密鑰能無限增加。

(2)密鑰敏感度
當(dāng)加密密鑰Key=1234567890123456加密時(shí),用解密密鑰Keyi=1234567890123455和Key2 =1234567890123457分別解密。如圖5所示,即使加密密鑰和解密密鑰僅1位有最小的差異,也無法解密圖像,證明對(duì)密鑰差異非常敏感。

(3)統(tǒng)計(jì)分析
由于圖像相鄰像素間具有很強(qiáng)的相關(guān)性,如果密圖相鄰像素間相關(guān)性變小,說明密圖安全性變強(qiáng)。圖6為(x,y)和(x+1,y)的關(guān)系,原圖的相關(guān)系數(shù)為0. 9442,加密后的相關(guān)系數(shù)為0. 0054,證明密圖相鄰像素間相關(guān)度接近于零。其他相鄰點(diǎn)的相關(guān)系數(shù)如表2所示,說明密圖相鄰像素間相關(guān)性很小。


2、擴(kuò)散算法
因?yàn)閮H對(duì)圖像進(jìn)行置亂是不安全的,很難抵御明文攻擊。為了增強(qiáng)加密算法的安全性,增加擴(kuò)散函數(shù),見式(7),其中v-1 =F(K2) =150。加密后,密圖和直方圖分別如圖7所示。

在增加了擴(kuò)散機(jī)制后,對(duì)原圖像只有1個(gè)像素點(diǎn)有差異的2個(gè)密圖進(jìn)行NPCR(number 0f pixels change rate)和UACl(unified average changing intensity)分析。如圖8和圖9所示,當(dāng)
加密次數(shù)n=2時(shí),NPCR≈I。在參數(shù)不變的情況下,2個(gè)僅有1個(gè)像素不同的圖像,隨著加密次數(shù)的增加,密圖變得完全不同,2個(gè)原圖的差別擴(kuò)散到密圖的整個(gè)區(qū)域,說明擴(kuò)散效果良好。

四、與其他混沌加密技術(shù)的比較
和混沌流密碼比較,該加密算法具有加密速度快、可移植性強(qiáng)的特點(diǎn),由于并非直接使用偽隨機(jī)混沌流掩蓋明文,而是首先采用二維混沌映射置亂像素,然后利用擴(kuò)散算法改變像素值。因此,從一定程度上避免了因?yàn)閯?dòng)力學(xué)特性退化問題帶來的安全隱患,加密前后沒有信息損失、移植性高,加密方法簡(jiǎn)單,易于軟件、硬件實(shí)現(xiàn)。
和其他混沌映射比較,具有:
1)更大的密鑰空間,如Baker map最大為2N-1 (N為圖像的寬),而該加密的密鑰空間理論上只和密鑰長度有關(guān),只要計(jì)算速度允許,密鑰長度可隨之增加。
2)對(duì)密鑰變化更敏感i該算法將密鑰設(shè)計(jì)為整個(gè)圖像拉伸、折疊的數(shù)目,因此只要密鑰稍有變化,密圖就會(huì)截然不同。但其他二維混沌映射基本都將圖像分塊的數(shù)目設(shè)計(jì)為密鑰,拉伸、折疊操作都是對(duì)部分圖像進(jìn)行的。因此,用相似的密鑰可以解密密圖,降低了加密安全性。
3)加密算法更加簡(jiǎn)單、清晰,易于實(shí)現(xiàn)。如Baker map 一般形式下的算法具有非常復(fù)雜的形式,而該加密算法非常簡(jiǎn)單,易于實(shí)現(xiàn)。
4)加密速度快,能夠?qū)崿F(xiàn)實(shí)時(shí)加密。
在一臺(tái)PentiumⅢ(M)1.13 GHz的筆記本電腦上仿真表明,未優(yōu)化的二維混沌映射的vc程序,運(yùn)行速度約為3 Mbps。能滿足實(shí)時(shí)文件加密需要。該混沌映射也能應(yīng)用于數(shù)字水印等領(lǐng)域。
小知識(shí)之動(dòng)力學(xué)
動(dòng)力學(xué)是理論力學(xué)的一個(gè)分支學(xué)科,它主要研究作用于物體的力與物體運(yùn)動(dòng)的關(guān)系。動(dòng)力學(xué)的研究對(duì)象是運(yùn)動(dòng)速度遠(yuǎn)小于光速的宏觀物體。動(dòng)力學(xué)是物理學(xué)和天文學(xué)的基礎(chǔ),也是許多工程學(xué)科的基礎(chǔ)。










