本發(fā)明屬于信息安全和光信息處理技術領域,涉及一種單透鏡的光學彩色圖像加密系統(tǒng)。
背景技術:
數(shù)字圖像作為當前最流行的多媒體形式之一,在政治、經(jīng)濟、軍事、教育等領域有著廣泛的應用。在互聯(lián)網(wǎng)技術高度發(fā)達的今天,如何保護數(shù)字圖像免遭篡改、非法復制和傳播具有重要的實際意義。對圖像加密技術的研究已成為當前信息安全領域的熱點之一。由于光學信息處理技術具有高處理速度、高并行度、能快速實現(xiàn)卷積和相關運算等優(yōu)點,近年來,利用光學方法進行數(shù)字圖像加密引起了人們的極大興趣(見文獻[1])。在光學圖像加密技術中,最具有代表性的是Javidi等提出的基于光學4f系統(tǒng)的雙隨機相位編碼方法(見文獻[2])。該技術開辟了光學圖像加密的新領域,基于該技術誕生了一大批光學加密新方法和新技術(見綜述文獻[3])。然而,大多數(shù)基于雙隨機相位編碼方法的光學圖像加密技術中,存在如下問題:1)當待加密的圖像為實值圖像時,系統(tǒng)的第一塊隨機相位掩膜起不到密鑰作用(見文獻[4]);2)系統(tǒng)的加密密鑰為圖像尺寸的隨機相位掩膜,因此,密鑰管理和傳輸不便(見文獻[5]);3)由于隨機相位掩膜不便更新,因此,加密系統(tǒng)易受選擇明文攻擊和已知明文攻擊(見文獻[6],[7])。
參考文獻:
[1]O.Matoba,T.Nomura,E.Perez-Cabre,M.Millan,and B.Javidi,Optical techniques for information security,Proceedings of IEEE 2009,97:1128-1148
[2]P.Réfrégier and B.Javidi,Optical image encryption based on input plane and Fourier plane random encoding,Opt.Lett.,1995,20:767-769
[3]S.Liu,C.Guo,and J.T.Sheridan,A review of optical image encryption techniques,Optics&Laser Technology,2014,57:327-342
[4]W.Chen,B.Javidi and X.Chen,Advances in optical security systems,Advances in Optics and Photonics,2014,6:120-155
[5]S.Yuan,Y.Xin,M.Liu,S.Yao,and X.Sun,An improved method to enhance the security of double random-phase encoding in the Fresnel domain,Optics&Laser Technology,2012,44:51-56
[6]X.Peng,H.Wei,and P.Zhang,Chosen-plaintext attack on lensless double-random phase encoding in the Fresnel domain,Opt.Lett.,2006,31:3261-3263
[7]U.Gopinathan,D.S.Monaghan,T.J.Naughton,and J.T.Sheridan,A known-plaintext heuristic attack on the Fourier plane encryption algorithm.Opt.Express,2006,14:3181-3186。
技術實現(xiàn)要素:
基于光學4f系統(tǒng)的雙隨機相位編碼技術,以及基于該技術而發(fā)展起來的一系列光學圖像加密技術,大都存在以下問題,即當圖像為實值圖像時,第一塊隨機相位掩膜起不到密鑰作用;加密系統(tǒng)中密鑰不便管理和傳輸;由于隨機相位密鑰不便更新,加密系統(tǒng)易受選擇明文攻擊和已知明文攻擊。針對上述技術問題,本發(fā)明提供了一種用于彩色圖像加密的單透鏡光學系統(tǒng),主要從光學系統(tǒng)上解決了第一塊隨機相位掩膜在圖像為實值時不能起到密鑰作用的問題,以及從密鑰生成方法上解決了密鑰管理和傳輸、密鑰更新的問題。本發(fā)明采用的技術方案是,單透鏡彩色圖像加密系統(tǒng),包括以下四個部分:
(1)密鑰生成部分:
第一塊隨機相位掩膜由Duffing混沌系統(tǒng)生成,第二塊隨機相位掩膜由Tinkerbell混沌系統(tǒng)生成,Duffing混沌和Tinkerbell混沌都是二維混沌系統(tǒng),混沌系統(tǒng)的初值和控制參數(shù)在加密系統(tǒng)中作為主密鑰,第一塊和第二塊隨機相位掩膜都起主密鑰作用,光學系統(tǒng)中用于照射輸入圖像的入射光波的波長和菲涅耳衍射距離作為加密系統(tǒng)的輔助密鑰;
(2)圖像加密部分:
在加密一幅特定的彩色圖像前,首先對于Duffing和Tinkerbell混沌系統(tǒng),設定合適的初值和控制參數(shù);選擇合適波長的光波作為入射光波;設定合適的菲涅耳衍射距離,然后,將一幅待加密的彩色圖像分解為R,G,B三個通道,這三個通道在入射光的照射下進行菲涅耳變換,經(jīng)菲涅耳變換后的三個通道分別被置于透鏡前焦面上的第一塊混沌隨機相位掩模調(diào)制,調(diào)制后的三個通道經(jīng)單透鏡傅里葉變換后再被置于透鏡后焦面上的第二塊混沌隨機相位掩模調(diào)制,經(jīng)兩次變換和兩次調(diào)制后,就得到加密的R,G,B通道,通過對三個加密通道的整合,就得到加密的彩色圖像;
(3)密鑰傳輸部分:
為保證密鑰傳輸?shù)陌踩裕x擇RSA公鑰算法來加密(2)中所用的密鑰,對于RSA公鑰算法,首先選擇兩個合適的大素數(shù),用這兩個素數(shù)生成相應的公鑰和私鑰,圖像加密過程中使用的加密密鑰,即混沌系統(tǒng)的初值和控制參數(shù)、入射光的波長和菲涅耳衍射距離,經(jīng)RSA公鑰算法中的公鑰加密后傳給被授權的解密方,解密方收到被加密的密鑰后,用自己的私鑰先解密出這些密鑰,然后再用這些密鑰來解密圖像;
(4)圖像解密部分:
首先,解密方用解密后得到的混沌參數(shù)生成相應的兩塊隨機相位掩膜;然后,將加密后的彩色圖像分為R,G,B三個通道,這三個通道分別被置于透鏡前焦面上的第二塊混沌隨機相位掩模的復共軛調(diào)制,調(diào)制后的三個通道經(jīng)單透鏡逆傅里葉變換后被置于透鏡后焦面上的第一塊混沌隨機相位掩模的復共軛再調(diào)制,然后再進行逆菲涅耳變換,就得到解密后的三個通道,通過整合這三個解密后的通道,就得到解密后的彩色圖像。
用于生成隨機相位掩膜的兩個二維混沌系統(tǒng)分別為Duffing混沌和Tinkerbell混沌,其離散形式的數(shù)學表達式分別為:
對于Duffing混沌系統(tǒng),通常將控制參數(shù)設定為a=2.75和b=0.2;對于Tinkerbell混沌系統(tǒng),通常將控制參數(shù)設定為a=0.9,b=-0.6013,c=2.0和d=0.5;xn,yn和xn+1,yn+1分別表示混沌系統(tǒng)的輸入值和迭代輸出值;
假設要加密的圖像的尺寸為M×N個像素,則兩塊混沌隨機相位掩膜的尺寸也是M×N個像素,對于兩個二維混沌系統(tǒng),使其迭代(M×N)/2次后,得到兩組隨機數(shù)序列X1={x′1,x′2,…,x′(M×N)/2},Y1={y′1,y′2,…,y′(M×N)/2}和X2={x″1,x″2,…,x″(M×N)/2},Y2={y″1,y″2,…,y″(M×N)/2},其中,x′1,x′2,…,x′(M×N)/2和y′1,y′2,…,y′(M×N)/2分別表示Duffing混沌系統(tǒng)的迭代輸出值;x″1,x″2,…,x″(M×N)/2和y″1,y″2,…,y″(M×N)/2分別表示Tinkerbell混沌系統(tǒng)的迭代輸出值。將這兩組隨機數(shù)序列分別整合成兩個二維矩陣的形式Z1={z′i,j|i=1,2,…,M;j=1,2,…,N}和Z2={z′i,j|i=1,2,…,M;j=1,2,…,N},其中z′i,j和z″i,j為二維矩陣的元素,i,j表示矩陣元素的位置;則得到兩塊混沌隨機相位掩膜,其數(shù)學表達式分別為C1(x1,y1)=exp(j2πz′i,j)和C2(x2,y2)=exp(j2πz″i,j),其中,(x1,y1)和(x2,y2)分別表示兩塊隨機相位掩膜所處位置的坐標,j表示虛數(shù)單位,π表示圓周率。
(2)圖像加密部分:
設待加密的彩色圖像的數(shù)學表達式為:
U0(x0,y0)=U0R(x0,y0)+U0G(x0,y0)+U0B(x0,y0) (3)
其中,(x0,y0)表示待加密圖像所處位置的坐標,U0R,U0G和U0B是彩色圖像的三個顏色通道,則彩色圖像經(jīng)距離為z的菲涅耳衍射后的數(shù)學表達式為:
其中,λ為入射光波的波長,j表示虛數(shù)單位;將上式記為:
U1(x1,y1)=FSTλ,z[U0(x0,y0)]. (5)
其中,F(xiàn)STλ,Z{·}表示菲涅耳變換;
經(jīng)菲涅耳衍射后的圖像與第一塊混沌隨機相位掩膜作用,數(shù)學上表示為相乘,然后進行單透鏡傅里葉變換,再與第二塊混沌隨機相位掩膜作用即相乘,最終得到加密后的圖像,其數(shù)學表達式如下:
U2(x2,y2)=FT[U1(x1,y1)·C1(x1,y1)]·C2(x2,y2), (6)
其中,F(xiàn)T[·]表示傅里葉變換。
(3)密鑰傳輸部分:
對于RSA公鑰算法,選定的兩個素數(shù)分別為p=9151和q=2357,據(jù)此得到n=p×q=21568907和φ=(p-1)×(q-1)=21557400,如果將公鑰設定為e=3709939,則據(jù)此得到私鑰d=7606459,在密鑰傳輸過程中,用公鑰e=3709939加密這些密鑰,授權方收到加密后的密鑰后,再用自己的私鑰d=7606459解密出這些密鑰,用解密出的密鑰就可以最終解密出原來的圖像。
(4)圖像解密部分:
被授權方收到加密后的彩色圖像和密鑰后,進行以下步驟就可以最終還原出來原始的圖像:
其中,表示還原后的圖像,IFST{·}表示逆菲涅耳變換,IFT[·]表示逆傅里葉變換,*表示共軛算符。
本發(fā)明的特點及有益效果是:
本發(fā)明提供的彩色圖像加密系統(tǒng)中只含有一個透鏡,在光學實現(xiàn)上相對經(jīng)典的4f系統(tǒng)更為簡單;當圖像為實值圖像時,加密系統(tǒng)的兩塊混沌隨機相位掩膜都能起到主密鑰作用;混沌系統(tǒng)的初值和控制參數(shù)、入射波長及衍射距離作為密鑰,便于密鑰管理和傳輸;對于加密不同的彩色圖像,加密系統(tǒng)的密鑰可以很方便的進行更新,故能有效抵抗選擇明文攻擊和已知明文攻擊。
附圖說明:
圖1為單透鏡彩色圖像加密系統(tǒng)的原理示意圖;
圖2加密前后及解密后圖像對比圖。
(a)為待加密的原彩色圖像;
(b)為本系統(tǒng)加密的圖像;
(c)為所有密鑰均正確時的解密圖像;
圖3若干種情況下解密圖像對比圖。
(a)為Duffing混沌系統(tǒng)的初值x1錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(b)為Duffing混沌系統(tǒng)的初值y1錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(c)為Duffing混沌系統(tǒng)的控制參數(shù)a錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(d)為Duffing混沌系統(tǒng)的控制參數(shù)b錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(e)為Tinkerbell混沌系統(tǒng)的初值x1錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(f)為Tinkerbell混沌系統(tǒng)的初值y1錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(g)為Tinkerbell混沌系統(tǒng)的控制參數(shù)a錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(h)為Tinkerbell混沌系統(tǒng)的控制參數(shù)b錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(i)為Tinkerbell混沌系統(tǒng)的控制參數(shù)c錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(j)為Tinkerbell混沌系統(tǒng)的控制參數(shù)d錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(k)為入射光波的波長λ錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
(l)為衍射距離z錯誤,系統(tǒng)其它密鑰均正確時的解密圖像;
圖4帶缺失的加密解密圖像。
(a)為缺失25%的加密圖像;
(b)為從缺失25%的加密圖像中還原出來的圖像。
具體實施方式
本發(fā)明包括以下四個部分:
(1)密鑰生成部分:
與大多數(shù)現(xiàn)有技術不同,本發(fā)明提供的加密系統(tǒng)中,第一塊和第二塊隨機相位掩膜都起主密鑰作用。第一塊隨機相位掩膜由Duffing混沌系統(tǒng)生成,第二塊隨機相位掩膜由Tinkerbell混沌系統(tǒng)生成。Duffing混沌和Tinkerbell混沌都是二維混沌系統(tǒng),混沌系統(tǒng)的初值和控制參數(shù)在加密系統(tǒng)中作為主密鑰。光學系統(tǒng)中用于照射輸入圖像的入射光波的波長和菲涅耳衍射距離作為加密系統(tǒng)的輔助密鑰。
(2)圖像加密部分:
在加密一幅特定的彩色圖像前,首先對于Duffing和Tinkerbell混沌系統(tǒng),設定合適的初值和控制參數(shù);選擇合適波長的光波作為入射光波;設定合適的菲涅耳衍射距離。然后,將一幅待加密的彩色圖像分解為R,G,B三個通道。這三個通道在入射光的照射下進行菲涅耳變換,經(jīng)菲涅耳變換后的三個通道分別被置于透鏡前焦面上的第一塊混沌隨機相位掩模調(diào)制,調(diào)制后的三個通道經(jīng)單透鏡傅里葉變換后再被置于透鏡后焦面上的第二塊混沌隨機相位掩模調(diào)制。經(jīng)兩次變換和兩次調(diào)制后,就可以得到加密的R,G,B通道。通過對三個加密通道的整合,就可以得到加密的彩色圖像。
(3)密鑰傳輸部分:
為保證密鑰傳輸?shù)陌踩裕x擇RSA公鑰算法來加密(2)中所用的密鑰。對于RSA公鑰算法,首先選擇兩個合適的大素數(shù),用這兩個素數(shù)生成相應的公鑰和私鑰。圖像加密過程中使用的加密密鑰(即混沌系統(tǒng)的初值和控制參數(shù)、入射光的波長和菲涅耳衍射距離),經(jīng)RSA公鑰算法中的公鑰加密后傳給被授權的解密方。解密方收到被加密的密鑰后,用自己的私鑰先解密出這些密鑰,然后再用這些密鑰來解密圖像。
(4)圖像解密部分:
首先,解密方用解密后得到的混沌參數(shù)生成相應的兩塊隨機相位掩膜。然后,將加密后的彩色圖像分為R,G,B三個通道。這三個通道分別被置于透鏡前焦面上的第二塊混沌隨機相位掩模的復共軛調(diào)制,調(diào)制后的三個通道經(jīng)單透鏡逆傅里葉變換后被置于透鏡后焦面上的第一塊混沌隨機相位掩模的復共軛再調(diào)制,然后再進行逆菲涅耳變換,就可以得到解密后的三個通道。通過整合這三個解密后的通道,就可以得到解密后的彩色圖像。
下面結合具體實施方式對本發(fā)明作進一步詳細地描述。
本發(fā)明用于彩色圖像加密的單透鏡光學系統(tǒng)的原理示意圖如圖1所示。加密系統(tǒng)由四部分組成:密鑰生成部分,圖像加密部分,密鑰傳輸部分和圖像解密部分。下面就這四個部分的具體實施方式分別予以詳細的描述。
(1)密鑰生成部分:
加密系統(tǒng)中起主密鑰作用的是兩塊混沌隨機相位掩膜,起輔助密鑰作用的是入射波長和衍射距離。下面就如何使用兩個二維混沌系統(tǒng)生成這兩塊隨機相位掩膜進行詳細介紹。
用于生成隨機相位掩膜的兩個二維混沌系統(tǒng)分別為Duffing混沌和Tinkerbell混沌,其離散形式的數(shù)學表達式分別為:
對于Duffing混沌系統(tǒng),通常將控制參數(shù)設定為a=2.75和b=0.2;對于Tinkerbell混沌系統(tǒng),通常將控制參數(shù)設定為a=0.9,b=-0.6013,c=2.0和d=0.5;xn,yn和xn+1,yn+1分別表示混沌系統(tǒng)的輸入值和迭代輸出值。
假設要加密的圖像的尺寸為M×N個像素,則兩塊混沌隨機相位掩膜的尺寸也是M×N個像素,對于兩個二維混沌系統(tǒng),使其迭代(M×N)/2次后,得到兩組隨機數(shù)序列X1={x′1,x′2,…,x′(M×N)/2},Y1={y′1,y′2,…,y′(M×N)/2}和X2={x″1,x″2,…,x″(M×N)/2},Y2={y″1,y″2,…,y″(M×N)/2},其中,x′1,x′2,…,x′(M×N)/2和y′1,y′2,…,y′(M×N)/2分別表示Duffing混沌系統(tǒng)的迭代輸出值;x″1,x″2,…,x″(M×N)/2和y″1,y″2,…,y″(M×N)/2分別表示Tinkerbell混沌系統(tǒng)的迭代輸出值。將這兩組隨機數(shù)序列分別整合成兩個二維矩陣的形式Z1={z′i,j|i=1,2,…,M;j=1,2,…,N}和Z2={z″i,j|i=1,2,…,M;j=1,2,…,N},其中z′i,j和z″i,j為二維矩陣的元素,i,j表示矩陣元素的位置;則得到兩塊混沌隨機相位掩膜,其數(shù)學表達式分別為C1(x1,y1)=exp(j2πz′i,j)和C2(x2,y2)=exp(j2πz″i,j)。其中,(x1,y1)和(x2,y2)分別表示兩塊隨機相位掩膜所處位置的坐標,j表示虛數(shù)單位,π表示圓周率。
(2)圖像加密部分:
設待加密的彩色圖像的數(shù)學表達式為:
U0(x0,y0)=U0R(x0,y0)+U0G(x0,y0)+U0B(x0,y0) (3)
其中,(x0,y0)表示待加密圖像所處位置的坐標,U0R,U0G和U0B是彩色圖像的三個顏色通道,則彩色圖像經(jīng)距離為z的菲涅耳衍射后的數(shù)學表達式為:
其中,λ為入射光波的波長,j表示虛數(shù)單位;將上式記為:
U1(x1,y1)=FSTλ,z[U0(x0,y0)]. (5)
其中,F(xiàn)STλ,Z{·}表示菲涅耳變換。
經(jīng)菲涅耳衍射后的圖像與第一塊混沌隨機相位掩膜作用,數(shù)學上表示為相乘,然后進行單透鏡傅里葉變換,再與第二塊混沌隨機相位掩膜作用即相乘,最終得到加密后的圖像,其數(shù)學表達式如下:
U2(x2,y2)=FT[U1(x1,y1)·C1(x1,y1)]·C2(x2,y2), (6)
其中,F(xiàn)T[·]表示傅里葉變換。
(3)密鑰傳輸部分:
對于RSA公鑰算法,我們選定的兩個素數(shù)分別為p=9151和q=2357。據(jù)此可以得到n=p×q=21568907和φ=(p-1)×(q-1)=21557400。如果將公鑰設定為e=3709939,則據(jù)此可以得到私鑰d=7606459。在密鑰傳輸過程中,用公鑰e=3709939加密這些密鑰,授權方收到加密后的密鑰后,再用自己的私鑰d=7606459解密出這些密鑰,用解密出的密鑰就可以最終解密出原來的圖像。下表所示的是采用RSA公鑰算法對密鑰的加密和解密結果。
表1 RSA公鑰算法的加解密結果
(4)圖像解密部分:
被授權方收到加密后的彩色圖像和密鑰后,進行以下步驟就可以最終還原出來原始的圖像:
其中,表示還原后的圖像,IFST{·}表示逆菲涅耳變換,IFT[·]表示逆傅里葉變換,*表示共軛算符。
采用本發(fā)明的加密系統(tǒng)對一幅彩色Lena圖像(如圖2(a)所示)進行加密后,得到的加密圖像如圖2(b)所示。由圖2(b)可以看出,原始圖像的任何信息都被隱藏。當所有密鑰均正確時,解密出的圖像如圖2(c)所示。由圖2(c)可以看出,解密圖像與原圖像沒有任何差別。說明采用本系統(tǒng)對彩色圖像的加密和解密是成功的。此外,當某一個密鑰錯誤而其他密鑰正確時,解密結果如圖3(a)-3(l)所示。由此可見,本系統(tǒng)的安全性是可以得到保證的。圖4(a)和4(b)為加密圖缺失25%及在此情況下的解密圖像。由此可見,即便加密圖像在傳輸過程中被損壞,我們?nèi)匀荒軌蚪饷艹鲆欢ㄙ|量的原始圖像。
盡管上面結合圖示對本發(fā)明進行了描述,但是本發(fā)明并不局限于上述的具體實施方式,上述的具體實施方式僅僅是示意性的,而不是限制性的,本領域的普通技術人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨的情況下,還可以作出很多變形,這些均屬于本發(fā)明的保護之內(nèi)。