基于隨機分數(shù)傅里葉變換的雙圖像加密算法

近十幾年來,光學圖像加密技術(shù)吸引了很多中外研究者的興趣。其中很多算法中用到了隨機位相作為密碼,如比較經(jīng)典的雙隨機位相編碼。而多數(shù)圖像加密是近三年來才出 現(xiàn)的一種圖像加密方式,因為它能同時加密多幅圖像而得到人們的關(guān)注。同時這種圖像加密方式在信息的安全快速傳輸方面具有潛在的應(yīng)用。

為此,我們提出了一種雙圖像加密算法,其原理是把兩幅原始圖像作為加密系統(tǒng)輸入復函數(shù)的振幅和相位分布函數(shù)進行圖像編碼,然后對輸入復函數(shù)進行隨機分數(shù)傅里葉變換,得到一個頻域的幅函數(shù)分布,分離出振幅作為加密圖像而相應(yīng)的位相部分則作為加密算法的密碼,同時對這個加密算法的安全性進行了數(shù)值仿真分析。

一、圖像加密算法

一般的圖像加密算法是使用隨機位相作加密系統(tǒng)的密碼,本文嘗試不使用額外的隨機位相,用光學隨機分數(shù)傅里葉變換來實現(xiàn)雙圖像加密。

1、圖像加密算法

一個雙圖像加密算法如圖1。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

兩個原始圖像I1(x,y)和I2(x,y)分別被編碼到表示輸入平面光場的復振幅函數(shù)C(x,y)上,即:

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

這個編碼過程的光學實現(xiàn)可以使用空間光調(diào)制器來完成振幅和相位的調(diào)制,而圖像加密過程使用一次隨機分數(shù)傅里葉變換來完成。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

其中I0作為加密圖像,符號§α表示隨機分數(shù)傅里葉變換,(1-t)P是隨機分數(shù)傅里葉變換的隨機相位,作為算法的密碼,0<t<1,0<P<2π,式中φ0的記錄需要使用參考光束來完成,而隨機分數(shù)傅里葉變換的輸出相位φr0應(yīng)是:

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

式中φ0是加密過程的中間量,而φ0r是加密過程最終的輸出相位。

在隨機分數(shù)傅里葉變換的光學實現(xiàn)中,在輸出平面也需要一個隨機位相調(diào)制,這部分操作在實際中可以對使用在線全息記錄的位相調(diào)用計算機進行數(shù)據(jù)處理來獲得加密的輸出位相,而不必再使用空間光調(diào)制器來完成這個操作。

2、圖像解密過程

圖像解密過程就是圖像加密的逆過程,聯(lián)合I0,φ0r和密碼(1-t)P執(zhí)行一次逆隨機分數(shù)傅里葉變換就可以解密出兩幅原始圖像I1和I2了。

二、加密算法的數(shù)值模擬

強度為0的像素點對于相位編碼圖像的相應(yīng)像素位置的數(shù)值具有“湮沒”作用:

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

這樣,在解密時無法得到正確的位相信息,即圖像在0像素位置增加一個較小的正數(shù),即:

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

用兩種類型(即簡單文本圖像和灰度級肖像)圖像作為輸入罔像用數(shù)值模擬方法驗證這個雙圖像加密算法。在模擬中用到的四幅256×256像素的原始圖像如圖2。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

其被分為四組進行測試,即g1={(a),(d)},g2={(b),(d)},g3={(c),(a)},g4={(c),(b)},對第一幅圖像進行振幅編碼,而對第二幅圖像進行相位編碼,四組測試中分數(shù)階次選取的數(shù)值為a1=0.4,a2=0.5,a3=0.6,a4=0.7。而參量ε=1×104,t=0.1,所得的加密圖像如圖3。從圖3可以看出來,在不同情況下所得的加密圖像都有類似于白噪音圖像。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

圖4給出了使用正確密碼得到的恢復圖像,其中各列圖像對應(yīng)著不同的分組,所有原始圖像都被完好地恢復出來。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

為了衡量解密圖像和原始圖像之間的相似程度,定義均方誤差(MSE)函數(shù):

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

式中I0和Ir分別表示原始圖像和恢復圖像的像素數(shù)值矩陣。而參量(M,N)是圖像矩陣的行數(shù)和列數(shù).圖4中各圖像相應(yīng)的MSE值如表1。從表中可見,所有的MSE取值都很小,可以認為原始圖像可以完好地被解密出來。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

