葛秀梅, 仲偉波, 李忠梅, 范東升
(江蘇科技大學 電子信息學院,江蘇 鎮江 212003)
隨著Internet的普及及其傳輸速率的提升,網絡傳輸語音已成為可能,但Internet的開放性對語音通信的安全提出了更高的挑戰。語音信號具有數據量大、能量分布不均勻、冗余性高的特點[1],而混沌系統根據少量參數就可以產生滿足密碼學基本特性的混沌序列,且混沌序列具有短期內可預測但長期不可預測的特點,非常適合作為加密密鑰并已引起諸多學者的關注[2]。雖然近年研究發現基于混沌流同步加密的方法存在安全方面的問題[3],但混沌加、解密技術已成為目前加解密的應用研究的熱點[4-5],并被成功用于語音和圖像加解密中[6-12]。本文把混沌序列作為密鑰,利用其他加密算法對語音進行加密以有效避免混沌流密鑰帶來的失密危險。
TI的5509A DSP由于其低功耗和快速計算能力常被用于語音信號處理中,本文基于該芯片設計并實現了一種混沌密鑰語音加密系統,發送端先由根密鑰產生混沌加密密鑰,然后根據約定的IDEA(International Data Encryption Algorithm)加密算法對語音數據進行加密,加密后的語音密文經過傳輸到達接收端。發送端同時也將根密鑰加密發送到接收端,接收端根據根密鑰和混沌系統自動生成解密密鑰。接收端根據計算出來的解密密鑰對接收到的語音密文進行解密得語音明文。經測試,本文所給出的混沌語音加密系統具體較好的安全性和穩定性,可用于語音保密通信中。
系統中混沌語音加、解密可分為混沌密鑰產生和IDEA加解密算法兩部分。混沌密鑰的產生是將Henon映射和改進后的Logistic映射級聯生成初始混沌序列,然后對其進行非線性變換得到IDEA加密算法所需的128 b加密密鑰。IDEA是James Massey和來學嘉提出的數據塊加密算法,數據塊長度為64 b,密鑰長度為128 b[13]。IDEA算法相對來說是一個比較新的算法,其安全性研究也在不斷進行,雖然已發現IDEA也存在諸多弱點,但目前已在PGP,SSL等工程中大量應用,仍不失為當前最優秀加解密算法之一[14]。
系統采用的Henon映射為:
(1)
其中:a=1.4;b=0.3。由于Henon序列取值在[-1.3,1.3],在DSP的C代碼中采用double類型保存所得的映射序列。系統根據用戶輸入初值x0,y0進行2 000次Henon映射迭代計算得到長度為2 000的迭代序列,將序列最后一個分別與第1 800個和第1 900個值相乘并取其小數部分,得到d1=(x1999*x1799)mod1,d2=(y1999*y1799)mod1,其中d1,d2∈(0,1)。
系統采用的改進的Logistic映射為:
xn+2=rxn+1(1-xn+1)+(4-r)xn(1-xn)
(2)
其中,xn∈0,1,當r∈[0,1.284 9)∪(3.477 6,4]時除個別點外系統都處于混沌狀態,且迭代結果中不存在空白窗、穩定窗以及(0,1)范圍分布不均勻等安全問題[15]。改進的Logistic映射的初值x0=d1,x1=d2,經過2 000次迭代后,將最后16個值保存在數組d[16]={x1984,x1985,…,x1999}中。
為得到IDEA加密算法所需的128 b二進制密鑰,需將所得到的混沌序列d[16]作如下非線性變換:將區間[0,1]分成256個子區間,每個區間依次用0到255之間的整數表示,混沌序列d[16]中某元素落在第i個區間中,將其置換成整數i并標識該區間;若落入的區間i已標識過,則將i加1模256,直到得到新的整數為止。如此迭代,即可獲得一個有16個不重復的序列{a0,a1,…,a15},其中ai∈{0,1,…,255},將其中元素用二進制數表示,即可得128 b二進制密鑰。由于DSP的C語言規范中unsigned char數據類型長度為16 b,將上面得到的16個8 b密鑰合并組成{b0,b1,…,b7},其中b0=a0?8+a1,…,b7=a14?8+a15。
IDEA算法是一個分組長度為64位,密鑰長度為128 b的分組加密算法,由于系統采用的5509A是16 b的定點處理器,為方便和效率考慮,將明文分成四個16 b的子分組:x1,x2,x3和x4并將其用unsigned short數據類型表示,這4個子分組作為第一輪的輸入并進行運算,每一輪的輸出作為下一輪的輸入,經過8輪運算之后,得到最終的輸出變換:y1,y2,y3,y4,將y2,y3兩組交換,得到最終的四個密文子分組,最后將這四個子分組重新連接到一起產生密文。IDEA解密過程和加密過程一樣,只是參與運算的密鑰不同而已。IDEA具體每輪的計算過程如圖1所示。

