薛建華,徐蔡余
(1.南京理工大學 泰州科技學院,江蘇 泰州 225300;2.南京理工大學 公共事務學院,江蘇 南京 210014)
隨著技術不斷革新,互聯網帶動著社會高速發展,但其無邊界的特性,給信息安全帶來了巨大的挑戰。近些年,一種“以數據為中心”的安全理念被提出并廣為討論和研究,其中密碼技術備受關注。利用非線性系統迭代結果難以預測、對初始條件的變化極端敏感、運行效率高、保真度高等特性而提出的混沌加密方法,是密碼技術領域的一個新興研究方向,應用前景十分廣闊[1,2]。
混沌加密的關鍵基礎是混沌非線性系統,例如傳統的Logistic映射、Sine映射、PWLCM映射、Kent映射、Henon映射、Lorenz映射等[3-6]。近些年來,一些專家學者提出新的混沌加密系統,以應對日益復雜、嚴峻的信息安全形勢,例如:周紅亮等[7]提出一種新的混沌系統結合DNA編碼的加密算法,實現了較高的加密、解密效率,但計算復雜,且受限于GTCA配對規則,易遭受攻擊;汪樂樂等[8]針對傳統的混沌系統安全性低的問題,提出一種基于Henon映射與Logistic映射的分數階雙混沌系統,實現了較強的初值敏感性和較低的計算復雜度,但混沌系統的疊加并不能擴大有效參數空間;王永等[9]通過對Sine映射進行分段處理和參數耦合,提出一種三維混沌模型,實現了更大的Lyapunov指數以及更均勻的概率分布;賈曉霞等[10]結合Tent映射提出一種高維混沌擴散的加密方案,擴大了密鑰空間、增強了安全性能;Khade等[11]將Logistic映射拓展為三維系統3D-Logistic,Lone等[12]將3D-Logistic與Arnold變換、仿射希爾密碼進行組合,通過圖像加密進行了驗證;Dua等[13]利用余弦函數對三維混沌系統ILM進行改進嘗試,推導出新的三維混沌系統CT-ILM;張賽男等[14]通過聯級耦合實現了logistic-sine-cosine混沌加密,獲得了較好效果,進一步驗證了三角函數在混沌加密方面的優勢。
相比而言,傳統的一維混沌系統結構形式簡單、運行效率高、易于實現,但處于混沌狀態的參數空間較窄,有效密鑰空間有限,安全性不高。新興混沌系統及相關加密算法,往往結構復雜、實現難大度,要么相空間分布不均勻或呈現規律明顯易遭受攻擊,要么運行效率低下、實用性不強,呈現出一定的局限。研究新的具備較大參數范圍、較好混沌效果、運行效率高、形式簡單的多維非線性系統,是十分實際而又有意義的工作,也是當下的一個熱點[15]。
本文通過對一個基于正余弦的二維混沌系統進行優化改進,進一步拓展出新的三維混沌系統;根據Lyapunov指數、分岔圖、相位圖以及混沌時序圖、直方圖等,來反映系統改進后的混沌性能;采用編碼加密算法進行仿真試驗,通過對系統改進前后的試驗結果分析、對比,驗證該方法的可行性和適用性。
劉明明等[16]提出一個基于正余弦的二維混沌系統(詳見式1),結構簡單、運行效率高,但在加密應用時存在一些不足:一是有效參數空間不連續且階段性有效范圍較窄(如圖1(a)所示),隨著參數值增大,系統不斷出現向穩定態收斂的現象,應用價值受限;二是相空間分布不均勻,呈現規律較明顯(如圖1(b)所示),并且混沌直方圖兩端高、中間低(如圖1(c)、(d)所示),分布不均勻,易遭受攻擊。出現這些不足,主要原因是式(1)設計簡單且正余弦函數的弧度值子公式相近,當Xn=π/4-k·π或Yn=k·π-π/4(k∈Z)時正余弦值相等,易造成2個子式等效。文獻[16]通過參數與正余弦函數相乘擴大了相空間范圍,但也增大了子式等效的概率。
圖1 式(1)的最大Lyapunov指數圖、混沌相位圖及直方圖
(1)
(1)本文針對上述不足,首先從兩個方面進行改進:一是舍棄與正余弦函數相乘的參數,將迭代變量的值范圍控制在[-1,1],雖然縮小了相空間范圍,但也降低了系統向穩定態收斂的概率;二是改造正余弦函數的弧度值子公式,分別對其中一個變量添加控制參數與其相乘,提高結構復雜度,避免失效。
改進后的二維混沌系統函數關系公式如下
(2)
(2)令f1的控制參數ρ等價于常量-λ,公式變換如下
f1(Xn,Yn)=cos(Xn-λYn)=cos(λYn-Xn)
(3)
構造出新的二維混沌系統
(4)
(3)引入新變量Z,令
Zn+1=f3(Xn,Yn)=tan(γXn·Yn)
(5)
式中:(γXn·Yn-π/2)(modπ)≠ 0,由于Xn∈[-1,1]、Yn∈[-1,1],故本文取γ=1.19。
(4)用變量Z分別代換f1與f2的變量X和Y,提高系統復雜度
Xn+1=f1(Yn,Zn)=cos(λYn-Zn)
(6)
Yn+1=f2(Xn,Zn)=sin(μXn-Zn)
(7)
(5)對系統添加控制參數α、β,令α與其相乘擴大相空間范圍,對β取模將相空間映射到值域[0,β),讓混沌分布更加均勻。函數關系變換如下
(8)
經上述改進,拓展出一個新的三維混沌系統,命名為“CST-3D”,其函數關系公式為
(9)
式中:α≥β≥1。為了實現較均勻的混沌分布,本文取α=10 000、β=10。
CST-3D的Jacobian矩陣式為
(10)
控制參數λ=μ,通過Matlab仿真計算Jacobian矩陣得出Lyapunov指數[17],如圖2中(a)圖所示:μ∈[0,+∞)時,Lyapunov指數恒大于0,系統保持著穩定且連續的混沌狀態,并與圖2中的分岔圖(b)、(c)和(d)形成對應,效果較好。
圖2 CST-3D的Lyapunov指數圖和分岔圖
令g(X,Y,Z)=0,計算出系統僅有1個平衡點s=(0,0,0)。對該平衡點線性化得Jacobian矩陣J0為
(11)
其特征值λ0=0,可見平衡點s為不動點。系統CST-3D要進入混沌狀態,其初始值(X0,Y0,Z0)≠(0,0,0)。
取CST-3D的參數λ=5.6、μ=4.8,變量X、Y、Z的初始值為(1,1,1),迭代運算后的結果如圖3和圖4所示。由圖可見,X、Y、Z的值混亂無序,直方圖分布均勻,混沌吸引子呈現出良好的混沌效果。
圖3 CST-3D的混沌吸引子
圖4 CST-3D的混沌時序圖及直方圖
對比來自文獻[16]的式(1),新系統CST-3D在三個方面有明顯改進:
(1)對比圖1(a)與圖2(a)可知,CST-3D解決了式(1)有效參數空間不連續且隨著參數增大不斷向穩定態收斂的局限。CST-3D在參數μ∈[0,+∞)時便可進入連續、穩定的混沌狀態,有效參數空間更大,實用性更佳。
(2)對比圖1(b)與圖3可知,CST-3D解決了式(1)的相空間分布區域遍歷性差的問題。式(1)的相空間存在固化的邊界,其X∈[-8,8]且Y∈[-0.5,0.5],范圍受限且分布規律明顯;而CST-3D的相空間范圍為(X,Y,Z)∈[0,β),大小取決于控制參數β,范圍更大、更可控且分布遍歷性較好。
(3)對比圖1(c)、(d)與圖4(d)、(e)、(f)可知,CST-3D解決了式(1)中混沌直方圖“兩端高、中間低”的分布不均勻問題,且受控于參數α與β的差值,加密應用中安全性能更高。
混沌加密屬流密碼范疇,是利用混沌非線性系統生成密鑰序列與明文進行耦合的一種加密方法。為驗證上述混沌系統的可行性,本文采用編碼加密算法進行仿真試驗,并重點圍繞安全性進行分析和對比。
編碼加密算法的大致思路是:將混沌系統的初值(X0,Y0,Z0)以及初始迭代次數M作為密鑰,用混沌系統進行迭代運算產生一系列混沌值并組成流密碼序列,然后擴散至GF(216)。其中,密鑰序列的生成原理如下。
步驟1CST-3D迭代運算生成一系列混沌值。函數關系公式如下
(12)
(13)
式中:1≤i≤n-1。
步驟2每個混沌值取t個有效數,按一定邏輯形成混沌序列T,相應函數關系公式如下
(14)
式中:1≤k≤n,0≤i≤t-1。
步驟3依次局部選取混沌序列T的5位密鑰集,形成流密碼序列K,并逐一對216取模,將每一位密碼均擴散至GF(216)。函數關系公式如下
Ki={Ti,T(i+1)(modp),T(i+2)(modp),T(i+3)(modp),
T(i+4)(modp)}(mod216)
(15)
K={K0,K1,…,Kp-1}
(16)
式中:0≤i≤p-1,p=3nt。
上述過程中,流密碼序列K的長度p不小于明文長度;其密鑰空間為216p,隨著密碼長度的增長呈指數式擴大,可有效抵御窮舉攻擊?;煦绲螖礵≥1,具體取值可根據實際應用場景綜合運行效率確定。密鑰擴散的思路,依據混沌自相似性理論,即局部選取的混沌密鑰集在分布形態上與整體相似[18,19],保持著混沌序列整體的偽隨機特征。如此,既能獲得較好的加密效果,又能實現較快的加密、解密速度。
本文依據國家標準《信息安全技術 二元序列隨機性檢測方法》,對混沌加密系統產生的密鑰序列進行了隨機性測試。分別以本文CST-3D、文獻[16]的式(1)、文獻[11]的3D-Logistic、文獻[13]的CT-ILM等4個混沌系統為基礎,用編碼加密算法生成1MB的混沌密鑰序列作為實驗對比樣本,測試結果如表1所示。
表1 混沌密鑰序列隨機特性檢測結果及對比
CST-3D生成的混沌序列樣本,15項檢測全部100%通過,測試結果P_value均大于顯著性水平α(α=0.01);式(1)生成的樣本,在塊內頻數檢測、二元推導檢測(k=3)、累加和檢測、Maurer通用統計檢測等4項試驗中,存在小概率檢測不通過情況;3D-Logistic生成的樣本,在游程分布檢測、二元推導檢測(k=7)、自相關檢測(d=2)、近似熵檢測、線性復雜度檢測等5項試驗中,檢測沒有完全通過,個別項目不通過機率接近8%;CT-ILM生成的樣本,在塊內最大“1”游程檢測、線性復雜度檢測、離散傅立葉檢測等3項試驗中,小概率檢測不通過。由此可見,本文的三維混沌系統CST-3D與編碼加密算法符合國家隨機性檢測標準;對比國內外相關研究發現,混沌系統的隨機性能CST-3D>CT-ILM>式(1)>3D-Logistic。
本文基于CST-3D系統的編碼加密算法,生成的流密碼序列信息熵較大,呈現出較高的不確定性,如圖5所示。尤其當數據量不超過16 KB時,流密碼序列的信息熵近似于理論極值??梢?該方法具有良好的抗熵值分析攻擊性能。
圖5 流密碼序列信息熵分析
與傳統動力學系統不同的是,混沌系統微小的初始差異將隨著時間不斷放大,迭代運算產生的混沌序列甚至有可能完全不同。根據范九倫等[20]提出的初值敏感性檢驗方法,設定CST-3D系統初值(X0,Y0,Z0)=(1,1,1)、參數(λ,μ,γ)=(5.6,4.8,1.19)、初始迭代次數M=300,通過對上述7個值逐一進行微小變化后生成1MB流密碼序列,用編輯距離算法分別計算相似度,進行兩兩對比分析差異,結果如表2所示。初值或參數微小變化前后生成的流密碼序列,差別很大;8種實驗條件下產生的流密碼序列,彼此之間相似度小于0.008%,幾乎完全互不相同??梢?本文提出的混沌系統CST-3D對初始條件極為敏感,具備良好的抗差分分析攻擊性能。
表2 初始條件微小變化前后生成的流密碼序列相似度檢測結果
學生檔案中的《普通高等學校招生考生報名登記表》,加密前后的直方圖如圖6所示。加密前,明文的直方圖分布特征十分明顯;加密后,直方圖分布均勻,明文統計特征完全被隱藏。對比發現,CST-3D系統加密產生的密文直方圖,較“式(1)”與3D-Logistic的密文直方圖分布更加均勻,沒有特別明顯的統計特征,可以較好地抵御統計攻擊;與國外學者新提出的CT-ILM系統相比,效果不相上下。
圖6 學生《普通高等學校招生考生報名登記表》直方圖及對比
本文通過對一個二維正余弦混沌系統進行改進、優化,并進一步拓展出新的三維混沌系統CST-3D,采用編碼加密算法進行了仿真試驗驗證。結果表明,本文方法具有以下特性和優勢。
(1)CST-3D系統混沌性能良好,當參數λ=μ≥0便可進入連續、穩定的混沌狀態,有效參數空間得到進一步擴大。迭代運算后,變量X、Y、Z的值混亂無序,直方圖分布均勻;相空間遍歷性佳,范圍拓展至[0,β),空間更大、更可控。
(2)CST-3D系統和編碼加密算法,符合國家隨機性檢測標準,對初值和參數的變化極為敏感,生成的流密碼序列信息熵較高,安全性較好。信息加密后直方圖分布均勻,明文統計特征完全被隱藏,具有良好的抵御攻擊能力。
(3)CST-3D系統形式簡單、運行效率高,實際應用價值頗高。系統設定了5個控制參數,給加密應用的安全設計提供了更多的空間,在政務平臺、金融網絡、教育招生等對信息安全要求較高的領域更具優勢,應用前景廣闊。