基于雙混沌系統(tǒng)的序列加密方法研究

由于混沌系統(tǒng)對初始條件和混沌參數(shù)非常敏感以及生成的混沌序列具有非周期性和偽隨機性的特性,近年來在信息加密領域得到了較多的應用。但是大多數(shù)混沌序列發(fā)生器都是采用單混沌系統(tǒng),可能存在一些潛在的動力學系統(tǒng)攻擊方法。提出了一種基于兩個參數(shù)隨機變換的混沌系統(tǒng)的偽隨機序列發(fā)生器,生成一個隨機性好、長周期的密鑰序列,并給出了統(tǒng)計特性分析的嚴格的理論證明。

一、基于雙混沌系統(tǒng)的偽隨機數(shù)發(fā)生器

1、參數(shù)隨機變換的一維線性映射

具有良好隨機統(tǒng)計特性的一維分段線性混沌映射,其定義為:

基于雙混沌系統(tǒng)的序列加密方法研究

其中,x∈i=f [0,1 ],p∈(0,1/2)。

我們定義在n-bit精度下,迭代次數(shù)為k的一維線性映射的表達式:

基于雙混沌系統(tǒng)的序列加密方法研究

該映射產(chǎn)生的混沌序列是混沌的,其輸出信號為{X(t)},在[0,1]上遍歷,且具有良好的自相關特性和均勻分布特性。

實值混沌隨機序列經(jīng)過計算機運算后都會變成偽隨機序列甚至是周期序列。由于有限精度效應,直接通過迭代生成的序列有如下缺點:固定的混沌參數(shù)p易被破解。在有限精度實現(xiàn)下,易陷入周期循環(huán)j而且周期不能保證足夠大。

為了解決這些問題,設計了一個混沌參數(shù)隨機變換的混沌系統(tǒng),如圖1所示。Ep是2n個一維線性混沌映射,表示為Ep(1)~Ep(2n)。所有20個Ep都是基于同一個定義在[0,1]上的一維混沌映射F(x,p),只是控制參數(shù)p(1)-p(2n)和初始條件不同。所有的Ep都是在n=16bit精度下實現(xiàn)的。Cp是一個單獨的一維線性混沌映射,用來控制2n個Ep的初始化和迭代過程,它也是定義在[0,1]上的一維混沌映射F(x'p)。

基于雙混沌系統(tǒng)的序列加密方法研究

它的初始值是系統(tǒng)隨機生成的一個偽隨機序列s(i),利用它作為C。的初始條件,根據(jù)式(2)生成隨機序列x(i)。可知f x(i))的取值空間為216。

以x(i)作為Ep的初始條件,系統(tǒng)中的參數(shù)根據(jù)x的量化值在p的可能取值P1,p2,…,pn中選取p,則p的選取次序為l=[x(i)炮16],從p(l)∈(p(216))中得到。其中[*]為取整。

在生成密鑰的過程中,每次的p都不同,并且p的選取決定于s(i)。s(i)是隨機選取的,所以p是隨機變換的。這種系統(tǒng)可以看成是由n個具有不同參數(shù)的一維分段線性混沌級聯(lián)而成的。

2、基于雙混沌系統(tǒng)的數(shù)字化實現(xiàn)

根據(jù)式(2)產(chǎn)生的模擬序列基于雙混沌系統(tǒng)的序列加密方法研究,用量化函數(shù)進行量化得到0-1二進制序列基于雙混沌系統(tǒng)的序列加密方法研究。

基于雙混沌系統(tǒng)的序列加密方法研究

其中,n>0為任意正整數(shù),I0n,I1n,I2n,…是區(qū)間[0,1]的2n個連續(xù)的等分區(qū)間。由于混沌序列(x(t))具有良好的隨機統(tǒng)計特性,這樣生成的(Sn(t))在理論上具有均衡的0-1比和&like的自相關等優(yōu)良的統(tǒng)計特性。

定義兩個一維線性映射F1,F(xiàn)2,用參數(shù)切換法進行控制。當它們都是滿足式(1)定義的混沌映射,設計如圖2所示的加密系統(tǒng)。其中,F(xiàn)1,F(xiàn)2為圖1所示的參數(shù)隨機變換的一維混沌映射;(s1(i)),(s2(i))均為n = 16bit的偽隨機序列。為干擾混沌的動力學特性,將混沌軌道量化后又進行異或運算。