圖1 IDEA加密流程圖
由IDEA加密算法可知,在整個加密運算中總共需要52個16 b二進制子密鑰,這52子密鑰是根據128 b二進制混沌密鑰生成的。52個加密密鑰在DSP中實現過程如圖2所示。由IDEA算法可知其加密過程和解密過程相同,所不同的是參與運算的密鑰,52個解密密鑰可由加密時所使用的52個加密子密鑰計算得到,在DSP中實現過程如圖3所示。其中inv()函數中要對65 537求余,因此該函數中所有變量的數據類型都為long,最后將inv()函數返回的數據強制轉換為unsigned short類型,由于返回數據的取值在unsigned short類型表示的范圍,強制類型轉換不會產生錯誤。
本文設計實現的混沌語音加、解密系統以DSP5509A為核心,使用CCStudio和XDS100V2仿真器進行開發調試。DSP5509A完成語音信號的加密解密算法并控制整個系統的運行,音頻編解碼芯片TLV320AIC23用來完成語音數據的采集和回放,模擬語音信號經過麥克風輸入或線輸入,通過TLV320AIC23使之轉換為PCM碼,PCM編碼通過多通道緩沖串口McBsp進入DSP5509A,并存儲在外擴SDRAM中。DSP5509A對語音PCM碼數據進行混沌加密并將其通過以太網發送出去。接收端通過以太網得到語音數據密文和混沌根密鑰,先根據混沌根密鑰計算出IDEA解密密鑰,然后把語音密文解密成明文。

圖2 加密密鑰求解流程圖

圖3 解密密鑰求解流程圖
系統首先是初始化CSL庫,設置系統DSP的工作頻率為144 MHz,然后初始化IIC,主要包括設置地址模式為7 b地址模式、IIC傳輸速率為84 MHz、傳輸字節中包含16 b及打開數據環路模式,通過IIC對AIC23進行配置和管理,AIC23復位后設置AIC23的采樣率為44.1 kHz。配置EMIF為全EMIF接口模式,并初始化DSP的外部SDRAM。對McBsp0的初始化后,打開McBsp0與AIC23進行數據交換。
為驗證所設計的語音加、解密方案的可行性和代碼的正確性與可靠性,先在CCS上進行算法的調試驗證,采集從PC播放的音樂數據,隨機保存200個連續數據,如圖4(a)所示,對其進行混沌加密,加密結果如圖4(b)所示,此次加密中使用的混沌根密鑰,也即Henon映射的初值為0。將加密密文和根密鑰通過以太網發送到接收板,接收板根據根密鑰計算出解密密鑰并對數據密文進行解密,解密后結果如圖4(c)所示,解密結果與其明文完全一致。若在解密過程中使用的根密鑰與加密根密鑰不一致,解密結果則與原明文相差甚遠,如圖4(d)所示。

圖4(a) 原始語音信號

圖4(b) 加密語音信號

圖4(c) 解密語音信號 圖4(d) 錯誤解密語音信號
從以上結果可知,本文給出的基于混沌密鑰的IDEA加解密方法適合網絡語音加、解密,加密后的語音數據量不變,但數據本身變化很大,對語音網絡傳輸不會造成帶寬上的壓力,同時也證明了本文給出的基于混沌密鑰的語音加、解密算法對密鑰的敏感性和有效性。
本文設計實現的語音混沌加、解密系統實物圖如圖5所示。圖中左邊的DSP板卡是加密端,右邊的板卡是解密端,從PC機播放的wav格式的語音通過線輸入傳送到DSP板卡進行加密處理后,加密后的數據包經過以太網傳送到另一端,另一端對語音包和根密鑰包進行解密,由線輸出連接到音響。

