張 潔,徐龍昊,尹寶全
(1.西北師范大學(xué)物理與電子工程學(xué)院,甘肅 蘭州 730070;2.甘肅省智能信息技術(shù)與應(yīng)用工程研究中心,甘肅 蘭州 730070)
1971年,Chua教授[1]提出了憶阻器理論。近年來,基于憶阻器的混沌系統(tǒng)設(shè)計(jì)已經(jīng)成為憶阻器研究的熱點(diǎn)之一[2 - 5]。Chen等[6]利用一種新型的余弦憶阻器構(gòu)造了一個(gè)四維憶阻系統(tǒng)。孫亮等[7]將局部有源憶阻器用于模擬生物突觸,構(gòu)建了一個(gè)局部有源憶阻突觸耦合HR(Hindmarsh Rose)神經(jīng)元網(wǎng)絡(luò)。王勻等[8]利用憶阻器結(jié)合分?jǐn)?shù)階理論和時(shí)滯系統(tǒng)理論,提出了一種基于分?jǐn)?shù)階時(shí)滯的非線性混沌電路。Li等[9]在三維系統(tǒng)中引入憶阻器,得到了一個(gè)四維超混沌系統(tǒng),其具有無限個(gè)穩(wěn)定和不穩(wěn)定的平衡點(diǎn)。雖然對憶阻器的研究開展得較多,但基于憶阻器的超混沌系統(tǒng)的研究卻相對較少。
此外,混沌系統(tǒng)由于其隨機(jī)性,被廣泛應(yīng)用于圖像加密中。Liu等[10]提出了基于分段線性混沌系統(tǒng)加密的圖像加密算法。高成明等[11]提出了一種基于混沌的置亂-擴(kuò)散圖像加密算法。方鵬飛等[12]提出了一種基于改進(jìn)的二維Logistic混沌映射與DNA序列運(yùn)算相結(jié)合的分組圖像加密算法。上述研究雖然都很好地完成了圖像加密,但都是單次加密。在圖像加密的過程中多次加密往往比單次加密的效果要好。
本文首先在Rucklidge[13]提出的三維系統(tǒng)的基礎(chǔ)上,加入二次非線性有源磁控憶阻器,構(gòu)造了一個(gè)四階超混沌系統(tǒng);然后通過相圖、Lyapunov指數(shù)譜、分岔圖和平衡點(diǎn)等指標(biāo),對該系統(tǒng)的動力學(xué)行為進(jìn)行分析,并基于Multisim電路仿真軟件和現(xiàn)場可編程門陣列FPGA(Field Programmable Gate Array)數(shù)字硬件電路設(shè)計(jì)實(shí)現(xiàn)了電路;最后結(jié)合DNA加密設(shè)計(jì)了一種新的圖像加密算法,同時(shí)對加密后的圖像進(jìn)行分析。結(jié)果表明,本文提出的混沌系統(tǒng)應(yīng)用于圖像加密具有較高的安全性能。
Rucklidge[13]提出的三維系統(tǒng)的方程如式(1)所示:
(1)
其中,α、β和p均為常數(shù),α=2,β=6,p=-1;x、y和z均為狀態(tài)變量,并且系統(tǒng)有3個(gè)平衡點(diǎn)?,F(xiàn)考慮引入一個(gè)憶阻器到這個(gè)三維系統(tǒng)。這里選用二次非線性磁控憶阻器,憶阻器的函數(shù)表達(dá)式如式(2)所示:
W(φ)=-m+n|φ|
(2)
其中,m=1,n=4。將流經(jīng)憶阻器的磁通表示為第4個(gè)狀態(tài)變量,狀態(tài)變量y為憶阻器兩端的電壓,憶阻強(qiáng)度用g(g>0)表示,引入后的系統(tǒng)方程如式(3)所示:
(3)
其中,α=2,β=6,g=0.1,p=-1;x、y、z和u均為狀態(tài)變量。當(dāng)系統(tǒng)的初始值為(0.1,0.1,0,0)時(shí),式(3)存在復(fù)雜的超混沌現(xiàn)象。利用四階龍格庫塔算法求解式(3),步長設(shè)置為0.1,結(jié)果如圖1所示。圖1展示了式(3)混沌吸引子在(x,y),(y,z),(x,z)和(y,u)4個(gè)平面的二維映射圖。觀察圖1可以發(fā)現(xiàn),相圖有2個(gè)渦卷和復(fù)雜的拉伸結(jié)構(gòu),并且圖1b和圖1c是左右對稱的圖形。
Figure 1 Phase diagram of hyperchaotic system圖1 超混沌系統(tǒng)的相圖
為求系統(tǒng)平衡點(diǎn),令超混沌系統(tǒng)方程式(3)的右邊等于零,得到式(4):
(4)
當(dāng)系統(tǒng)方程的參數(shù)為α=2,β=6,g=0.1,p=-1時(shí),系統(tǒng)的平衡點(diǎn)為(0,0,0,ε),ε為任意數(shù),并且可以得到式(4)的Jacobi矩陣如式(5)所示:
(5)
式(5)的特征方程如式(6)所示:
F(λ)=λ(λ-p){(α+λ)[gW(ε)+λ]-β}=0
(6)
系統(tǒng)對坐標(biāo)變換 (x,y,z,u)→(-x,-y,z,-u)具有不變性,所以系統(tǒng)關(guān)于z軸對稱。通過式(3)得到系統(tǒng)的散度如式(7)所示:
(7)
即▽V=-3.1-0.4|φ|,其中|φ|≥0。所以散度小于0,系統(tǒng)具有耗散性,且系統(tǒng)以指數(shù)形式dV/dt=e(-3.1-0.4|φ|)t收斂,其中V表示存儲在系統(tǒng)中的能量,t表示時(shí)間,此式表明系統(tǒng)的能量在不斷地減少。當(dāng)t→∞時(shí)所有的系統(tǒng)軌跡最終都將會被限制在一個(gè)體積為0的極限點(diǎn)集上,而且它的動力學(xué)行為將會被固定在一個(gè)吸引子上,這充分證明了吸引子的存在。
Lyapunov數(shù)值描述了相空間相鄰軌道平均指數(shù)散度的數(shù)值特征,又稱Lyapunov指數(shù),是一種用來識別混沌運(yùn)動的數(shù)字特征。當(dāng)系統(tǒng)參數(shù)設(shè)定為α=2,β=6,g=0.1,p=-1時(shí),計(jì)算系統(tǒng)的Lyapunov指數(shù),即LE1=0.3896,LE2=0.02659,LE3=-0.4065,LE4=-4.012。系統(tǒng)的Lyapunov指數(shù)之和是負(fù)數(shù),且有2個(gè)Lyapunov指數(shù)大于0。計(jì)算系統(tǒng)的LE維數(shù)DL如式(8)所示:
(8)
可以得到系統(tǒng)的LE維數(shù)為分?jǐn)?shù)維且大于3,故系統(tǒng)是超混沌系統(tǒng)。
Poincare截面也是系統(tǒng)動力學(xué)行為特征的一個(gè)重要判據(jù)。當(dāng)Poincare截面上只有1個(gè)不動點(diǎn)或少數(shù)離散點(diǎn)時(shí),運(yùn)動是周期的;當(dāng)Poincare截面上是1條封閉的連續(xù)曲線時(shí),運(yùn)動是擬周期的;當(dāng)Poincare截面上是一段連續(xù)曲線或是一些成片的密集點(diǎn)時(shí),運(yùn)動是混沌的。從圖2可以明顯看出,Poincare截面上的點(diǎn)呈現(xiàn)為連續(xù)曲線或片狀的密集點(diǎn),所以該系統(tǒng)是混沌的。
Figure 2 Cross section and power spectrum of Poincare 圖2 Poincare截面圖和功率譜
對于混沌系統(tǒng)來講,若產(chǎn)生的混沌信號是非周期信號,則其系統(tǒng)的功率譜也是非周期的連續(xù)譜。圖2d是本文系統(tǒng)的功率譜,該功率譜連續(xù)表明系統(tǒng)處于非周期狀態(tài),峰值的出現(xiàn)代表系統(tǒng)中有分岔現(xiàn)象發(fā)生。
分岔是指系統(tǒng)的動力學(xué)運(yùn)動狀態(tài)隨著系統(tǒng)參數(shù)或者狀態(tài)變量初始值的改變而發(fā)生變化的一種現(xiàn)象。系統(tǒng)的運(yùn)動狀態(tài)可以由一種穩(wěn)定狀態(tài)變?yōu)榱硪环N穩(wěn)定狀態(tài),準(zhǔn)周期狀態(tài)到混沌狀態(tài),一種混沌到另一種混沌等。隨著系統(tǒng)參數(shù)取值的改變,系統(tǒng)的Lyapunov指數(shù)譜和分岔圖也發(fā)生改變。
當(dāng)α=2,β=6,g=0.1時(shí),使參數(shù)p在(-2,0)內(nèi)變化,如圖3所示。從圖3中可以看出,Lyapunov指數(shù)譜和分岔圖具有很好的一致性。當(dāng)p∈[-1.9,-1.83],[-1.71,-1.61]或[-0.19,0]時(shí),系統(tǒng)處于周期狀態(tài),如圖4a所示;當(dāng)p∈[-1.61,-1.5],[-1.43,-0.95],[-0.66,-0.48]或[-0.34,-0.19]時(shí),系統(tǒng)處于混沌振蕩狀態(tài),如圖4b所示;當(dāng)p∈[-1.5,-1.43],[-0.95,-0.66]或[-0.48,-0.34]時(shí),系統(tǒng)處于超混沌狀態(tài),如圖4c和圖4d所示。
Figure 3 Bifurcation diagram and Lyapunov exponential spectrum varying with parameter p圖3 隨參數(shù)p變化的分岔圖和Lyapunov指數(shù)譜
Figure 4 Phase diagrams varying with parameter p圖4 隨參數(shù)p變化的相圖
當(dāng)α=2,β=6,p=-1時(shí),使參數(shù)g在(-1,1)內(nèi)變化。圖5是隨g變化的Lyapunov指數(shù)譜和分岔圖。當(dāng)g∈[0.61,0.63]時(shí),系統(tǒng)處于擬周期軌道狀態(tài),如圖6a所示;當(dāng)g∈[0.63,1]時(shí),系統(tǒng)處于周期軌道狀態(tài),如圖6b所示;當(dāng)g∈[-1,-0.69],[-0.53,-0.49]或[0.54,0.61]時(shí),系統(tǒng)處于混沌軌道狀態(tài),如圖6c所示;當(dāng)g∈[-0.69,-0.53]或[-0.49,0.54]時(shí),系統(tǒng)處于超混沌軌道狀態(tài),如圖6d所示。
Figure 5 Bifurcation diagram and Lyapunov exponential spectrum varying with parameter g圖5 隨參數(shù) g變化的分岔圖和Lyapunov指數(shù)譜
Figure 6 Phase diagrams varying with parameter g圖6 隨參數(shù)g變化的相圖
為了更好地對新超混沌系統(tǒng)的狀態(tài)進(jìn)行研究和分析,本文通過改變系統(tǒng)的參數(shù),發(fā)現(xiàn)系統(tǒng)存在不同種類的吸引子,圖7是參數(shù)g變化時(shí)比較典型的3個(gè)系統(tǒng)吸引子相圖,圖7a為周期吸引子共存,圖7b為混沌吸引子共存,圖7c為超混沌吸引子共存。其中,在u=0的上半部分實(shí)線初始值為(-0.1,-0.1,0,0),下半部分虛線的初始值為(0.1,0.1,0,0),觀察上圖可以看出本文系統(tǒng)在不同初始值下存在對稱的吸引子。
Figure 7 Attractor coexistence diagrams of the system圖7 系統(tǒng)的吸引子共存相圖
圖8b是非線性有源磁控憶阻等效實(shí)現(xiàn)電路的原理圖,圖中的虛線部分為絕對值函數(shù)電路(即圖8a中的H(·))。通過計(jì)算得到的憶阻器等效電路表達(dá)式如式(9)所示:
W(φ)=-m+n|φ|=
(9)
其中,Rh和Rsat為憶阻器電路的電阻,方便在仿真軟件中和系統(tǒng)整體電路的電阻進(jìn)行區(qū)分。
整體電路設(shè)計(jì)時(shí),首先對系統(tǒng)方程式(3)作比例壓縮變換,設(shè)RX→X,RY→Y,RZ→Z,Ru→U,其中R為變量比例壓縮因子。設(shè)R=0.5,變換后的方程如式(10)所示:
Figure 8 System circuit diagram 圖8 系統(tǒng)電路圖
(10)
(11)
系統(tǒng)電路原理圖如圖8所示。
對比式(10)和式(11),得到R0=R01=R02=R03=50 kΩ,C0=C1=C2=C3=33 nF,R5=R6=R7=R10=R11=R12=R16=R17=10 kΩ,R1=50 kΩ,R2=R13=5 kΩ,R3=16.7 kΩ,R9=83.3 kΩ,R4=R8=R14=R15=100 kΩ,Rsat=13.5 kΩ,Rh=6.05 kΩ。
通過在Multisim電路仿真軟件上進(jìn)行驗(yàn)證,實(shí)際相位圖如圖9所示,與上述的理論相位圖一致。因此驗(yàn)證了該超混沌系統(tǒng)存在吸引子。
Figure 9 Diagram of circuit simulation 圖9 電路仿真圖
模擬器件容易受到許多環(huán)境因素的影響,從而造成混沌系統(tǒng)不穩(wěn)定。因此,基于現(xiàn)場可編程門陣列(FPGA)的數(shù)字電路因具有較高的并行計(jì)算能力和能被應(yīng)用于生物醫(yī)學(xué)工程領(lǐng)域而受到人們的青睞。
本文通過采用Euler 算法對系統(tǒng)方程進(jìn)行離散化處理,離散后的方程如式(12)所示,通過XILINX的 FPGA開發(fā)軟件Vivado 進(jìn)行設(shè)計(jì),系統(tǒng)方程中的實(shí)數(shù)處理采用定點(diǎn)小數(shù)與截位計(jì)算相結(jié)合的方式。采樣的時(shí)間步長ΔT設(shè)定為0.001,圖10為示波器上得到的波形,觀察發(fā)現(xiàn)與Multisim和Matlab軟件的仿真結(jié)果一致。
(12)
Figure 10 FPGA-based object map圖10 基于FPGA的實(shí)物圖
混沌系統(tǒng)由于其不確定性和初始條件的高敏感性,被廣泛應(yīng)用到圖像加密中。傳統(tǒng)的加密通常是一次加密,這種加密往往容易遭受攻擊導(dǎo)致信息泄露,因此需要新的混沌系統(tǒng)配合新的加密算法來完成加密。本文采用置亂-擴(kuò)散與DNA加密相結(jié)合的雙重加密算法,達(dá)到了更好的加密效果。具體加密流程如圖11所示,解密過程為加密過程的逆運(yùn)算。
Figure 11 Flow chart of encryption 圖11 加密流程圖
5.1.1 混沌序列
利用ode45算法計(jì)算混沌系統(tǒng)的初始值得到4個(gè)混沌序列,記為xi、yi、zi和ui,i=1,2,…,M×N。為了抵御明文攻擊,提高對明文的敏感性,對混沌序列進(jìn)行如式(13)所示的處理:
(13)
其中,xi、yi、zi和ui(i=1,2,…,M×N)為明文參與前的初始序列;x′i、y′i、z′i和u′i(i=1,2,…,M×N)為明文參與后的混沌序列;Pi(i=1,2,…,M×N)為明文圖像的像素值。
然后迭代混沌系統(tǒng),本文為了獲得更好的隨機(jī)性,舍棄了前面的2 000項(xiàng)。
5.1.2 Arnold置亂
Arnold置亂變換是由Arnold提出的一種置亂方法,其實(shí)質(zhì)是新舊位置的一一映射,具體變換公式如式(14)所示:
X=(x+by) modN
Y=[bx+(ab+1)y] modN
(14)
其中,a、b是Arnold置亂的2個(gè)參數(shù),a=x′i,b=y′i(i=1,2,…,M×N);(X,Y)為坐標(biāo) (x,y)處的像素被置亂后的位置,通過Arnold置亂得到置亂矩陣A。
5.1.3 DNA動態(tài)編碼
眾所周知,一個(gè)DNA序列包含腺嘌呤(A)、胞嘧啶(C)、鳥嘌呤(G)和胸腺嘧啶(T)4種核酸堿基。其中,A和T互補(bǔ),C和G互補(bǔ)。計(jì)算機(jī)系統(tǒng)中的信息用二進(jìn)制數(shù)字0和1表示。因?yàn)槎M(jìn)制中的0和1是互補(bǔ)的,所以00和11、01和10也分別是互補(bǔ)的。因此,本文利用DNA序列中的A、C、G和T分別替換二進(jìn)制序列中的00、01、10和11。本文中的DNA加密算法通過混沌系統(tǒng)產(chǎn)生的z′i(i=1,2,…,M×N)混沌序列轉(zhuǎn)化為0~255之間的整數(shù),再轉(zhuǎn)換為矩陣,記為矩陣B;然后將矩陣B和Arnold置亂得到的矩陣A轉(zhuǎn)化為二進(jìn)制矩陣,再根據(jù)相應(yīng)的DNA編碼規(guī)則,把二進(jìn)制矩陣中的每兩個(gè)二進(jìn)制數(shù)字轉(zhuǎn)換為一個(gè)DNA堿基,從而得到對應(yīng)的DNA序列矩陣,把最后經(jīng)過DNA計(jì)算的矩陣記為C。解碼是編碼的逆過程。完整的DNA編碼規(guī)則如表1~表4所示。
Table 1 Coding and decoding rules of DNA表1 DNA編碼和解碼規(guī)則
5.1.4 像素級擴(kuò)散
首先根據(jù)DNA解碼規(guī)則,對矩陣C進(jìn)行動態(tài)解碼,得到二進(jìn)制矩陣,并將其轉(zhuǎn)化為十進(jìn)制矩陣,記為Fi,偽隨機(jī)序列u′i即為Di,Li為擴(kuò)散后的序列。然后開始進(jìn)行擴(kuò)散,擴(kuò)散采用異或運(yùn)算的雙向擴(kuò)散處理,即正向擴(kuò)散和逆向擴(kuò)散各一次。正向(按i從1到M×N)的算法與其逆運(yùn)算如式(15)所示:
Table 2 XOR operation rules of DNA sequence表2 DNA序列的異或運(yùn)算規(guī)則
Table 3 Addition operation rules of DNA sequence 表3 DNA序列的加法運(yùn)算規(guī)則
Table 4 Subtraction operation rules of DNA sequence 表4 DNA序列的減法運(yùn)算規(guī)則
(15)
逆向(按i從1到M×N)的算法與其逆運(yùn)算如式 (16)所示:
(16)
本文在圖像加密的實(shí)驗(yàn)中選用了標(biāo)準(zhǔn)的256×256的Lena圖像,加密后的結(jié)果如圖12所示,觀察發(fā)現(xiàn)密文圖像已沒有任何原圖的圖像特征。
Figure 12 Encryption effect of image圖12 圖像加密效果
5.2.1 密鑰空間及敏感性分析
密鑰空間是指所有合法密鑰構(gòu)成的集合,當(dāng)密鑰空間足夠大時(shí),窮舉攻擊可以被有效地對抗。一般規(guī)定當(dāng)密鑰空間大于2100時(shí),加密系統(tǒng)的安全可靠性就會得到保障[14]。本文密鑰參數(shù)為(X0,Y0,Z0,U0),計(jì)算得到的密鑰空間大小為2×1060,遠(yuǎn)遠(yuǎn)大于上述要求。
在保持其中3個(gè)不變的前提下,Y0變?yōu)閅0+10-16時(shí),對其進(jìn)行解密,可以解密出原始圖像;但是當(dāng)Y0變?yōu)閅0+10-15,記為Y′0時(shí),對其進(jìn)行解密,無法解密出原始圖像。同理,當(dāng)U0變?yōu)閁0+10-15,記為U′0時(shí),對其進(jìn)行解密,也無法解密出原始圖像。結(jié)果如圖13所示,對其余密鑰參數(shù)測試時(shí),也會出現(xiàn)類似的結(jié)果。這說明本文圖像加密算法具有良好的密鑰敏感性。
Figure 13 Images decrypted with the wrong key and the right key respectively圖13 分別使用錯誤密鑰和正確密鑰解密的圖像
Figure 14 Correlation coefficient of image圖14 圖像的相關(guān)系數(shù)
5.2.2 相關(guān)系數(shù)計(jì)算及分析
圖像之間的相關(guān)特性也是衡量圖像加密效果的一個(gè)重要因素。一般地,明文圖像在水平、垂直和對角方向上的相鄰像素點(diǎn)間均具有較強(qiáng)的相關(guān)性,而密文圖像中的相鄰像素點(diǎn)間應(yīng)沒有相關(guān)性。相關(guān)性計(jì)算如式(17)所示:
(17)
其中,u,v表示任意相鄰的2個(gè)像素點(diǎn)值,E(u)和D(u)分別表示期望和方差。本文選取上面加密前后的Lena圖像用于計(jì)算相關(guān)系數(shù),得到加密前后圖像的相關(guān)系數(shù)圖,如圖14所示。計(jì)算加密前后圖像在水平、垂直和正對角3個(gè)方向上的相關(guān)系數(shù),結(jié)果如表5所示。
Table 5 Comparison of correlation coefficients表5 相關(guān)系數(shù)對比
由表5可知,明文圖像在3個(gè)方向上的相關(guān)性很強(qiáng),接近于1,而對應(yīng)密文圖像的像素則均勻分布,其相關(guān)系數(shù)接近于0。利用原始Rucklidge[13]的三維系統(tǒng)產(chǎn)生3個(gè)混沌序列,分別為xi、yi和zp,其中前2個(gè)序列的長度為i=1,2,…,M×N,序列zp的長度加倍,即p=1,2,…,2×M×N。然后將序列zp分為2個(gè)小序列ri和ti,長度分別為i=1,2,…,M×N。將4個(gè)序列分別應(yīng)用于本文的圖像加密算法。將本文新系統(tǒng)的加密圖像和其它文獻(xiàn)加密圖像進(jìn)行對比,發(fā)現(xiàn)本文系統(tǒng)加密圖像各個(gè)方向的相關(guān)系數(shù)都要強(qiáng)于它們。因此,新系統(tǒng)算法的加密效果非常明顯。
5.2.3 魯棒性分析
衡量一個(gè)加密算法抗干擾能力最重要的標(biāo)準(zhǔn)是魯棒性。本文選擇Lena圖像進(jìn)行實(shí)驗(yàn)分析,利用噪聲攻擊和剪切攻擊來測試本文算法的魯棒性。對加密圖像施加0.05倍的椒鹽噪聲,解密圖像如圖15b所示。剪切1/4的加密圖像的解密結(jié)果如圖15d所示。對比實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),利用本文加密算法仍能恢復(fù)出大部分原始圖像的信息。這表明本文算法可以在一定程度上抵抗噪聲攻擊和剪切攻擊,具有較好的魯棒性。
Figure 15 Robustness analysis of image圖15 圖像的魯棒性分析
5.2.4 信息熵
信息熵能夠反映圖像的不確定性,一般認(rèn)為,熵越大則信息量越大,可視信息反而越少。信息熵的計(jì)算如式(18)所示[14]:
(18)
其中,2n表示圖像中像素值的所有狀態(tài)數(shù),p(si)表示該像素值在整幅圖像中所占的概率??梢缘玫骄哂?n個(gè)狀態(tài)的信息,信息熵就是n。因此一幅標(biāo)準(zhǔn)的具有 256 個(gè)狀態(tài)的圖像,理想的信息熵應(yīng)該是 8。本文系統(tǒng)加密后的圖像信息熵為7.998 9,與理論值8非常接近。表6給出了其它系統(tǒng)加密圖像的信息熵,與本文的信息熵對比后,發(fā)現(xiàn)本文新系統(tǒng)的加密效果良好。
Table 6 Comparison of information entropy 表6 信息熵對比
本文設(shè)計(jì)了一個(gè)四階超混沌電路系統(tǒng),并分析了系統(tǒng)的相圖、Lyapunov指數(shù)譜、Poincare截面圖和分岔圖以及系統(tǒng)的穩(wěn)定性和耗散性,證明了系統(tǒng)的混沌特性,還設(shè)計(jì)出了系統(tǒng)的電路,并在Multisim電路仿真軟件和FPGA數(shù)字硬件電路實(shí)現(xiàn)中得到了驗(yàn)證;最后將新混沌系統(tǒng)與DNA加密算法相結(jié)合,設(shè)計(jì)出了新的圖像加密算法,并分析了加密圖像的安全性能,發(fā)現(xiàn)其具有良好的加密效果,可以被廣泛應(yīng)用到圖像加密領(lǐng)域。