当前位置:首页 > 电源 > 数字电源
[导读] 摘 要: 采用DSP处理器TMS320C6416T,基于AES分组密码算法和SPI总线实现IP视频电话加密通信。设计了系统硬件结构,选择了合理的加密算法和加密方式,提出了高效的通信机制和数据格式,分析了软硬件设计关键环节。 

 摘  要: 采用DSP处理器TMS320C6416T,基于AES分组密码算法和SPI总线实现IP视频电话加密通信。设计了系统硬件结构,选择了合理的加密算法和加密方式,提出了高效的通信机制和数据格式,分析了软硬件设计关键环节。

  当前,IP网络百兆甚至千兆的速率已经成为可能,带宽的提升为、在IP网络上传输语音、视频提供了有力的前提条件。IP视频电话越来越多地得到广泛应用并将引领现代通信的潮流。但由于IP网络的开放性,敏感信息可能被轻易地窃取、篡改、非法复制和传播,因此对IP视频通信的保密性和可靠性提出了更高的要求。为了确保IP视频电话端到端的通信安全,必须对SIP信令和RTP音视频数据进行加密处理。

  全球最大IP电话提供商Skype在其软件中内嵌了加密系统,安全专家Phil Zimmermann提出了ZRTP密钥协商协议并开发了IP电话安全软件Zfone,这些均采用软件方式实现加密,当处理器性能较低时,这种方式必然会影响到通话质量。为此本文设计了一种适合于IP视频电话的高速硬件加密引擎。

  IP视频电话通信具有以下特点:

  (1) 占用带宽大。目前常用音频算法编码速率约为10 Kb/s,视频算法编码速率约为1 Mb/s(视不同图像质量和算法而有不同)。

  (2)实时性要求高。人的听觉对时延超过400 ms的语音信号比较敏感。

  (3) SIP信令和RTP音视频数据采用UDP方式传输,UDP协议是面向非连接的协议,数据包在网络繁忙的情况下可能被丢弃。

  针对这些特点,设计加密引擎协助IP视频电话终端完成各类数据加密功能,密钥协商和密钥管理由IP视频电话终端处理,两者之间通过SPI总线通信。

  1 硬件设计

  1.1 处理器选择

  针对IP视频电话通信的特点处理器可以选择专用密码算法芯片,但在使用上缺乏灵活性,如果需要更改密码算法或者相关参数,需重新设计,因此本系统选用TI公司的DSP处理器TMS320C6416T。TMS320C6416T是基于VelociTI.2TM构架的32位定点高性能DSP处理器,主频高达1GHz,处理能力可达8 000 MIPS[1]。它采用超长指令字结构(VLIW),每个时钟周期可以执行8条指令。TMS320C6416T内部集成大容量存储器,采用两级缓存结构,即一级缓存(L1)和二级缓存(L2)。

  TMS320C6416T强大的计算、数据存储能力大大缩短了实现各种算法的时间,迎合了IP视频电话通信的实时性要求。它既可用于IP视频电话终端加密,也可扩展用于其他大流量数据加密(如流媒体服务器)。在处理更改加密算法、系统参数和通信接口方面,相对于专用处理器,DSP更具灵活性和可扩展性。

  1.2 硬件结构及注意事项

  加密引擎以TMS320C6416T为核心,包括SDRAM、Flash、电源、JTAG接口、看门狗等。加密引擎和IP视频电话终端通过SPI总线通信,硬件总体结构如图1所示。


  DSP作为系统的核心,在完成数据加解密运算的同时,还要与IP视频电话终端实时通信,交互SIP信令、音视频数据、种子密钥及控制命令等。

  SDRAM采用HY57V283220T(4 M×32 bit),工作时钟为133 MHz,用于数据存储。Flash采用39VF800A(8 M×16 bit),存取速度为70 ns,100 000次可擦写,用于程序存储和DSP上电自举。电源为整个系统供电,看门狗用于监视系统的正常运行,JTAG接口用于DSP仿真调试。

  IP视频电话终端除了向加密引擎发送待处理数据和命令外,还需具备密钥协商和管理、用户权限控制、网络传输等多种功能。在设计过程中,应重点注意以下问题:

  (1) DSP、SDRAM等芯片的功耗较大,需根据具体功耗参数设置合理的电源和地线的布线宽度,注意电路板在物理空间的散热问题;考虑DSP为BGA封装,PCB应采用多层板设计(8层或更多层),设置单独的电源层和地层,以提高系统的可靠性。

  (2) DSP工作在1 GHz主频下、SDRAM工作在133 MHz时钟频率下,布局布线时要充分考虑信号的完整性。在实际设计中采用合适的总线拓扑结构、合理的叠层结构,对高速数字信号线在仿真的基础上加入适当的端接消除信号反射,以解决高速信号完整性问题。

  2 软件设计

  2.1 算法选择及加密方式

  2.1.1 AES算法和工作模式

  IP视频电话数据流量大,SIP信令和音视频数据采用UDP方式传输,不可避免地存在数据丢包问题,因而使用分组密码算法较为合适。考虑密码算法的速度和安全性等因素,本系统采用AES分组密码算法实现各种数据端到端加密。

  AES算法作为迭代分组密码算法其分组长度和密钥长度均可改变,在使用上更加灵活安全。论证表明,它能够抵抗所有目前技术水平下的已知和潜在的密码攻击,是更加安全可靠的加密算法。AES使用长为32×Nk(Nk=4、6、8)的比特流作为密钥,每次对长为32×Nb(Nb=4、6、8)比特的明文组进行加密,得到的密文组长为32×Nb比特,迭代轮数Nr=Max(Nb,Nk)+6。[!--empirenews.page--]

  AES算法有5种基本工作模式:ECB、CBC、OFB、CFB、CTR。考虑到IP数据包丢失问题,如采用反馈模式需考虑数据同步问题,因而降低了数据处理效率。而ECB模式简单易操作,不存在数据丢失产生的通信同步问题SIP信令中的会话描述符SDP和音视频数据都没有固定的格式,攻击者也难以通过统计特性分析密文,因而采用ECB模式是安全易行的。

  2.1.2 数据加密方式

  在IP网络中,视频和音频数据是分类打包、分段传输的,因而对它们的加密处理也需单独进行。目前针对视频数据主要有选择性加密和完全加密2种方式[4]。选择性加密利用视频数据的数据结构,对视频流中的部分数据(如I帧)加密,这有利于减小系统开销,但安全性较差。而完全加密不考虑视频数据结构,加密所有视频码流,虽然系统开销较大,但安全性较高。本系统对视频、音频数据、SIP信令均采用完全加密方式。

  2.2 通信机制和数据格式

  2.2.1 通信机制

  DSP和IP视频电话终端通过SPI总线通信,SPI作为一种串行同步通信方式,通信速率可达到4 Mb/s或者更高,适合音视频数据传输。在本系统中,将DSP的多通道缓冲串行口McBSP[2]配置为SPI模式,IP视频电话终端配置为主设备,DSP配置为从设备。

  采用中断方式接收或发送数据会增加CPU的负担。将增强型存储器直接访问EDMA[3]与McBSP结合使用,使得CPU加解密数据与EDMA数据接收或发送并行进行,将大大提高DSP的运行效率。具体流程为:(1)DSP通过McBSP接收待处理数据,将数据保存在指定映射的存储器中,随后EDMA通道搬运数据至片内L2缓存以供CPU提取并处理;(2)CPU加解密处理完成后,通过相反的路径发送给IP视频电话终端。为确保CPU数据处理和EDMA数据传输同步,在L2缓存开辟一对乒乓缓存(Ping-Pong Buffer),分别用于接收和发送数据。

  2.2.2 数据格式

  为了便于处理器之间的数据交互,定义通信数据格式如下:

  数据头标志:长度为2 B,表示一个数据包的起始。

  数据类型:长度为2 B,定义0x0001为IP视频电话终端发送的待加密数据,0x0010表示IP视频电话终端发送的待解密数据,0x0100表示DSP回送给IP视频电话终端的已加密数据,0x1000表示DSP回送给IP视频电话终端的已解密数据,0x0101表示IP视频电话终端发送的种子密钥,0x1010表示其他控制数据。

  数据长度:长度为2 B,表示待处理数据的有效字节数。以太网帧的最大长度是1 500 B,因此不能超过这个长度。

  数据头校验和:长度为2 B,防止头部因传输错误而执行误操作。

  RTP数据载荷:小于1 500 B,表示加/解密数据、种子密钥、控制数据等。

  2.3 软件设计要点

  根据DSP系统架构,考虑AES算法和通信数据的特点,充分发挥DSP的数据处理能力是软件设计的重点。

  2.3.1 AES算法优化设计

  AES的轮函数由字节变换、行位移、列混合、密钥加4个部件组成[5]。(1)字节变换是非线性变换,独立地对状态的每个字节进行变换,可用代换表(S盒)的方式实现;(2)行移位是将状态阵列的各行进行循环移位;(3)列混合使用有限域上的矩阵乘法,可以用查表操作实现;(4)密钥加可以通过执行一个32位“异或”运算来实现。通过算法优化,可将有限域矩阵乘法和S盒简化为查表和“异或”两种基本运算,并充分利用DSP处理器32位总线结构特点,大大降低了算法复杂度。

  2.3.2 使用软件流水技术

  AES是迭代分组密码,共Nr轮迭代,一般采用C循环程序实现,循环是影响系统实时性的一个重要因素。软件流水技术用于设置循环内指令的运行方式,使循环的多次迭代能够并行执行。程序应该考虑合理的循环迭代次数,以保证软件流水能够顺利进行。将循环展开可以增加及并行执行指令数,从而改进流水编排,提升循环性能。同时应该正确使用pragma指示和-ms、-mh等编译选项。

  2.3.3 合理设置CCS编译器选项

  使用const关键字定义变量可提高代码性能和稳定性;联合使用-pm与-o3选项可进行程序级优化并有效地消除相关性;-mt选项有利于消除存储器相关性;这些选项都能大大提升代码的执行速度[6]。测试表明,选择C代码优化选项,可使AES算法的执行速度提高近一倍。

  系统关键代码如下:

  void main()

  {                                       //初始化CSL

  CSL_init();

  //SPI配置

  McBSP_config(&McBSPConfig);

  //乒乓方式EDMA配置

  EDMA_config(hEDMAPing, &EDMAConfigRcv);

  EDMA_config(hEDMAPong, &EDMAConfigSnd);

  //密钥扩展[!--empirenews.page--]

  KeyExpansion(CipherKey,ExpandedKey);

  while(1)

  {                //EDMA传输完成后对数据加解密密处理

  if(EDMAFlag)

  DataProcessing();

  }

  }

  3 测试结果

  3.1 加密速率

  表1是CCS软件Profile对各函数指令开销的*估结果。


  在该测试中,取Nb=Nk=4,Nr=10。经过DataProcessing运算加密1 536字节数据,总指令开销128600。取DSP速率8 000 MIPS,则运行时间为128 600/8 000=16.075 μs,加密运算速率为1 536×8/16.075=765.41 Mb/s。该数据吞吐量完全满足了IP视频电话的实时性要求。

  3.2 效率对比

  参考文献[5]在TMS320C54x DSP上实现了AES算法,表2给出两种实现方式的对比。


  两种处理器的架构和处理速度是不同的,在软件设计上会有不同的处理方法,若仅考虑DSP速率对算法速率的影响,本系统加密效率更高。另外,本测试仅考虑了AES加密算法代码的指令开销,实际中还要考虑DSP存取数据、中断处理等其他任务。

  系统首次采用DSP TMS320C6416T处理器,合理的硬件设计确保了系统的可靠性,EDMA与McBSP相结合的通信机制提高了通信效率,优化的软件设计提升了加解密速率。本系统已成功应用于IP视频电话保密通信,经扩展设计,也可以应用于多媒体服务器,实现多通道数据加密。本方案对VOIP、视频监控、视频会议等领域具有很高的参考价值。

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