基于GRNN和混沌系統的數字圖像文件加密方法
計算機技術的快速發(fā)展以及計算機網絡的普及,進一步加速了媒體數字化的進程,使得數字媒體的制作,傳播。獲取和復制變得更加容易。保護圖像的隱私和圖像通信中的信息安全已經成為急切需要解決的問題?;煦邕\動是一種普遍存在于自然界的現象?;煦缦到y也是一種復雜的非線性,非平衡的動力過程,其特點有:
(1)混沌動力學特性對初始條件具有敏感依賴性,初始條件略有差別或者微小的擾動都會導致系統的最終狀態(tài)出現巨大的差別,其長期演化行為不可預測;
(2)系統由完全確定性的方程描述,無需附加任何因素,系統仍表現出類隨機行為?;煦绲倪@些特性使得基于混沌控制系統的加密方法具有很高的安全性。
由于人工神經網絡具有非線性的映射能力,人工神經網絡為解決混沌非動力系統加密方法提供了新的方法和思路。GRNN(廣義回歸神經網絡)在逼近能力、分類能力以及學習速度上較BP網絡和RBF網絡有著鞍強的優(yōu)勢,網絡收斂于樣本量集聚較多的優(yōu)化同歸面,并且在樣本數據缺乏時,預測效果以及網絡的魯棒性也比較好。因此本文提出一種將GRNN神經網絡應用于數字圖像的方法中,利用GRNN神經網絡生成混沌數列,利用該混沌數列按行對圖像進行排序置換加密。通過實驗證實該算法具有良好的加密效果。
一、GRNN神經網絡
廣義回歸神經網絡(GRNN)是Donald FSpecht在1991年提出的。GRNN是一種正則化的徑向基網絡,通常用來實現函數逼近,圖1為GRNN網絡結構。

模式層的神經元數為訓練樣本數目,各神經元對應不同的模式。模式層中神經元的傳遞函數通常采用高斯函數。其表達式為:

式(1)中,xi為第i個神經元對應的訓練樣本,σ為光滑因子,其決定了模式層中基函數的形狀,σ越大,其基函數越平滑。神經元i的輸出為計算網絡輸入變量X與其對應的訓練樣本xi的歐氏距離。
求和層由SD和SN兩種類型的神經元構成。其中SD為對所有模式層神經元的輸出值求和,其表達式為:
![]()
SN為對所有模式層神經元的輸出進行加權求和,其表達式為:
![]()
式(3)中,yij為第1個輸出樣本yt中的第j個元素。
輸出層的神經元數目為訓練樣本的輸出向量維數,第j個神經元的輸出為:
![]()
GRNN連接權值的學習修正仍然采用BP算法。由于網絡的輸入層結點中的傳遞函數為高斯函數,而高斯函數是一種局部分別對中心徑向對稱衰減的非負非線性函數,對輸入信號將產生局部響應,因此GRNN網絡具有局部逼近能力,網絡的學習速度快的特點。
二、基于GRNN和混沌系統的數字圖像加密方法
1、Logistic混沌簡介
混沌系統是一種確定系統中出現的類似隨機過程?;煦缦到y產生的信號具有非周期性、對初始條件敏感性以及連續(xù)寬頻譜等良好的密碼學特性。利用混沌系統可以構造非常好的信息加密系統。Logistic方程是目前工程上廣泛運用的一種混沌動力系統,其表達式為:
![]()
式中,λ是一個常數,yk∈[0,1],k∈N,當3.569945<λ≤4時,式(5)處于混沌狀態(tài)。
2、基于GRNN和混沌系統的數字圖像加密算法
基于GRNN和混沌系統的數字圖像加密方法是通過選取不同的混沌初值,用混沌神經網絡產生不同混沌序列作為密鑰序列,對數字圖像進行置換加密,密文經公開信道傳輸,接收方可以通過公開信道傳輸的混沌初值產生混沌解密序列實現數字圖像的解密。其加密算法為:
(1)輸入Logistic序列的初值,根據初值生成Logistic混沌序列;
(2)將Logistic混沌序列作為訓練樣本輸入GRNN神經網絡進行學習,確定GRNN網絡的權值。將GRNN控制模型經秘密信道發(fā)送給接收方;
(3)輸入數字圖像文件。任選混沌初值x1,由GRNN計算得到混沌序列Xk,k=1,2,…,len,其中l(wèi)en為數字圖像的列數;
(4)求出x1,X2,…,xq的排序置換,根據求出數字圖像每一行的置換加密;
(5)將混沌初值x,和加密后的數字圖像發(fā)送給接收方。
接受方接收到信息后,可以采用解密算法恢復數字圖像。
解密算法為:
(1)由加密的數字圖像文件可求出len,將x1輸入GRNN得到相應的Xk;
(2)根據Xk求出數字圖像每一行的逆置換得到解密后的圖像。
三、加密實例和算法安全性分析
1、圖像加密實例
算法使用Matlab7. 0仿真軟件進行計算機仿真。取Logistic混沌序列的初值y1=0.2,μ=4,樣本數為2000。GRNN網絡的光滑因子為0.0001。網絡的輸入層神經元和輸出層神經元的數目均為1。網絡學習后其均方誤差為王6973 X10-6,最大誤差為2 0368X10-4。圖2為網絡訓練后的誤差圖。

采用本文的加密算法對圖像進行加密實驗。圖3 (a)為原始圖像,圖3(b)為混沌初始值為0.1時加密圖像,圖3 (c)混沌初始值為0.4時加密圖像,圖3 (e)為解密后的圖像。

由圖3可知,對原圖像的加密結果都能得到類似于噪聲的加密圖像,從加密圖像中也幾乎不能得到原圖像的任何信息。在得到正確的密鑰的情況下,對加密圖像進行解密操作,便能得到和原始圖像一模一樣的加密圖像。
2、加密算法安全性分析
加密后的圖像是原始圖像像素的一種隨機排列,其密鑰量為len。本文選取圖像的行數是為384,其密鑰量為384,。對密碼攻擊者來說,使用窮舉法破譯密碼將是一個非常困難的問題。
計算原圖和密圖的不動點比和灰度平均變化值,可以從數量上反映原圖與加密后的圖像素變化情況。表1給出各種混沌初值加密圖像與原圖的不動點比和灰度平均變化值。由表1可知,99%以上的像素發(fā)生了變換,各種混沌初值加密方案的灰度平均變化值非常接近。由此可以得出,原圖的特征在密圖中得到很好的隱藏。

相鄰像素相關系數能夠反映圖像相鄰像素間的相關程度。隨機選取5000對相鄰像素計算其相鄰像素相關系數。表2為初值為0.2加密方案時水平、垂直和對角3種情況的相鄰像素相關系數。

圖4為原圖和加密后的圖的像素分布圖。由表2和圖4可以看出加密圖像的置亂效果非常好。
小知識之神經元
神經元(neurone),又名神經原或神經細胞(nerve cell),是神經系統的結構與功能單位之一。神經元占了神經系統約10%,其他大部分由膠狀細胞所構成。










