當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀] 摘 要: 采用DSP處理器TMS320C6416T,基于AES分組密碼算法和SPI總線實(shí)現(xiàn)IP視頻電話加密通信。設(shè)計(jì)了系統(tǒng)硬件結(jié)構(gòu),選擇了合理的加密算法和加密方式,提出了高效的通信機(jī)制和數(shù)據(jù)格式,分析了軟硬件設(shè)計(jì)關(guān)鍵環(huán)節(jié)?!?

 摘  要: 采用DSP處理器TMS320C6416T,基于AES分組密碼算法和SPI總線實(shí)現(xiàn)IP視頻電話加密通信。設(shè)計(jì)了系統(tǒng)硬件結(jié)構(gòu),選擇了合理的加密算法和加密方式,提出了高效的通信機(jī)制和數(shù)據(jù)格式,分析了軟硬件設(shè)計(jì)關(guān)鍵環(huán)節(jié)。

  當(dāng)前,IP網(wǎng)絡(luò)百兆甚至千兆的速率已經(jīng)成為可能,帶寬的提升為、在IP網(wǎng)絡(luò)上傳輸語音、視頻提供了有力的前提條件。IP視頻電話越來越多地得到廣泛應(yīng)用并將引領(lǐng)現(xiàn)代通信的潮流。但由于IP網(wǎng)絡(luò)的開放性,敏感信息可能被輕易地竊取、篡改、非法復(fù)制和傳播,因此對(duì)IP視頻通信的保密性和可靠性提出了更高的要求。為了確保IP視頻電話端到端的通信安全,必須對(duì)SIP信令和RTP音視頻數(shù)據(jù)進(jìn)行加密處理。

  全球最大IP電話提供商Skype在其軟件中內(nèi)嵌了加密系統(tǒng),安全專家Phil Zimmermann提出了ZRTP密鑰協(xié)商協(xié)議并開發(fā)了IP電話安全軟件Zfone,這些均采用軟件方式實(shí)現(xiàn)加密,當(dāng)處理器性能較低時(shí),這種方式必然會(huì)影響到通話質(zhì)量。為此本文設(shè)計(jì)了一種適合于IP視頻電話的高速硬件加密引擎。

  IP視頻電話通信具有以下特點(diǎn):

  (1) 占用帶寬大。目前常用音頻算法編碼速率約為10 Kb/s,視頻算法編碼速率約為1 Mb/s(視不同圖像質(zhì)量和算法而有不同)。

  (2)實(shí)時(shí)性要求高。人的聽覺對(duì)時(shí)延超過400 ms的語音信號(hào)比較敏感。

  (3) SIP信令和RTP音視頻數(shù)據(jù)采用UDP方式傳輸,UDP協(xié)議是面向非連接的協(xié)議,數(shù)據(jù)包在網(wǎng)絡(luò)繁忙的情況下可能被丟棄。

  針對(duì)這些特點(diǎn),設(shè)計(jì)加密引擎協(xié)助IP視頻電話終端完成各類數(shù)據(jù)加密功能,密鑰協(xié)商和密鑰管理由IP視頻電話終端處理,兩者之間通過SPI總線通信。

  1 硬件設(shè)計(jì)

  1.1 處理器選擇

  針對(duì)IP視頻電話通信的特點(diǎn)處理器可以選擇專用密碼算法芯片,但在使用上缺乏靈活性,如果需要更改密碼算法或者相關(guān)參數(shù),需重新設(shè)計(jì),因此本系統(tǒng)選用TI公司的DSP處理器TMS320C6416T。TMS320C6416T是基于VelociTI.2TM構(gòu)架的32位定點(diǎn)高性能DSP處理器,主頻高達(dá)1GHz,處理能力可達(dá)8 000 MIPS[1]。它采用超長(zhǎng)指令字結(jié)構(gòu)(VLIW),每個(gè)時(shí)鐘周期可以執(zhí)行8條指令。TMS320C6416T內(nèi)部集成大容量存儲(chǔ)器,采用兩級(jí)緩存結(jié)構(gòu),即一級(jí)緩存(L1)和二級(jí)緩存(L2)。

  TMS320C6416T強(qiáng)大的計(jì)算、數(shù)據(jù)存儲(chǔ)能力大大縮短了實(shí)現(xiàn)各種算法的時(shí)間,迎合了IP視頻電話通信的實(shí)時(shí)性要求。它既可用于IP視頻電話終端加密,也可擴(kuò)展用于其他大流量數(shù)據(jù)加密(如流媒體服務(wù)器)。在處理更改加密算法、系統(tǒng)參數(shù)和通信接口方面,相對(duì)于專用處理器,DSP更具靈活性和可擴(kuò)展性。

  1.2 硬件結(jié)構(gòu)及注意事項(xiàng)

  加密引擎以TMS320C6416T為核心,包括SDRAM、Flash、電源、JTAG接口、看門狗等。加密引擎和IP視頻電話終端通過SPI總線通信,硬件總體結(jié)構(gòu)如圖1所示。


  DSP作為系統(tǒng)的核心,在完成數(shù)據(jù)加解密運(yùn)算的同時(shí),還要與IP視頻電話終端實(shí)時(shí)通信,交互SIP信令、音視頻數(shù)據(jù)、種子密鑰及控制命令等。

  SDRAM采用HY57V283220T(4 M×32 bit),工作時(shí)鐘為133 MHz,用于數(shù)據(jù)存儲(chǔ)。Flash采用39VF800A(8 M×16 bit),存取速度為70 ns,100 000次可擦寫,用于程序存儲(chǔ)和DSP上電自舉。電源為整個(gè)系統(tǒng)供電,看門狗用于監(jiān)視系統(tǒng)的正常運(yùn)行,JTAG接口用于DSP仿真調(diào)試。

  IP視頻電話終端除了向加密引擎發(fā)送待處理數(shù)據(jù)和命令外,還需具備密鑰協(xié)商和管理、用戶權(quán)限控制、網(wǎng)絡(luò)傳輸?shù)榷喾N功能。在設(shè)計(jì)過程中,應(yīng)重點(diǎn)注意以下問題:

  (1) DSP、SDRAM等芯片的功耗較大,需根據(jù)具體功耗參數(shù)設(shè)置合理的電源和地線的布線寬度,注意電路板在物理空間的散熱問題;考慮DSP為BGA封裝,PCB應(yīng)采用多層板設(shè)計(jì)(8層或更多層),設(shè)置單獨(dú)的電源層和地層,以提高系統(tǒng)的可靠性。

  (2) DSP工作在1 GHz主頻下、SDRAM工作在133 MHz時(shí)鐘頻率下,布局布線時(shí)要充分考慮信號(hào)的完整性。在實(shí)際設(shè)計(jì)中采用合適的總線拓?fù)浣Y(jié)構(gòu)、合理的疊層結(jié)構(gòu),對(duì)高速數(shù)字信號(hào)線在仿真的基礎(chǔ)上加入適當(dāng)?shù)亩私酉盘?hào)反射,以解決高速信號(hào)完整性問題。

  2 軟件設(shè)計(jì)

  2.1 算法選擇及加密方式

  2.1.1 AES算法和工作模式

  IP視頻電話數(shù)據(jù)流量大,SIP信令和音視頻數(shù)據(jù)采用UDP方式傳輸,不可避免地存在數(shù)據(jù)丟包問題,因而使用分組密碼算法較為合適??紤]密碼算法的速度和安全性等因素,本系統(tǒng)采用AES分組密碼算法實(shí)現(xiàn)各種數(shù)據(jù)端到端加密。

  AES算法作為迭代分組密碼算法其分組長(zhǎng)度和密鑰長(zhǎng)度均可改變,在使用上更加靈活安全。論證表明,它能夠抵抗所有目前技術(shù)水平下的已知和潛在的密碼攻擊,是更加安全可靠的加密算法。AES使用長(zhǎng)為32×Nk(Nk=4、6、8)的比特流作為密鑰,每次對(duì)長(zhǎng)為32×Nb(Nb=4、6、8)比特的明文組進(jìn)行加密,得到的密文組長(zhǎng)為32×Nb比特,迭代輪數(shù)Nr=Max(Nb,Nk)+6。[!--empirenews.page--]

  AES算法有5種基本工作模式:ECB、CBC、OFB、CFB、CTR??紤]到IP數(shù)據(jù)包丟失問題,如采用反饋模式需考慮數(shù)據(jù)同步問題,因而降低了數(shù)據(jù)處理效率。而ECB模式簡(jiǎn)單易操作,不存在數(shù)據(jù)丟失產(chǎn)生的通信同步問題SIP信令中的會(huì)話描述符SDP和音視頻數(shù)據(jù)都沒有固定的格式,攻擊者也難以通過統(tǒng)計(jì)特性分析密文,因而采用ECB模式是安全易行的。

  2.1.2 數(shù)據(jù)加密方式

  在IP網(wǎng)絡(luò)中,視頻和音頻數(shù)據(jù)是分類打包、分段傳輸?shù)?,因而?duì)它們的加密處理也需單獨(dú)進(jìn)行。目前針對(duì)視頻數(shù)據(jù)主要有選擇性加密和完全加密2種方式[4]。選擇性加密利用視頻數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),對(duì)視頻流中的部分?jǐn)?shù)據(jù)(如I幀)加密,這有利于減小系統(tǒng)開銷,但安全性較差。而完全加密不考慮視頻數(shù)據(jù)結(jié)構(gòu),加密所有視頻碼流,雖然系統(tǒng)開銷較大,但安全性較高。本系統(tǒng)對(duì)視頻、音頻數(shù)據(jù)、SIP信令均采用完全加密方式。

  2.2 通信機(jī)制和數(shù)據(jù)格式

  2.2.1 通信機(jī)制

  DSP和IP視頻電話終端通過SPI總線通信,SPI作為一種串行同步通信方式,通信速率可達(dá)到4 Mb/s或者更高,適合音視頻數(shù)據(jù)傳輸。在本系統(tǒng)中,將DSP的多通道緩沖串行口McBSP[2]配置為SPI模式,IP視頻電話終端配置為主設(shè)備,DSP配置為從設(shè)備。

  采用中斷方式接收或發(fā)送數(shù)據(jù)會(huì)增加CPU的負(fù)擔(dān)。將增強(qiáng)型存儲(chǔ)器直接訪問EDMA[3]與McBSP結(jié)合使用,使得CPU加解密數(shù)據(jù)與EDMA數(shù)據(jù)接收或發(fā)送并行進(jìn)行,將大大提高DSP的運(yùn)行效率。具體流程為:(1)DSP通過McBSP接收待處理數(shù)據(jù),將數(shù)據(jù)保存在指定映射的存儲(chǔ)器中,隨后EDMA通道搬運(yùn)數(shù)據(jù)至片內(nèi)L2緩存以供CPU提取并處理;(2)CPU加解密處理完成后,通過相反的路徑發(fā)送給IP視頻電話終端。為確保CPU數(shù)據(jù)處理和EDMA數(shù)據(jù)傳輸同步,在L2緩存開辟一對(duì)乒乓緩存(Ping-Pong Buffer),分別用于接收和發(fā)送數(shù)據(jù)。

  2.2.2 數(shù)據(jù)格式

  為了便于處理器之間的數(shù)據(jù)交互,定義通信數(shù)據(jù)格式如下:

  數(shù)據(jù)頭標(biāo)志:長(zhǎng)度為2 B,表示一個(gè)數(shù)據(jù)包的起始。

  數(shù)據(jù)類型:長(zhǎng)度為2 B,定義0x0001為IP視頻電話終端發(fā)送的待加密數(shù)據(jù),0x0010表示IP視頻電話終端發(fā)送的待解密數(shù)據(jù),0x0100表示DSP回送給IP視頻電話終端的已加密數(shù)據(jù),0x1000表示DSP回送給IP視頻電話終端的已解密數(shù)據(jù),0x0101表示IP視頻電話終端發(fā)送的種子密鑰,0x1010表示其他控制數(shù)據(jù)。

  數(shù)據(jù)長(zhǎng)度:長(zhǎng)度為2 B,表示待處理數(shù)據(jù)的有效字節(jié)數(shù)。以太網(wǎng)幀的最大長(zhǎng)度是1 500 B,因此不能超過這個(gè)長(zhǎng)度。

  數(shù)據(jù)頭校驗(yàn)和:長(zhǎng)度為2 B,防止頭部因傳輸錯(cuò)誤而執(zhí)行誤操作。

  RTP數(shù)據(jù)載荷:小于1 500 B,表示加/解密數(shù)據(jù)、種子密鑰、控制數(shù)據(jù)等。

  2.3 軟件設(shè)計(jì)要點(diǎn)

  根據(jù)DSP系統(tǒng)架構(gòu),考慮AES算法和通信數(shù)據(jù)的特點(diǎn),充分發(fā)揮DSP的數(shù)據(jù)處理能力是軟件設(shè)計(jì)的重點(diǎn)。

  2.3.1 AES算法優(yōu)化設(shè)計(jì)

  AES的輪函數(shù)由字節(jié)變換、行位移、列混合、密鑰加4個(gè)部件組成[5]。(1)字節(jié)變換是非線性變換,獨(dú)立地對(duì)狀態(tài)的每個(gè)字節(jié)進(jìn)行變換,可用代換表(S盒)的方式實(shí)現(xiàn);(2)行移位是將狀態(tài)陣列的各行進(jìn)行循環(huán)移位;(3)列混合使用有限域上的矩陣乘法,可以用查表操作實(shí)現(xiàn);(4)密鑰加可以通過執(zhí)行一個(gè)32位“異或”運(yùn)算來實(shí)現(xiàn)。通過算法優(yōu)化,可將有限域矩陣乘法和S盒簡(jiǎn)化為查表和“異或”兩種基本運(yùn)算,并充分利用DSP處理器32位總線結(jié)構(gòu)特點(diǎn),大大降低了算法復(fù)雜度。

  2.3.2 使用軟件流水技術(shù)

  AES是迭代分組密碼,共Nr輪迭代,一般采用C循環(huán)程序?qū)崿F(xiàn),循環(huán)是影響系統(tǒng)實(shí)時(shí)性的一個(gè)重要因素。軟件流水技術(shù)用于設(shè)置循環(huán)內(nèi)指令的運(yùn)行方式,使循環(huán)的多次迭代能夠并行執(zhí)行。程序應(yīng)該考慮合理的循環(huán)迭代次數(shù),以保證軟件流水能夠順利進(jìn)行。將循環(huán)展開可以增加及并行執(zhí)行指令數(shù),從而改進(jìn)流水編排,提升循環(huán)性能。同時(shí)應(yīng)該正確使用pragma指示和-ms、-mh等編譯選項(xiàng)。

  2.3.3 合理設(shè)置CCS編譯器選項(xiàng)

  使用const關(guān)鍵字定義變量可提高代碼性能和穩(wěn)定性;聯(lián)合使用-pm與-o3選項(xiàng)可進(jìn)行程序級(jí)優(yōu)化并有效地消除相關(guān)性;-mt選項(xiàng)有利于消除存儲(chǔ)器相關(guān)性;這些選項(xiàng)都能大大提升代碼的執(zhí)行速度[6]。測(cè)試表明,選擇C代碼優(yōu)化選項(xiàng),可使AES算法的執(zhí)行速度提高近一倍。

  系統(tǒng)關(guān)鍵代碼如下:

  void main()

  {                                       //初始化CSL

  CSL_init();

  //SPI配置

  McBSP_config(&McBSPConfig);

  //乒乓方式EDMA配置

  EDMA_config(hEDMAPing, &EDMAConfigRcv);

  EDMA_config(hEDMAPong, &EDMAConfigSnd);

  //密鑰擴(kuò)展[!--empirenews.page--]

  KeyExpansion(CipherKey,ExpandedKey);

  while(1)

  {                //EDMA傳輸完成后對(duì)數(shù)據(jù)加解密密處理

  if(EDMAFlag)

  DataProcessing();

  }

  }

  3 測(cè)試結(jié)果

  3.1 加密速率

  表1是CCS軟件Profile對(duì)各函數(shù)指令開銷的*估結(jié)果。


  在該測(cè)試中,取Nb=Nk=4,Nr=10。經(jīng)過DataProcessing運(yùn)算加密1 536字節(jié)數(shù)據(jù),總指令開銷128600。取DSP速率8 000 MIPS,則運(yùn)行時(shí)間為128 600/8 000=16.075 μs,加密運(yùn)算速率為1 536×8/16.075=765.41 Mb/s。該數(shù)據(jù)吞吐量完全滿足了IP視頻電話的實(shí)時(shí)性要求。

  3.2 效率對(duì)比

  參考文獻(xiàn)[5]在TMS320C54x DSP上實(shí)現(xiàn)了AES算法,表2給出兩種實(shí)現(xiàn)方式的對(duì)比。


  兩種處理器的架構(gòu)和處理速度是不同的,在軟件設(shè)計(jì)上會(huì)有不同的處理方法,若僅考慮DSP速率對(duì)算法速率的影響,本系統(tǒng)加密效率更高。另外,本測(cè)試僅考慮了AES加密算法代碼的指令開銷,實(shí)際中還要考慮DSP存取數(shù)據(jù)、中斷處理等其他任務(wù)。

  系統(tǒng)首次采用DSP TMS320C6416T處理器,合理的硬件設(shè)計(jì)確保了系統(tǒng)的可靠性,EDMA與McBSP相結(jié)合的通信機(jī)制提高了通信效率,優(yōu)化的軟件設(shè)計(jì)提升了加解密速率。本系統(tǒng)已成功應(yīng)用于IP視頻電話保密通信,經(jīng)擴(kuò)展設(shè)計(jì),也可以應(yīng)用于多媒體服務(wù)器,實(shí)現(xiàn)多通道數(shù)據(jù)加密。本方案對(duì)VOIP、視頻監(jiān)控、視頻會(huì)議等領(lǐng)域具有很高的參考價(jià)值。

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