《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于Nios II的語音加密傳輸系統設計
基于Nios II的語音加密傳輸系統設計
嚴迎建,任 方,付小兵,王志新
(信息工程大學 電子技術學院,河南 鄭州450004)
摘要: 設計并實現了一個基于Nios II的語音加密傳輸系統。介紹了進行語音信號處理的功能模塊,包括語音采集回放模塊、基于G.729A的語音壓縮與解壓縮模塊和基于AES的數據加解密模塊。在控制模塊的協調下,使得語音數據通過MODEM能夠在公共電話網中安全地傳輸,實現了語音的保密通信。
Abstract:
Key words :

摘  要: 設計并實現了一個基于Nios II語音加密傳輸系統。介紹了進行語音信號處理的功能模塊,包括語音采集回放模塊、基于G.729A的語音壓縮與解壓縮模塊和基于AES的數據加解密模塊。在控制模塊的協調下,使得語音數據通過MODEM能夠在公共電話網中安全地傳輸,實現了語音的保密通信。
關鍵詞: Nios II;語音加密;G.729A;AES

  由于缺乏保密措施,使得電話竊聽事件不斷發生,嚴重威脅著個人隱私、軍事商業秘密甚至地區或國家的信息安全。因此,以語音壓縮和數據加密為基礎的語音加密傳輸技術受到人們關注。G.729A是G.729(共軛結構代數碼本激勵線性預測編碼方案CS-ACELP)的簡化方案[1,2],降低了計算的復雜度以便于實時實現。美國國家標準和技術研究所(NIST)在眾多的分組密碼中經過三輪篩選,選中Rijndael算法[3,4]作為高級數據加密標準(AES)。
  本文基于G.729A和AES,結合Nios II[5]設計了一種語音加密傳輸系統,對通信內容進行加密,有效防止了因通話內容被竊聽而引起的泄密。
1 總體結構
  語音加密傳輸系統主要包括語音處理模塊、語音傳輸模塊、控制模塊及相應語音輸入輸出設備。其中語音模塊由語音采集回放模塊、語音編解碼模塊、加解密模塊三部分組成。系統總體設計如圖1所示,系統各部分功能如下。

   (1)語音采集回放模塊:此模塊實現語音的采集及回放,一方面,此模塊接收由麥克傳來的模擬語音,通過A/D轉換,生成數字語音;另一方面,此模塊接收來自語音編解碼器傳來的解壓過的語音數據,經過D/A轉換,將數字語音還原成模擬語音,經揚聲設備輸出。
  (2)語音編解碼模塊:對語音進行編解碼,就是通過對語音的壓縮與還原,能在較低速率下傳送優質的語音。語音編解碼器包括編碼器與譯碼器。編碼器對采集回放模塊傳來的原始數字語音信息進行處理,對數字語音信號進行分析,提取語音參數,將壓縮后的數據送到數據加密模塊。譯碼器的作用是接收來自數據加解密模塊的數據,經過對數據的解壓,把這些數據恢復成原始的數字語音信息,再傳送至語音采集回放模塊。
  (3)加解密模塊:語音加解密模塊是保證語音通信安全的核心。加解密模塊接收來自數字語音解壓縮器的數據,并對其進行加密,然后發送至通信傳輸模塊,將數據通過調制解調器傳送至公共電話網;同時,加解密模塊要接收來自通信模塊的數據,將其解密后傳送至數字語音解壓縮器,進行數據的解壓。
  (4)通信傳輸模塊:在控制模塊的控制下,當系統一方的控制模塊檢測到撥號信息或者接收到另一方請求時,與對方完成互聯;在雙方建立連接的基礎上,通信傳輸模塊將數據轉換為可以在公共電話網上傳輸的數據,進行加密語音數據的傳輸。
  (5)Nios II系統控制模塊:當通信一方發起或者接收到通信請求時,Nios II系統控制模塊控制整個系統的協調運行,使通信雙方能夠安全地通信。
2 系統設計
2.1 硬件功能模塊設計
  本設計以Nios II微處理器為核心,實現語音采集回放、數字語音編解碼和加解密等功能,通過調制解調器進行數據交換,實現了語音的加密傳輸。經過對設計的研究與分析,結合DE1開發板,將整個系統硬件劃分為語音處理模塊和語音傳輸模塊,系統總體硬件結構框圖如圖2所示。

