圖像文件加密中二次函數(shù)混沌特性的應(yīng)用
在圖像加密應(yīng)用中,為抵抗攻擊需要構(gòu)造更多的混沌序列。針對該問題,研究二次函數(shù)在單位區(qū)域內(nèi)的混沌問題,分析論證標準單位二次函數(shù)是Li-Yorke混沌的,在特殊情況下是Devaney混沌的,我們可以將這種方法應(yīng)用于圖像文件加密。
一、二次函數(shù)混沌特性的相關(guān)研究
當μ=4時,著名的Logistic映射:
就是標準單位映射函數(shù)。另外一些著名的混沌映射,例如在流體力學中,無窮動力系統(tǒng)的Navier-Stokes方程簡化后得到映射:f(x)=1-2x2。該映射的變量與自變量都在-1~1之間變化,可以通過縮放(橫軸縱軸縮放相同的倍數(shù))與平移,變換成式(1)所示的單位區(qū)域上的Logistic映射,變換前后,映射得到的混沌序列的混沌特性不變,事實上,該混沌序列也進行了相同的縮放與平移。
從幾何直觀角度來解釋,容易理解單位區(qū)域的作用,點在一個單位區(qū)域內(nèi)迭代運算,如果被壓縮在單位區(qū)域內(nèi),在這個區(qū)域內(nèi)折疊震蕩,既不收斂也不發(fā)散,就有了產(chǎn)生混沌的可能。理論上已經(jīng)證明,空間中正則非退化返回擴張不動點(回歸排斥子)導致Devaney和Li-Yorke意義下混沌,單位區(qū)域的作用就是使產(chǎn)生回歸排斥子成為可能。提出的用于系統(tǒng)混沌化的迭代取余方法就實現(xiàn)了映射的中心化和區(qū)域化。給出的一些多項式混沌判定方法也與本文討論的單位區(qū)域有直接關(guān)系,其中一些定理的條件就是把多項式映射限定在一個單位區(qū)域內(nèi)?;煦绲臄?shù)學定義很多,常用的有Li-Yorke混沌與Devaney混沌等,另外,試圖去掉Devaney混沌定義中的第3條,只保留遍歷性(拓撲傳遞)與初始條件敏感性;提出一個分布性混沌定義。引入這些混沌定義,目的是為了克服原有混沌定義的不足。
二、單位區(qū)域上二次曲線的Li-Yorke混沌特性
二次曲線映射包括拋物線、橢圓、雙曲線與相交直線等,為研究方便,可用式(2)所示的二次有理貝塞爾曲線參數(shù)方程表示:
其中,t為參數(shù);w0、W1、W2是需要給定的系數(shù),這3個系數(shù)可以決定曲線的類型;(x0,Yo)、(xl,Y1)、(x2,y2)稱為控制點,能夠控制曲線的形狀,(x0,Yo)和(X2,y2)分別是曲線的始點與終點,(x1,Y1)在曲線的上方,用于控制曲線的高度。
設(shè),當k=1時,式(2)確定的曲線是拋物線;當k1時,曲線是橢圓;當k1時,曲線是雙曲線。為把曲線壓縮到單位區(qū)域,令式(2)中的(xo,Yo)為(0,0),(x2,y2)為(1,0),式(2)簡化為式(3)所示。這樣曲線的下面2個端點就被固定在X軸上,一個在坐標原點,一個在(1,o)上,以這種簡單的情形為例研究二次曲線的混沌特性。
當t= 0.5時,二次曲線函數(shù)有最大值:
令y(t)=1,二次曲線函數(shù)即為標準單位映射函數(shù),這樣就可以解出Y1與w0、W1、W2的關(guān)系,即:
說明:當y1與w0、w1、w滿足式(4)的條件,t從O變化到l時該函數(shù)是標準單位映射函數(shù)。圖1給出了3個標準單位映射函數(shù)。
參數(shù)具體如下:
(1)當wo=2,w1=1,W2=2,X1=0.65,y1=3時,曲線為橢圓,最大值為1;
(2)當wo=2, wi=5, W2=2,x1=0.65, Y1=14時,曲線為雙曲線,最大值為1;
(3)當wo=0.2, w1=15, W2=0.2, xi=0.65, Y1=1,013時,曲線為近似的相交直線。
當趨近于o時,雙曲線接近于2條相交直線,這樣即可近似地構(gòu)造出帳篷映射,如圖1(c)所示。
分析計算了Logistic映射f(x)=ux(1-x)如果滿足,則映射是Li-Yorke混沌的,計算得到μ的最小值在3.5附近。事實上,也可以用類似的方法分析當w0、w1、w2、X1、Y1滿足什么條件時,式(3)所表示的映射是Li-Yorke混沌的。
如圖2所示,A點的橫坐標就是E點的縱坐標,A點經(jīng)過2次映射到D點,如果D點的縱坐標大于E點的縱坐標,那么就是Li-Yorke混沌的。
計算曲線的最大值A(chǔ)點的坐標,將t=5代入到式(3)中,即可計算出曲線的最大值坐標(xmax,ymax):
將xmax賦值給Ey(E點縱坐標),把ymax作為橫坐標代入到曲線方程計算出Cy,把Cy作為橫坐標代入到曲線方程計算出Dy,最后比較Dy與Ey的大小,以確定是否是Li-Yorke混沌。計算函數(shù)值時需要把參數(shù)方程轉(zhuǎn)化為顯式方程。
計算結(jié)果顯示,能夠形成混沌的控制點坐標(x1,y1)位于一個近似弓形的區(qū)域中,從橢圓到拋物線再剄雙曲線,混沌控制點的區(qū)域逐漸增大,這與3種曲線的傾斜程度即導數(shù)有關(guān)。
三、二次曲線映射的Lyapunov指數(shù)
在圖3(a)所示的帳篷映射函數(shù)中,頂點的坐標是(0.5,1)。每一點導數(shù)的絕對值都為2,因此,其Lyapunov指數(shù)為:
在圖3(b)中,頂點坐標為(a,1),其中,0≤a≤1,帳篷映射函數(shù)左部斜率為1/a,右部斜率為1/1-a,迭代時點落在左部的概率約是1/a,落在右部概舉約是1/1-a,因此,圖3(b)所示函數(shù)的Lyapunov指數(shù)約為:
因此,圖3(b)所示函數(shù)的Lyapunov指數(shù)大于0。
圖3(c)中有2個函數(shù):一個是帳篷映射函數(shù)(相交直線段),另一個是拋物線函數(shù),頂點坐標是(0.5,0.9)。帳篷映射函數(shù)的Lyapunov指數(shù)為:
拋物線的Lyapunov指數(shù)約為1.9。當頂點高度變小時,圖3(c)所示的帳篷映射與拋物線映射的Lyapunov指數(shù)不再大于0。
四、二次曲線迭代中的周期現(xiàn)象
事實上,有些控制點構(gòu)成的映射是Li-Yorke混沌的,但是產(chǎn)生的序列不是性質(zhì)很好的混沌序列,就像Logistic映射,當μ在3.85附近,序列在3個點周圍震蕩,當μ=3.84、初始值F0.2時,迭代第40次~多每54次得到的數(shù)值為:
類似這樣的周期序列如果直接用于對圖像的像素進行與或運算,那么效果極差。所以,將混沌序列構(gòu)造用于圖像加密時,應(yīng)該避開這樣的控制點,或者對這些數(shù)據(jù)進行處理。
另外,對于圖3(a)所示的直帳篷映射,迭代序列很容易陷入到周期點上,如初始值為x=0.233,迭代64次以后就變成0序列。傾斜的帳篷映射陷入到0上的概率比較小,因為其零點與周期點分布不再均勻;其他二次曲線也不容易陷入到周期點或者0點上,因為二次曲線方程的解多是無理數(shù);但是從數(shù)值實驗結(jié)果分析,所有二次曲線都容易在某個參數(shù)區(qū)域很容易陷入到一些周期點中。
鑒于周期點這種情況,在使用二次曲線進行圖像加密時,利用交叉迭代構(gòu)造混沌序列。
五、二次曲線迭代序列在圖像加密中的應(yīng)用
數(shù)值計算實驗結(jié)果表明,多個函數(shù)耦合在一起交叉迭代,能夠產(chǎn)生較好的混沌序列。交叉迭代就是給定各個映射的初始值后,執(zhí)行類似下面的迭代過程:
交叉迭代可以在很大程度上避免序列出現(xiàn)的周期現(xiàn)象,因為交叉迭代相當于把某個曲線的周期附近震蕩的點分散到各個曲線迭代點序列中。
從迭代的意義上講,多維混沌,例如Lorenz系統(tǒng),實質(zhì)上是進行了更加廣泛的交叉,也就是計算出新的點后,又重新迭代到每一個式子中;線性IFS迭代本質(zhì)上也是交叉迭代。交叉迭代實現(xiàn)了2個系統(tǒng)之間的耦合,屬于一種遞歸嵌套,使原本簡單的系統(tǒng)變得極其復雜?;谏厦鎸Χ吻€混沌特性的分析,隨機生成多個二次曲線參數(shù),交叉迭代構(gòu)造序列,然后對圖像文件加密。
首先,隨機產(chǎn)生Ⅳ組二次曲線的參數(shù)與控制點橫坐標,即N組wo、W1、W2以及X1,隨機產(chǎn)生控制點縱坐標y1,根據(jù)這些參數(shù)以及而判斷Y1是否能夠出現(xiàn)混沌;隨機產(chǎn)生迭代初始值x,各組曲線交叉迭代,產(chǎn)生混沌序列,對圖像進行加密。圖4所示的加密效果是使用了6組曲線交叉迭代構(gòu)造的序列對圖像直接進行與或運算得到的結(jié)果。
實驗證實二次曲線交叉迭代方法用于圖像加密是有效的,從而進一步驗證了前面給出的有關(guān)二次曲線的分析結(jié)果。6組參數(shù),其自由參數(shù)已達到24個(實際上,w0、w1、W2中獨立參數(shù)有2個),其密鑰空間已經(jīng)相當于優(yōu)秀結(jié)果。在實際工作中,有必要與一些其他非二次曲線映射綜合在一起構(gòu)造混沌序列,這樣可以增加抗攻擊能力。
小知識之二次函數(shù)
在數(shù)學中,二次函數(shù)最高次必須為二次, 二次函數(shù)(quadratic function)表示形式為y=ax2+bx+c(a≠0)的多項式函數(shù)。二次函數(shù)的圖像是一條對稱軸平行于y軸的拋物線。
二次函數(shù)表達式y(tǒng)=ax2+bx+c的定義是一個二次多項式,因為x的最高次數(shù)是2。
如果令二次函數(shù)的值等于零,則可得一個二次方程。該方程的解稱為方程的根或函數(shù)的零點。








