崔 霄,張鶴鳴
(1.西安工業(yè)大學 計算機科學與工程學院,西安 710032;2.西安電子科技大學 寬禁帶半導體材料與器件重點實驗室,西安 710071)
圖像安全在設施監(jiān)控和衛(wèi)星通信等系統中被廣泛關注。傳統加密算法沒考慮大數據量及高冗余度,加解密速度慢。當前數字圖像加密主要采用置亂、代換和擴散三種操作。置亂打亂像素位置,代換替換像素值,擴散則是在眾多像素值之間進行滲透使其相互影響。在空域使用這三種操作雖破壞了像素間相關性,但數據精度沒有損失。同時算法操作較簡單,計算復雜度較低。對于變換域的加密,由變換導致的數據精度損失使得它無法用于需要精確恢復明文的應用。設計加密算法時,如果沒有綜合使用置亂、代換和擴散操作[1~4],或存在不動點,會使明密文對中存在不安全的線性關系。文獻[1, 2]只置亂了位置,沒有代換和擴散操作;文獻[3]改變了像素值,但沒有置亂位置;文獻[4]選用N維仿射變換進行加密,沒改變像素位置,求解同余方程組就能破解;文獻[5]的算法只適用于長寬相等的圖像。本文提出一種新的空域加密算法,更安全也更有效。
置亂變換打亂像素位置,破壞像素相關性。目前有Arnold變換及其擴展、Baker映射、幻方變換、基于隨機數排序的置亂[1]等。Arnold及其擴展變換采用了矩陣變換的形式,能快速打亂像素位置?;诜律渥儞Q的置亂使得所有像素的位置均可能發(fā)生改變,而Arnold變換不會改變(0, 0)像素的位置從而存在漏洞。基于Arnold變換、幻方變換的置亂對圖像的長寬比例有限制。因此選用仿射Arnold擴展變換進行置亂能快速打亂像素,消除不動點,同時對長寬無限制。其公式如下:
其中q=N/gcd (M, N);b, n, r, s均為正整數。
對 M 行 N 列圖像,(x, y)和 (x’, y’)代表置亂前和后的像素坐標,該置亂變換是一一映射。
將像素劃分為高位平面和低位平面的兩部分并連接成新圖像;再通過置亂變換打亂新圖像中的4比特數值并對其對其進行代換和擴散,代換和擴散過程中使用當前數據擾動復合混沌系統以引入自適應的加密,迭代2輪;將高、低平面的數據對應組合得到密文圖像。具體過程如圖1所示,解密為加密的逆。
圖1 加密
分隔4個高位與4個低位平面,并排拼接到一起形成M行2N列的新圖像,每個像素值用4比特位表示,取值[0, 15]。
混沌系統對初始參數極其敏感,輸出偽隨機噪聲,適用于加密。我們采用以下3個映射構造復合混沌系統:
密鑰為k1k2,k3k4。抽取對應混沌子序列小數點后1到6位形成新序列得到{xi'}、{yi'}和{zi'};將{xi'}與{yi'}按位異或得{yi};將{yi}作為抽樣間隔對{zi'}抽樣得到{zi}。
用 {zi}生成置亂參數,b = z5,n = z10,r = z15,s = z16,用式(1)進行置亂。
在保證加密可逆的前提下,用中間結果擾動混沌系統,增強安全性。在置亂變換之后,代換、擴散之前,取前一行所有像素均值IA用下式調整,形成新的混沌序列{zi}。
調整 Logistic 映射:l = [k1+(IA+ 1) / 32]/ 2,x0= [k2+ (IA+ 1) / 16]/ 2 ;
調整 Tent 映射:l = [k3+(IA+ 1) / 32]/ 2,x0= [k4+ (IA+ 1) / 16]/ 2 ;
將新的4比特像素值按Ci= ((Pi+) mod 16 ? (mod 16) ? zi+) mod 16運 算,Pi為 第i個像素代換、擴散之前的值,Ci為之后的值,?為按位異或。
迭代2輪之后,分割新圖像,將高低4位比特對應連接到一起形成M行N列的密文圖像。
k1= 0.06,k2= 0.3,k3= 0.3,k4= 0.33, 對1024×1024大小的256色標準圖man (圖2)加密得圖3,解密得圖2。
圖2 明文
圖3 密文
3.1.1 峰值信噪比
在圖像上疊加噪聲,峰值信噪比為10log10/MSE),ymax為像素的最大亮度值,峰值信噪比在20dB以下意味著完全不可辨識。微調密鑰使峰值信噪比均小于8.02dB,密文圖像不可辨識。
3.1.2 明密文相似度
圖像相似度:1-∑∑(pij- cij)2/∑∑p2ij, 差別越大相似度越小,完全相同時相似度為1。微調密鑰使相似度均小于0.09,差異顯著。
3.1.3 相鄰像素相關性
相關性 rxy= |Cov (x, y) | / D (x)1/2D (y)1/2,其中均值E (x),方差D (x),xi、yi為相鄰像素值。水平相鄰像素相關性為0.9932,垂直為0.9944,對角為0.9902;微調k2使三個相關性均小于0.0035。
3.1.4 信息熵
vi為L級灰度圖象的第i個灰度值,P (vi)為像素所占的比例。信息熵可度量圖像灰度值的分布,分布越均勻信息熵越大,最大為8。明文信息熵為7.523737,微調k1、k4、k6使加密后信息熵均大于7.999,能抵御統計攻擊。
3.2.1 密鑰敏感性
令k1= k1+ 10-15,解密圖3得到圖4;令k2=k2+ 10-15,解密后得到圖5;密鑰敏感性很強,微小改變都會導致解密失敗。類似實驗也可說明強密文敏感性。
3.2.2 密鑰空間
密鑰k1k2,k3k4為15位十進制數,密鑰空間1015×6>>2270,大于 270 位。大大超過目前可接受的安全長度(128位),能有效抵御窮舉攻擊。
圖4 微調k1
圖5 微調k2
本文提出了一種空域圖像加密算法,靈活使用了置亂、代換、擴散和自適應的操作。利用復合混沌系統產生置亂參數和矩陣變換的形式,快速打散像素,消除不動點。這種綜合設計使得明密文間映射關系很復雜,很難進行選擇明文攻擊。理論分析和試驗結果表明:算法密鑰空間大,加密后視覺效果好,敏感性強,安全性高。進一步的工作是研究如何引入自適應更強的加密操作。
[1]MENG J L, PANG H J, GAO W Q.New color image encryption algorithm based on chaotic sequences ranking[C].Proceedings of International Conference onIntelligent Information Hiding and Multimedia Signal Processing 2008.USA.Washington D C: IEEE Press,2008:1348-1351.
[2]SHANG Z W, REN H E, ZHANG J.A Block Location Scrambling Algorithm of Digital Image Based on Arnold Transformation[C].Proceedings of The 9th International Conference for Young Computer Scientists 2008.USA.Washington D C: IEEE Press, 2008.2942-2947.
[3]BIBHUDENDRA A, SARAT K P,GANAPATI P.Image Encryption by Novel Cryptosystem Using Matrix Transformation[C].Proceedings of First International Conference on Emerging Trends in Engineering and Technology 2008.USA.Washington D C: IEEE Press,2008.77-81.
[4]WANG F C, BAI S, ZHU G B, SONG Z H.An Image Encryption Algorithm Based on N-Dimension Affine Transformation[C].Proceedings of the Eighth IEEE/ACIS International Conference on Computer and Information Science 2009.USA.Washington D C:IEEE Press, 2009.579-585.
[5]Chen D M.A Feasible Chaotic Encryption Scheme for Image[C].Proceedings of International Workshop on Chaos-Fractals Theories and Applications 2009.USA.Washington D C: IEEE Press, 2009.17.