2.1.1 語音采集回放模塊
  本模塊是語音加密通信的起點和終點,利用開發板上提供的24 bit CD-Quality Audio CODEC芯片完成系統的語音信號A/D、D/A轉換。CODEC芯片中封裝了WM8731編解碼器,其采樣率為8 kHz~96 kHz可變。它是一款低電壓并集成有耳機驅動的編解碼器,提供立體音和單一麥克風音頻輸入,并具有降低輸入噪聲、可編程音量控制以及適合于電氣型麥克風的輸出電壓可增益的特點。WM8731內部有11個寄存器,該芯片的初始化和內部功能設置是通過I2C控制模塊對其內部的這11個寄存器進行相應的配置實現的。本設計中WM8731工作于從模式,采樣頻率設為48 kHz,轉換的數據位長度為16 bit,WM8731的寄存器參數(十六進制)設置如表1。


  根據芯片寄存器的特點和功能,要進行I2C控制模塊的設計,并以IP核的形式通過SoPC Builder連接到系統的Avalon總線上。I2C控制模塊通過該模塊中I2C_SDAT數據端口,向目標寄存器寫入相應的控制信息,達到對WM8731工作狀態的配置。
2.1.2 G.729A語音編解碼模塊
  基于CELP編碼模型的G.729A處理語音幀,以每秒8 000樣點進行采樣,每10 ms對應80個樣點為1幀,語音質量與32 kb/s的ADPCM相當。
   (1)編碼器
  G.729A編碼器的工作原理如圖3所示。在預處理塊中,輸入的語音信號首先進行高通濾波并按比例放縮,對預處理后的語音每10 ms計算一次LP濾波器系數,把LP系數轉換成為線頻譜對系數LSP,并將LSP系數利用預測式兩級矢量量化(VQ)量化為18 bit。激勵信號用分析合成(ABS)搜索算法進行選擇,在該算法中,依據感覺加權失真測度使原始與重建語音信號間的誤差最小。

      具體上是重構語音與預處理后語音的誤差,通過自適應感覺加權濾波器,搜索最小的濾波后誤差,感覺加權濾波器的自適應系數由未量化的LP系數控制。G.729A的激勵參數(自適應和固定碼書)每5 ms(40個樣點)子幀確定一次。首先一個開環基音延遲每10 ms幀基于感覺加權語音信號估算一次,使LP殘差信號通過加權合成濾波器獲得目標信號。濾波器的初始狀態是通過對LP殘差信與激勵之間的誤差進行濾波來更新的。在得到加權合成濾波器的沖擊響應后,就可以利用沖擊響應和目標信號進行閉環基音分析(尋找自適應碼書的時延和增益)。在考慮自適應碼書的影響后更新目標信號,用于搜索固定碼書。自適應碼書和固定碼書搜索完成后用7 bit進行矢量量化。最后濾波器的記憶值由已確定的激勵信號來更新。
  (2)解碼器
  G.729A解碼器原理如圖4所示。首先,從接收到的比特流中提取參數標號,這些標號被譯碼以獲得對應一個10 ms語音幀的編碼參數。這些參數是LSP,2個分數基音延遲,2個固定碼書矢量,2組自適應碼書和固定碼書增益。LSP系數在每一子幀中進行插值并轉化為LP濾波器系數。然后,對每5 ms子幀進行如下操作: 將自適應碼書和固定碼書乘以各自增益后相加,獲得激勵;用LP合成濾波器對激勵濾波,獲得合成語音;合成語音通過一個包括長時和短時合成濾波器的自適應后濾波器進行增強,然后經高通濾波和定標去除得到最終的重建語音。

