论文部分内容阅读
AES是美国于2000年10月份确立的高级加密标准,该标准的反馈链路模式AES_CBC加密算法,用于在IPSec中替代DES_CBC和3DES_CBC。 加密是安全数据网络的关键,要保证在公众网上传输的信息不被窃取和偷听,必须对数据进行加密。在不影响网络性能的前提下,快速实现数据加密/解密,对于开发高性能的安全路由器、安全网关等对数据处理速度要求高的通信设备具有重要的意义。 在目前可查询的基于FPGA技术实现AES_CBC的设计中,最快的加/解密速度达到700Mbps/400MHZ。商用CPU奔腾4主频3.06,用汇编语言编写程序,全部资源用于加密解密,最快的加密解密速度可以达到1.4Gbps。但根据国外测试结果表明,即使开发的路由器本身就基于高性能的双64位MIPS网络处理器,软件加密解决方案仅能达到路由器所要求的最低吞吐速率600 Mbps。 本文首先研究分析了目前几种实现AES_CBC的方法有缺点的情况下,在深入研究影响硬件快速实现AES_CBC难点基础上,设计出一种适应于报文加密/解密的硬件快速实现AES_CBC的方案,在设计中采用加密解密和密钥展开并行工作,实现了在线提供子密钥。在解密中采用了双队列技术,实现了报文解密和子密钥展开协调工作,提高了解密速度。 本文在quartus全面仿真设计方案的基础上,全面验证了硬件实现AES_CBC方案的正确性,全面分析了本设计加密解密的性能。并且针对设计中的流水线效率低的问题,提出改善流水线性能的方案,设计出报文级并行加密解密方案,并且给出了硬件实现VPN的初步方案。实现了单一模块加密速度达到1.16Gbps,单一模块解密速度达到900Mbps,多个模块并行工作加密解密速度达到6.4Gbps。 论文最后给出了总结与展望。目前实现的AES_CBC算法,只能通过仿真验证其功能的正确性,还需要下载到芯片上做进一步的验证。要用硬件实现整个IPSec,还要进一步开发基于FPGA的技术。总之,为了适应路由器发展的需求,还有很多技术需要研究。