(浙江工業大學 信息工程學院,浙江 杭州 310023)
密碼學實質上是為了解決通信系統中信息傳輸和存儲的安全性問題。密碼學按照學科分類可以分為密碼編碼學和密碼分析學,這兩個分類形成了既獨立又相對統一的矛盾體,安全的密碼機制促使更強大的分析方法的發展,而強大的分析方法又推進更加安全的密碼機制的誕生,兩者在相互斗爭中共同進步。根據密鑰的不同,可以把密碼學的研究分為分組密碼和流密碼。分組密碼就是將明文信號分成固定長度的組塊,隨機使用同一密鑰或算法對每一組塊加密,每個輸入塊都會產生一個輸出塊,輸出的信號也是固定長度的密文信號;流密碼也被稱作為序列密碼,通過將明文信號按碼元逐位加密[1],并伴隨著加密過程的進行,每次都產生一個密文的輸出,即一次只加密一個比特或一個字節,美軍的核心密碼仍是一次一密的流密碼體制[2]。
常用的流密碼加密方式一般使用軟件程序或者數字信號處理器來實現,但這些實現方式包括以下缺點:1) 通過軟件程序和數字信號處理器對高速光信號加解密處理很困難;2) 傳統的流密碼加密方式需要使用大量硬件設備,其成本比較高昂[3]。由于“時間透鏡成像系統”的提出和實現,可以通過時間透鏡系統解決以上問題,基于四波混頻的時間透鏡成像系統在其放大倍數為-1時,經過時間透鏡系統的光信號將發生時間反演,此過程和流密碼加密系統中通過密鑰對明文進行加密的過程相類似。考慮到時間反演一次加解密過程的安全性問題,在此基礎上提出并驗證了通過時間透鏡成像系統對光信號進行二次加解密的可行性。
時間域的色散傳輸方程和空間域的旁軸衍射傳輸方程形式相近,這種相似性稱為光的時空二元性[9]。在空間域中,有空間光學器件如“棱鏡”“透鏡”的概念和成像理論,以光的時空二元性為理論基礎,就可以推導出時間透鏡成像系統包含輸入色散裝置、時間透鏡、輸出色散裝置三部分。空間透鏡系統中,其成像原理是空間透鏡系統對空間二維坐標(x,y)產生二次相位調制,而在時間透鏡中,其相位因子是φ(τ)=ω0τ2/(2fT),式中fT是時間透鏡系統的焦距,τ是時間域坐標。


圖1 四波混頻時間透鏡成像系統Fig.1 The structure of FWM time lens imaging system


圖2 帶有啁啾的泵浦脈沖與信號光的作用Fig.2 The effect of pump pulse with chirp and signal light
通過程序仿真設計可以使定量的碼元在通過時間透鏡成像系統時發生時間反演[7],信號反演后即達到了加密目的,這就與流密碼的加密過程相似。時間透鏡成像系統應用于流密碼加密系統的系統流程框圖如圖3所示。密鑰流發生器會產生密鑰k,可以控制泵浦脈沖的產生。明文的碼元序列被劃分成固定長度的基本編碼碼元,明文與泵浦脈沖在時間透鏡系統中發生四波混頻作用,明文信號的基本編碼碼元將發生時間反演或者波形不變。當密鑰k為1時,會有泵浦脈沖的產生,碼元將會發生時間反演;而當密鑰k=0時,沒有泵浦脈沖的產生,所以不會有時間反演發生。相反,反演信號再次通過時間透鏡成像系統將實現信號的解密過程,這就將時間透鏡成像系統應用在了難以實現的光信號實時加解密系統中。這里討論的只是一次加解密過程[8],其安全性并不好,容易被不法分子或非法機構捕獲并破譯信號,這就需要提出一種更加安全的流密碼加解密方式。

圖3 四波混頻時間透鏡加密系統框圖Fig.3 Four-wave mixing time lens encryption system block diagram lens
一次加解密程序仿真時選擇的各項參數分別是:信號1100101001010011為明文源,脈沖的寬度選擇為5 ps,脈沖間隔為10 ps,輸入光纖的二階色散系數為20 ps2/km長度選為1 km。泵浦光輸入光纖的二階色散系數為20 ps2/km,長度也為1 km。輸出光纖的二階色散系數為-20 ps2/km,長度同樣為1 km,n的值取為4,密鑰流為1001。16 位信號每4 位分為一組,共分為4 組,由密鑰信號可知第1組和第4組將發生時間反演,第2組和第3組信號保持不變。這里使用MATLAB進行程序仿真,結果如圖4所示。圖4(a)為輸入的信源信號1100101001010011,圖4(b)為輸入的泵浦脈沖信號1001,圖4(c)為經過時間反演的密文信號0011101001011100,最后使用相同的密鑰,圖4(d)為恢復出來的信號1100101001010011。通過仿真,可以發現使用密鑰流加密的信號碼元發生了改變,實現了對流密碼的加解密過程。