2.1.3 AES加解密模塊
        G.729A的語音編碼幀為80 bit/10 ms,根據對語音進行分幀編碼和傳輸的特點,在利用該聲碼器構造語音保密通信時選用分組密碼。本文采用高級加密標準AES完成數字語音信號的加解密,為了提高AES加解密速度,將AES加解密過程設計成Nios II的一條自定義指令。
  (1)AES算法及硬件實現
        AES加密模塊工作原理如下:在運算控制模塊(Control)控制下,待加密明文與初始圈密鑰進行異或(AddRoundKey),接著進行Nr次圈迭代變換,除最后一圈(第Nr圈)省略列混合變換處,每圈包含字節代替變換(ByteSub)、行移位變換(ShiftRow)、列混合變換(MixColumn)和圈密鑰加法(AddRoundKey)四步變換。
        解密工作過程與加密相類似,待脫密的密文與初始圈密鑰進行異或(AddRoundKey),然后進行Nr圈迭代運算,除最后一圈(第Nr圈)省略逆列混合變換外,每圈包含逆字節代替變換(InvByteSub)、逆行移位變換(InvShiftRow)、逆列混合變換(InvMixColumn)、圈密鑰加(AddRoundKey)四步變換。
       G.729A的語音編碼幀為80 bit/10 ms,每秒所需加密的數據約為8 Kbit,因此,在滿足語音加密的情況下,本文采用循環方式實現AES,節省硬件資源。其硬件加解密結構及其相關控制信號如圖5所示。

        (2)自定義指令邏輯
  Nios II自定制AES加密指令的內部硬件結構如圖6所示。從圖6可以看到用戶自定義邏輯功能(AES)連接到了ALU的2個輸入端以及ALU的輸出端,當使用Nios II的自定義指令時,Nios II內部的ALU操作將被放棄,以用戶自定義邏輯的輸出結果作為有效結果。

  AES加解密模塊設計得到的自定義邏輯在多個時鐘周期完成,采用多周期自定義指令結構。涉及的信號線在dataa、datab、result 的基礎上增加了clk、clk_en、reset、start 4個信號。其指令結構如圖7所示。

2.1.4 通信傳輸模塊
  通信傳輸模塊利用MODEM在公共電話網PSTN上實現通信。PSTN網絡覆蓋面廣,用戶通過MODEM就可以方便地完成對接,實現通信,這在現有條件下非常實用。
  MODEM通過RS232接口與DE1相連,通過RJ45與PSTN網絡相連,解析來自Nios II控制系統的命令,來實現通信雙方的互連通信。
  (1)工作原理
  通信發起方使用鍵盤撥對方號碼,Nios II控制系統采集到撥號信息,組裝成為MODEM撥號的AT命令[6],MODEM根據命令撥號;對方的MODEM接收到撥號信息,發出來電提醒,開啟語音處理功能,雙方便可通信。MODEM對經過加密的語音分組信息進行封裝,使其適合在PSTN網絡上傳輸。接收方MODEM接收到數據包,對其解封裝,等待解密處理。在本系統中,MODEM工作于半雙工方式。
  (2)MODEM與Nios II控制模塊的連接
  系統要正常工作,需要MODEM與Nios II控制系統間進行交互,用到的信號如圖8所示,各信號的功能如下:

  DSR:表示MODEM電源已接上,已處于可用的狀態。
  RTS:請求發送信號,串行通信接口用RTS來向MODEM表示發送數據的請求,該信號應控制MODEM進入發送狀態或打開MODEM的發送器。
  CTS:清除發送信號,又稱為允許發送,是MODEM對RTS的響應信號,表示MODEM已作好發送的準備,收到CTS后即可輸出發送的數據。
  DCD:數據載波檢測信號,向終端設備表示MODEM已收到通信鏈路上的數據載波信號,通知另一方準備接收。
  TXD:發送數據信號,把終端欲發送的數據串行送往MODEM。
  RXD:接收數據信號,接收從MODEM串行發來的數據。
  SG:信號地,連接設備和通信設備的信號地。
  由于使用了公共電話網(PSTN),因此在上述7個信號的基礎上增加了DTR和RI兩個信號。振鈴指示RI通知系統,MODEM已收到交換臺送來的振鈴呼叫信號;然后系統啟動數據準備好DTR信號送給MODEM作為對RI的響應。當RI和DTR信號握手聯絡上以后,MODEM才可以“接線”以建立通信鏈路;當數據傳送結束后,應復位這些信號以指示“拆線”,讓出通信鏈路。