基于雙混沌系統(tǒng)的序列加密方法研究

3、混沌系統(tǒng)的性能分析

(1)保證產(chǎn)生的0-1序列滿足二值均勻分布。在迭代過程中,每切換一個系數(shù)相當于更換了一個混沌模型,由此來提高產(chǎn)生的混沌序列的復雜性。即使有個別不安全的參數(shù),但由于參數(shù)數(shù)量龐大,而且又不斷地切換,這種可分解的規(guī)律被迅速擾亂,故保證了產(chǎn)生的序列服從二值均勻分布。經(jīng)過異或運算后,在不改變序列的均勻分布的基礎上,狀態(tài)向量之間的關系被完全置亂,這也是各種基于相空間重構的混沌預測方法對該結構會失效的一個重要原因。本文提出的方法既保證了產(chǎn)生的序列滿足二值均勻分布的要求,又避免了序列性能退化,極大地增加了對方預測破譯的難度。

(2)使得破解參數(shù)p變得異常復雜。破解一個一維分段線性混沌的參數(shù)需要該混沌同一分段的兩個點對。本系統(tǒng)有n個不同的混沌過程,所以一個點對落入一個指定的混沌的概率為n1,兩個點對同時落入同一個混沌的概率為n-2。因此,破解本系統(tǒng)的一個混沌參數(shù)的復雜度是破解一維分段線性混沌的n2倍。全部破解p1,p2,…,pn這n個參數(shù),其復雜度是破解一維分段線性混沌的n×n2= n3倍。在異或條件下,破解參數(shù)的復雜度以平方關系增加,即為(n3)2。所以參數(shù)隨機變換的混沌系統(tǒng)的復雜度遠遠大于一維混沌系統(tǒng)。

(3)進一步改善了序列的周期性能。作為密碼序列,其周期通常應很長,而定常參數(shù)的方法所產(chǎn)生的序列,其周期完全取決于序列的精度。本文采用的方法其周期由混沌參數(shù)改變的周期乘積來決定,產(chǎn)生的序列周期大大加長,而且容易度量。

取精度n=16,則兩個混沌系統(tǒng)生成的序列(X1(i))和{x2(i))的最小周期為22n=232,同樣二進制序列{S1(i))和(S2(i))的取值空間為22n。由異或特性,22n個序列值異或遍歷的序列空間為(22n)x( 22n)=24n =264,則二進制序列的最小周期長度為264,即混沌序列的最小周期Tmin=3.4 X1038,這對一般的加密系統(tǒng)已經(jīng)足夠了。而且我們可以通過提高精度n= 32使周期達到2128。這樣安全性可進一步得到保障,其保密性能明顯優(yōu)于基于單個映射的混沌系統(tǒng)和固定的高維混沌系統(tǒng)。

二、計算機仿真實現(xiàn)

仿真采用圖2所示的混沌系統(tǒng),取混沌序列精度n=16bit,參數(shù)p的精度為16,互相關性為系統(tǒng)初值變化0.000 015(1/216)時兩個序列的互相關。

在密碼學應用領域中,要求偽隨機序列具有δlike的自相關函數(shù)和近乎為零的互相關。圖3給出了本文設計的混沌序列的自相關與互相關的仿真結果,可以看出這種序列具有類δ函數(shù)的自相關和非常小的互相關,旁瓣一般不超過0.01。這與理想的獨立與分布的隨機序列的相關值曲線幾乎完全一致,說明該序列隨機性很好。

基于雙混沌系統(tǒng)的序列加密方法研究

線性復雜度是偽隨機序列的一個非常重要的性能指標。如果線性復雜度(LC)低,只需兩倍LC長的序列就可以通過B-M算法輕松地重構整個密碼序列,這也是很多傳統(tǒng)密碼序列的致命弱點。用B-M算法進行統(tǒng)計分析的結果如圖4所示。從圖4中可以看出,該序列的線性復雜度約等于序列長度的一半,接近于純隨機序列的線性復雜度曲線,滿足保密通信系統(tǒng)的要求。

基于雙混沌系統(tǒng)的序列加密方法研究

小知識之旁瓣

天線方向圖上,最大輻射波束叫做主瓣,主瓣旁邊的小波束叫做旁瓣。
旁瓣使聲能量擴散,衰減增多。目前減少旁瓣的最簡單的方法是:減少物體的尺寸,使其小于或者等于波長的一半,此時將不會產(chǎn)生旁瓣效應。