新闻中心

EEPW首页 > 消费电子 > 设计应用 > 基于TMS320C6416T的IP视频电话加密引擎

基于TMS320C6416T的IP视频电话加密引擎

作者:时间:2010-11-05来源:网络收藏

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

本文引用地址:http://www.eepw.com.cn/article/166354.htm

  当前,网络百兆甚至千兆的速率已经成为可能,带宽的提升为、在网络上传输语音、提供了有力的前提条件。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处理器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所示。

图3.jpg


  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。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