圖5 混沌語音加解密系統實物圖
本文中將混沌密鑰和IDEA加密算法相結合進行語音加、解密處理以提供網絡語音的安全性,混沌密鑰的生成采用了Henon映射和改進的Logistic映射兩種混沌映射級聯迭代,將迭代結果經過非線性替換形成IDEA加密密鑰,采用IDEA加密算法對語音信號進行了加解密。經多次加、解密測試表明,本文中設計實現的混沌加密系統能夠滿足語音傳輸的實時性要求,使得該系統具有一定的民用價值和軍用價值,尤其在物聯網、海上捕魚漁船之間的通信、多媒體通信等方面有著廣泛的應用。但在語音傳輸的過程中,語音會出現丟包現象,說明該系統還有待進一步優化,才能達到更好的加密效果。
[1] 陸 洋,張 超,陸建華,等. IEEE802.11無線局域網接入環境下語音傳輸容量[J]. 清華大學學報(自然科學版), 2008, 48(1): 39-42.
LU Yang, ZHANG Chao, LU Jian-hua,etal. Voice transmission capacity under the IEEE802.11 wireless LAN access environments[J]. Journal of Tsinghua University (Natural Science), 2008, 48(1): 39-42.
[2] 楊義先,鈕心忻. 應用密碼學[M]. 北京:北京郵電大學出版社, 2005: 295-360.
[3] 尹汝明,袁 堅,山秀明,等. 混沌密碼系統弱密鑰隨機性分析[J]. 中國科學:信息科學, 2011, 41(7): 777-788.
YIN Ru-ming, YUAN Jian, SHAN Xiu-ming,etal. Weak key randomness analysis of chaotic cryptosystems[J]. Science China: Information Sciences, 2011, 41(7): 777-788.
[4] 陳鐵明,蔣融融. 混沌映射和神經網絡互擾的新型復合流密碼[J]. 物理學報,2013, 62(4): 1-7.
CHEN Tie-ming, JIANG Rong-rong. A new composite stream cipher of chaotic mapping and neural network mutual interference[J]. Acta Physica Sinica, 2013, 62(4): 1-7.
[5] 樊 雷,茅耀斌,孫金生,等.一種結合貓映射與Logistic映射的語音加密算法[J].控制與決策, 2004, 19(10): 1167-1170.
FAN Lei, MAO Yao-bing, SUN Jin-sheng,etal. A voice encryption algorithm combination of cat map and Logistic map[J]. Control and Decision, 2004, 19(10): 1167-1170.
[6] WANG Xing-yuan, TENG Lin. An image blocks encryption algorithm based on spatiotemporal chaos[J].Nonlinear Dynamics, 2012, 67(1): 365-371.
[7] E.Mosa, N.W.Messiha, O.Zahran. Encryption of speech signal with multiple secret keys in time and transform domains[J]. International Journal of Speech Technology, 2010, 13(4): 231-242.
[8] Long Jye Sheu. A speech encryption using fractional chaotic systems[J]. Nonlinear Dynamics, 2011, 65(1/2): 103-108.
[9] E.Mosa, Nagy W. Messiha, Osama Zahran. Chaotic encryption of speech signals[J]. International Journal of Speech Technology, 2011, 14(4): 285-296.
[10] 田麗平. 基于混沌映射的真彩數字圖像安全通信[J].實驗室研究與探索, 2006, 25(9): 1093-1095.
TIAN Li-ping. True color digital images for secure communication based on chaotic map[J]. Research and Exploration in Laboratory, 2006, 25(9): 1093-1095.
[11] Mirzaei, Yaghoobi, Irani. A new image encryption method: Parallel sub-image encryption with hyper chaos[J]. Nonlinear Dynamics, 2012, 67(1): 557-566.
[12] 汪永愛,王文海. 基于DSP嵌入式混沌密碼話音通信系統的設計[J]. 實驗室研究與探索,2007,26(12):64-66.
WANG Yong-ai, WANG Ji-hai. The design of voice communication system based on DSP embedded chaos password[J]. Research and Exploration in Laboratory, 2007, 26(12): 64-66.
[13] LAI Xue-jia, James L. Massey. A Proposal for a New Block Encryption Standard[J]. Proceedings of Advances in Cryptology, 1991, 389-404.
[14] Alex Biryukov, Jorge Nakahara Jr, Bart Preneel,etal. New Weak-Key Classes of IDEA. F. Bao, R. H. Deng, S. Qing. Lecture Notes in Computer Science[C]. Springer-Verlag, 2002: 315-326.
[15] 萬佑紅,李俊剛. 一種基于Logistic的改進混沌映射及其性能分析[J]. 信息與控制, 2012, 41(6): 675-680.
WAN You-hong, LI Jun-gang. The improvement and performance analysis of chaotic based on Logistic map[J]. Information and Control, 2012, 41(6): 675-680.