2.2 Nios II控制模塊設計
  控制模塊利用Nios II IDE集成開發環境進行開發,控制從撥號(接聽)、語音采集、編解碼、加解密、傳輸、掛機的整個系統工作。
2.2.1 建立通信
  撥號用的鍵盤連接在DE1開發板的PS2口上,采用中斷方式與處理器進行交互。當控制模塊接收到鍵盤中斷后,讀取用戶按鍵信息。根據撥號信息,控制模塊通過RS232向MODEM發出相應含有撥號信息的AT命令,MODEM撥相應的號碼;接聽方MODEM發出振鈴指示后,根據命令為通話雙方建立連接。
2.2.2 語音處理控制
  Nios II控制模塊實現對語音處理的控制,其主要功能是讀取一個語音處理模塊的結果,并將其按將要進行的處理寫入下一個功能模塊。控制模塊操縱I2C控制語音采集回放模塊采集語音并數字化,然后將數字語音信號送到編解碼模塊進行編解碼,進而調用Nios II自定義的AES指令,對數據進行加密,最后通過MODEM發送數據。在接收方, MODEM讀取對方發送過來的語音數據,控制模塊調用Nios II自定義AES指令對數據進行解密,再將解密后的數據寫入語音編解碼模塊進行解碼,最后調用語音采集回放模塊還原語音。
2.2.3 通信結束控制
  在通話過程中,如果檢測到通信中斷或者通信一方結束通信的信息,則向各功能模塊發出復位信號,同時控制MODEM復位于待機狀態,通信結束。
  本設計適用于對語音保密通信有需求的政府機關、軍隊等,也適合需要保密的商業通信。采用本系統用戶可以像使用普通電話機一樣,實現語音保密通信。本設計系統使用方便,通過調制解調器進行連接,可以在現有的PSTN電話網上使用。如果將調制解調器改進為CDMA DTU等無線調制方式,則用戶還可以進行無線保密通信。
參考文獻
[1] ITU-T Rec.G.729(03/96) Coding of Speech at 8 kbit/s Using Conjugate-Structure Algebraic-Code-Excited Linear-Prediction[S].
[2] ITU-T Rec.G.729 Annex A(11/96) Reduced Complexity 8 kbit/s CS-ACELP Speech CODEC[S].
[3] FIPS-197.Advanced Encryption Standard(AES)[S].2001.
[4] DAEMEN J ,RIJMEN V.The design of rijndael:AES-the  advanced encryption stand[M].Berlin:Springer-Verlag,2002.
[5] 李蘭英.Nios II嵌入式軟核SOPC設計原理及應用[M].北京:北京航空航天大學出版社,2006.
[6] Gilbred Held.調制解調器參考大全[M].田學鋒,王剛譯. 北京:電子工業出版社,1996.
 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 美女一级牲交毛片视频 | 国产成人精品亚洲77美色 | 国产一区二区三区在线 | 2020最新国产精品视频 | 免费特级毛片 | 一级黄色大片 | 久久国产精品亚洲va麻豆 | 免费黄在线观看 | 国产精品亚洲欧美日韩一区在线 | 亚欧精品一区二区三区四区 | 最近韩国日本免费 | 最新国产成人综合在线观看 | 婷婷久久综合网 | 成人免费视频观看无遮挡 | 国产啪视频免费视频观看视频 | 120秒免费体验 | 欧美一级xxxx俄罗斯一级 | 黄色三级毛片网站 | 老湿影院免费在线观看 | 97免费公开视频 | 91成人免费观看在线观看 | 香蕉视频久久 | 日韩黄漫啪啪免费动漫 | 国产综合视频 | 麻豆日韩国产精品欧美在线 | 国产在线观看黄色 | 成人小视频在线播放 | 热re91久久精品国产91热 | 日本高清在线播放一区二区三区 | 免费在线你懂的 | 午夜激情影院 | 一级做性色a爰片久久毛片免费 | 各类毛片 | 曰批全过程免费视频免费看 | 欧美三级一区二区 | 琪琪午夜伦埋影院77 | 六月丁香激情综合成人 | 国产日韩不卡免费精品视频 | 日韩免费高清视频网站 | 国产成人精品999在线 | 天天天天色 |