摘 要:給出性能較好的混沌序列生成器,并將其生成二值序列的方法進行了改進。在此,將幾種常用的混沌序列生成器進行比較分析。Logistic映射和Hybrid映射是兩種較好的混沌映射。混沌序列具有易生成性,對初始條件強敏感性,可完全重現性等特點,基于以上特性,很多的圖像置亂加密算法都采用了混沌序列。
關鍵詞:混沌序列; 離散化; 敏感性; 混沌序列
中圖分類號:TP391 文獻標識碼:A
文章編號:1004-373X(2010)10-0043-03
Comparison and Analysis on Some Chaos Sequence Generators
ZHAO Yu-xia, FAN Jing-bo
(Shangluo University, Shangluo 726000, China)
Abstract:Some chaos sequence generators with better performance is introduced andthe method of binary sequence generated by the chaotic mapping is improved. Some common used chaos sequence generators are compared and analysed. Both Logistic mapping and Hybrid mapping are the better ones. Chaos sequence has the features of feasible generation,sensitivity to initial conditions and complete reappearance.Many image scrambling encryption arithmatics use the chaos sequence based on the above features.
Keywords:chaos sequence; discretization; sensitivity; chaos sequence
隨著計算機的廣泛應用以及網絡通信技術的迅速發展,越來越多的信息都借助計算機網絡進行傳輸,因而數據信息的保密儲存與傳輸就顯得十分重要。混沌動力系統對初值依賴的確定性和敏感性[1-5],使得混沌序列作為信息存儲或傳輸中的隨機加密成為可能。
1 混沌序列
混沌序列是一種偽隨機序列。偽隨機的意思表面看起來很隨機,但其實是確定的序列。所謂“確定序列”是指:如果知道規則,可以一個不漏地寫出以后的全部序列(例如:1,4,9,16,25,36,…)。出于某些目的(例如擴頻通信),需要隨機序列,但從可操作的角度來說(收發必須要用完全相同的序列),需要做出這樣的序列,它“看上去很隨機”,但實際上是用不太復雜的規則以確定的方式產生的。這樣的序列叫偽隨機序列或者偽碼。混沌動力系統在一定的控制參數范圍內和給定的初始條件下,運動是確定的,但該運動的長期狀態對初始條件極為敏感,即使初始狀態有非常小的差異也會導致產生不同的混沌序列。
2 幾種常用的混沌序列生成器
在圖像置亂加密算法中常用的幾種混沌序列生成器有Logistic映射、Hybrid映射、Optically bistable(光學雙穩)模型和Chebyshev映射。
2.1 Logistic映射
Logistic映射是一種非常簡單卻被廣泛應用的混沌序列生成器。混沌系統表述為:
xk+1=μxk(1-xk)(1)
式中:3.569 946≤μ≤4系統初值,x0∈(0,1),本文取μ=4。這樣Logistic映射可以定義在(0,1)上,相應地得到定義在(0,1)上的偽隨機序列是{xk,k=0,1,2,…)。對其進行非線性離散化,設{sk,k=0,1,2,…)為由混沌序列{xk,k=0,1,2,…)經離散化得到的0,1序列,sk的值由混沌序列xk和0.5比較而得,當xk<0.5時,sk=0;當xk≥0.5時,sk=1。
2.2 Hybrid映射
Hybird映射是一種新的混沌序列生成器[2],混沌系統表述為:
xk+1=b(1-μ1x2k),-1 1-μ2xk,0 本文取μ1=1.8,μ2=2.0,b=0.85時,映射處于混沌態。 這樣,Hybird映射可以相應地得到定義在(-1,1)上的偽隨機序列是{xk,k=0,1,2,…)。對其進行非線性離散化,設{sk,k=0,1,2,…)為由混沌序列{xk,k=0,1,2,…)經離散化得到的0,1序列,sk的值由混沌序列xk和0.5比較,當|xk|<0.5時,sk=0;當|xk|≥0.5時,sk=1。 2.3 光學雙穩模型 該模型可用一個一維非線性迭代系統來描述: xk+1 =Asin 2(xk-B) 本文取A=4, B=2.5時,系統處于混沌狀態。給定該系統的初值x0,進行迭代運算,相應得到的偽隨機序列是{xk,k=0,1,2,…)。對其進行非線性離散化,設{sk,k=0,1,2,…)為由混沌序列{xk,k=0,1,2,…)經離散化得到的0,1序列,sk的值由混沌序列xk與2.5A/3比較而得,當xk>2.5A/3時,sk=1;否則sk=0。 2.4 Chebyshev映射 在此,采用4階的Chebyshev映射模型,用如下的方程表示: xk+1=cos(4cos-1xk) 給定該系統的初值x0,進行迭代運算,得到的偽隨機序列為{xk,k=0,1,2,…)。對其進行非線性離散化,設{sk,k=0,1,2,…)為由混沌序列{xk,k=0,1,2,…)經離散化得到的0,1序列,sk的值由混沌序列xk和0比較而得,當xk>0時,sk=1;否則sk=0。 3 幾種混沌序列生成器的比較分析 3.1 幾種混沌序列生成器中實值混沌序列的比較 一個混沌序列的性能,主要看它的隨機性和它對初值的敏感程度[2,4-5,8]。隨機性指生成的序列沒有規律,即生成的散點圖越散亂越好;初值的敏感性指即使初值有非常小的差異也會產生不同的混沌序列。 圖1 4種混沌序列生成器生成的混沌序列的隨機性和初值敏感性 圖1為4種混沌序列生成器生成的混沌序列中隨機性和初值敏感性的對照。其中,橫軸為k的值,縱軸為xk 的值;“+”表示初值為0.7的部分混沌序列;“.”表示初值為0.700 001的部分混沌序列。 由圖1可以看出,Logistic映射與Hybird映射生成的混沌序列比較散亂,并且在迭代幾次后,初值雖然相差很小(僅有0.000 001),卻出現了明顯的分叉現象;Optical bistable映射生成的混沌序列出現了扎堆現象;Chebyshev映射生成的混沌序列不是很散亂,而且在經過很多次迭代后才出現分叉現象。顯然Logistic映射與Hybird映射生成的混沌序列有很好的隨機性和初值敏感性。 3.2 混沌序列生成0,1序列的隨機性比較 二值序列的比較主要看其頻數檢驗和序列檢驗。初值為0.7的計算結果見表1、表2。在頻數檢驗時,保證序列中0和1的個數大致相等,這是二值序列具有隨機性的最基本保證,其中n0為0的個數;n1為二值序列中1的個數;n為二值序列的長度。 x21 = (n1 -n0 )2/n2 在序列檢驗時,對所得二值序列內00,01,10,11(二維均勻性)出現的次數進行統計, 其中 nij,i,j∈{0,1}表示二值序列中“ij”的個數。 x22 = 4n-1∑1i = 0∑1j = 0n2ij -2n∑1i = 0(n2i+ 1) 由表1和表2可以看出,Logistic映射產生的二值序列中頻數檢驗和序列檢驗的值最小,因此隨機性最好。Hybrid映射產生的二值序列中隨機性次之,但復雜度較高,因是一種較新的混沌序列生成器,所以密碼分析更加困難,它較Logistic映射產生的混沌序列安全。 3.3 兩種映射的非線性離散化的改進 上面所提到的非線性離散化方法比較普遍,而且產生的二值序列化成十進制數容易扎堆[5]。 鑒于此,文獻[5]中給出了Logistic映射的非線性離散化改進算法,即利用不同的初值生成兩個混沌序列{xk},{yk},k=0,1,2,…。sk的值由混沌序列xk和yk比較,當xk 其中,傳統算法中混沌序列的初值取0.7, 改進算法中混沌序列的初值分別為0.9和0.8。Logistic1,Hyirid1為改進后生成的序列。 對改進后產生的二值序列進行頻數檢驗和序列檢驗,其結果甚至優于傳統的方法,說明得到的二值序列和二值序列化成整數后的序列具有很好的隨機性。改進后使算法更加復雜,但安全性有了進一步的改善。 表1 4種混沌序列二值序列長度為10 000時的隨機性 方法0的個數1的個數00的個數01的個數10的個數11的個數頻數檢驗序列檢驗 Logistic4 9805 0202 4842 4952 4962 5241.6×10-5-0.811 3 Hybrid5 0864 9141 7843 3013 3011 6132.958 4×10-41.029 2×10-3 Optically4 8965 1044 1137827834 3214.326 4×10-44.722 1×10-3 Chebyshev6 5903 4103 1813 4093 40900.101 12.334 6×10-3 表2 4種混沌序列二值序列長度為20 000時的隨機性 方法0的個數1的個數00的個數01的個數1 0的個數11的個數頻數檢驗序列檢驗 Logistic9 99510 0054 9735 0225 0224 9822.5×10-7-0.601 Hybrid10 2019 7993 6466 5556 5543 2444.040 1×10-41.941×10-3 Optically9 59910 4018 0561 5431 5438 8571.608×10-39.590 8×10-3 Chebyshev13 2206 7806 4406 7796 78000.103 74.607×10-3 表3 2種混沌序列改進前后二值序列長度為10 000的隨機性 方法0的個數1的個數00的個數01的個數1 0的個數11的個數頻數檢驗序列檢驗 Logistic4 9805 0202 4842 4952 4962 5241.6×10-5-0.811 3 Logistic15 0254 9752 5292 4952 4952 4802.5×10-5-0.734 0 Hybrid5 0864 9141 7843 3013 3011 6132.958 4×10-41.029 2×10-3 Hybird14 9865 0141 8603 1253 1261 8887.84×10-66.256 4×10-2 表4 2種混沌序列改進前后二值序列長度為20 000的隨機性 方法0的個數1的個數00的個數01的個數1 0的個數11的個數頻數檢驗序列檢驗 Logistic9 99510 0054 9735 0225 0224 9822.5×10-7-0.601 Logistic110 0179 9834 9875 0305 0294 9532.89×10-6-0.234 2 Hybrid10 2019 7993 6466 5556 5543 2444.040 1×10-41.941×10-3 Hybrid19 98710 0133 7466 2416 2413 7711.69×10-61.231 7×10-3 圖2 二值序列以8位為單元化成整數后的隨機性比較 4 結 語 在此,將幾種常用的混沌序列生成器進行了比較分析,其中Logistic映射最簡單,具有很強的初值敏感性,產生的序列隨機性最好,但正是由于它的形式簡單和使用廣泛,所以不安全,易于攻擊;Hybrid映射產生的序列次之,但Hybrid映射形式較復雜,又是一種新的混沌序列生成器,所以安全性更好。可根據具體情況選擇合適的混沌序列生成器,也可以像文中那樣對現有算法進行改進,以此來加強算法。混沌序列具有易生成性、對初始條件強敏感性、可完全重現性等特點,用于圖象置亂將是一種安全有效的方法。 參考文獻 [1]張雪峰,范九倫,康寶生.一種抗剪切攻擊的數字圖像加密算法[J].系統仿真學報,2006,18(8):2260-2263. [2]羅啟彬,張健.一種新的混沌偽隨機序列生成方式[J].電子與信息學報,2006,28(7):1262-1265. [3]徐全生,李震,杜旭強. 一種基于混沌序列的圖像加密算法[J].小型微型計算機系統,2006,27(9):1754-1756. [4]李宏智,劉曉光.混沌序列在數字信息置亂中的應用[J].現代電子工程,2006(2):53-55. [5]趙莉,張雪峰,范九倫. 一種改進的混沌序列產生方法[J]. 計算機工程與應用,2006(23):31-33. [6]徐祗軍,吳小娟,董文會.基于Chebyshev混沌序列的數字圖像擴頻水印[J].電子技術與應用,2005,31(9):11-13. [7]趙學峰.基于混沌映射的數字圖像置亂方法[J].微電子學與計算機,2003,20(8):136-138. [8]張雪峰,羅祖軍,高川.基于混沌序列的數字圖像加密算法[J].計算機工程與應用,2006,42(19):61-62. [9]張小華,劉芳,焦李成.一種基于混沌序列的圖像加密技術[J].中國圖像圖形學報,2003,8(4):374-378. [10]PARKER A T, SHORT K M. Reconstructing the keystream froma chaotic encryption scheme[J]. IEEE transactions on Circuits and Systems-I: Fundamental Theory and Applications, 2001, 48(5): 624-630.