圖4 多組信號進行加解密Fig.4 Encryption and decryption of multiple sets of signals
由于光信號一次加解密的復雜度不高,信息在傳輸過程中有可能會被截獲和破解。為了克服現有技術中光信號加密度不夠高、可能被不法分子竊取和破解的不足,這里提供了一種有效實現光信號二次加密與解密、安全性更高的基于時間透鏡成像的光信號加/解密系統。該系統包括方陣排布子系統、行加密子系統、列加密子系統和方陣展開子系統。方陣排布子系統采用延遲技術將序列碼原文排列為方陣碼;行加密子系統采用密鑰碼對方陣碼逐行進行加密獲得新方陣碼;列加密子系統采用密鑰碼對新方陣碼逐列加密;方陣展開子系統再次利用延遲技術將方陣碼展開,獲得二維加密的序列密文。進一步,光信號二次加/解密系統有兩個子系統,分別是加密子系統和解密子系統。
圖5是二次加解密的整體系統構圖,對原文序列通過延遲技術排布為矩陣碼,時間透鏡成像系統對矩陣按行進行隨機反演,得到一次加密的密文序列,時間透鏡成像系統再次對矩陣按列進行隨機反演,得到二次加密的密文序列。最后,再次通過延遲技術將矩陣碼轉換為密文序列,即實現了對信號光的二次加密過程;反之,則可以實現對信號光的二次解密過程。這就把時間透鏡成像系統成功地應用在了流密碼二次加解密系統中,實現了安全性更高的加密方式。
二次加解密程序仿真時選擇的各項參數分別是:信號1100101001010011為明文源,脈沖的寬度選擇為5 ps,脈沖間隔為10 ps,輸入光纖的二階色散系數為20 ps2/km,長度選為1 km。泵浦光輸入光纖的二階色散系數為20 ps2/km,長度也為1 km。輸出光纖的二階色散系數為-20 ps2/km,長度同樣為1 km,n的值取為4,密鑰流為1001。16 位信號每4位分為一組共分為4 組,由密鑰信號可知第1組和第4組將發生時間反演,第2組和第3組信號保持不變。泵浦脈沖發生器控制著泵浦信號的產生,這里產生的泵浦脈沖為1001,使用MATLAB進行程序仿真,結果如圖6所示。圖6(a)為輸入信號1100101001010011,圖6(b)為輸入的泵浦脈沖信號1001,圖6(c)是經過時間透鏡成像系統時間反演后輸出的一次密文信號0011101001011100,為了對列信號進行列加密處理,以此采用了延遲技術排布產生重新排布的一次密文信號,圖6(d)即為經過延遲技術排布的一次密文信號,圖6(e)為同樣的密鑰信號1001,圖6(f)為再次經過時間透鏡加密的二次加密信號1010001111000101,反之即是二次解密過程。通過仿真,可以發現使用密鑰流加密的信號碼元發生了改變,實現了對流密碼的二次加解密過程。二次加解密過程相比于前面的一次加解密過程而言,很難被捕獲和破譯,更適合應用于對安全性要求較高的通訊場合。

圖5 流密碼二次加解密流程圖Fig.5 Flow password secondary encryption and decryption flow


圖6 多組信號進行二次加密Fig.6 Secondary encrypting multiple sets of signals
時間透鏡成像系統可應用在高速光信號的加解密過程中,通過MATLAB程序仿真,當時間透鏡的放大倍數為-1時,輸入時間透鏡系統的信源信號會發生時間反演,因此實現了對高速光信號的加解密過程。基于此理論提出的一次加密過程存在容易被破譯的安全隱患,在時間透鏡對流密碼一次加密的基礎上,進一步討論了時間透鏡成像系統對流密碼二次加密的可行性,最后通過程序仿真實現了對高速光信號的二次加解密。