三、加密算法安全性討論

近兩年來,圖像加密算法的安全性問題得到了很多研究者的關(guān)注,人們考慮了光學圖像加密中的經(jīng)典方案,即雙隨機相位編碼技術(shù)的安全性問題。本文考慮密碼在不同破解程度下加密圖像的安全性問題。

首先考慮隨機位相P在一定范圍內(nèi)的擾動(其它參量α,t選擇正確的數(shù)值),即:

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

式中P和P'分別表示正確的相位值和擾動后的數(shù)值。d是擾動的振幅,而△P表示擾動的隨機權(quán)重值,其值均勻地分布于區(qū)間(-1,1)。這樣測試安全性的方式可以估計算法抵抗暴力破解的能力。四個分組在這樣的模擬攻擊下的MSE曲線如圖5,其中y軸數(shù)值選取MSE的常用對數(shù)(即LMSE),本文認為MSE的閾值為10,在閾值以下意味著原始圖像可以被解密。圖5給出四組測試在這樣的攻擊下的LMSE曲線,其中實線標示的曲線對應(yīng)振幅編碼的圖像,虛線對應(yīng)相位編碼的圖像。實曲線在閾值以下部分d的變化范圍△d顯示于四個子圖中,所有的△d都小于0.12。如果用隨機相位變化區(qū)間[O,2π]估算,則算法的安全級近似為(2π/0. 12)256X256=52256X256,這是一個非常大的數(shù)字.而虛線標示的權(quán)限對應(yīng)d的變化范圍更小,四個分組d的變化范圍要小于0.004,這說明編碼于位相部分的圖像具有更高的安全性,算法的安全級是較為理想的。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

若隨機矩陣△P的一半元素的值等于O,即半數(shù)的密碼被攻擊者獲?。ㄔ谀M中選擇矩陣△P下半部分的元素等于0),d在一定范圍變化的結(jié)果。對應(yīng)的LMSE曲線濕示于圖6。從圖6中可以發(fā)現(xiàn)△d的數(shù)值比圖5中有所提高,但是編碼到振幅的圖像還是有一定的安全級。而編碼到相位上的圖像則具有較為理想的安全性。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

和分數(shù)傅里葉變換一樣,隨機分數(shù)傅里葉變換也具有分數(shù)階這個參量??紤]隨機相位被完全獲知以及參量f的取值也是正確的情況時,變換的分數(shù)階所能提供安全性的能力,所得的LMSE曲線如圖7,其中計算時分數(shù)階的步長選擇0.002??梢娋幋a到相位和振幅的圖像所對應(yīng)的曲線都是具有一個很窄的范圍內(nèi),其寬度要小于0.004。而且在正確的分數(shù)階次附近兩幅原始圖像被完好地恢復回來的,四個子圖中的解密分數(shù)階的位置與預先使用的分數(shù)階是一致的,因為分數(shù)階次僅僅是一個數(shù)值,更主要的密碼還是要依靠隨機相位。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

此外參量t對于編碼到相位部分的圖像也具有一定的密碼作用。針對這種情況,假設(shè)t未知,而其它的參量已知(這時編碼到振幅部分的圖像可以完全被解密)。四個分組相應(yīng)的LMSE曲線如圖8。其中在閾值以下的范圍△t是小于0.0065的,所以攻擊者需要一定的努力才能解密編碼于相位部分的圖像,如果減小t的取值,△t還要相應(yīng)地減小。

基于隨機分數(shù)傅里葉變換的雙圖像加密算法

實際應(yīng)用中,較為重要的圖像應(yīng)該首選編碼到相位部分,因為這部分的安全級要高一些。而輸入平面相位部分的編碼特點類似于水印的思想(即原始圖像與隨機相位的權(quán)重疊加),這在一定程度上增加了對應(yīng)原始圖像的安全性。

小知識之相位編碼

磁共振成像術(shù)語。磁共振成像中,為確定所選層面內(nèi)自旋的位置,90°射頻脈沖后間隔一段時間,在與層面選擇梯度垂直的方向再施加一個梯度磁場(相位編碼梯度),使沿該梯度方向自旋的相對相位發(fā)生變化。磁場越強,自旋進動頻率越快,因此較強磁場中自旋偏轉(zhuǎn)的角度比較弱磁場中自旋偏轉(zhuǎn)的角度要大。經(jīng)層面選擇后,相位編碼和梯度編碼可共同確定層面中自旋的位置。