DES加密算法在 FPGA上的实现
加密作为信息安全领域的一个重要部分也越来越受到重视。DES加密技术具有算法公开,加密强度大,运算速度快等特点,在国内网关服务器、机顶盒、视频传输等数据传输业务都有广泛的应用。相对于ASIC实现方案而言,采用FPGA实现DES加密算法具有开发周期短、开发成本低,、随时变更密钥等优点。在方案设计中,我们根据FPGA特点,对系统设计进行了优化,在低成本FPGA中成功实现快速DES加密算法,其加密速率达200多Mbit/s。
系统设计方案
基于FPGA解决行业难题加上V好 | xinpianxiehui
系统的实现以在合理的资源下实现尽可能高的性能为目标。 DES加密算法以多轮的密钥变换轮函数和密钥+数据运算轮函数为特征,与之相对应的硬件实现,既可以通过轮函数的16份硬件拷贝,达到深度细化的流水线处理,实现性能上的最优,也可以通过分时复用,重复调用一份轮函数的硬件拷贝,以时间换空间,从而得到硬件资源占用上的最小化。
基于性能和资源占用的综合考虑,我们通过在轮函数内部设置3级流水线,提高整体处理的速度性能;将数据+密钥轮函数和密钥变换函数在硬件上单独实现,减少了相邻流水线级间的逻辑复杂度。
我们最终采取的整体方案可以用下图简要表示:
通过设置轮计数器对所进行的轮运算进行计数,控制数据和密钥两个数据选择器选择进入轮函数运算的是加密中间数据还是原始输入数据,以达到复用轮函数的目的。
基于FPGA解决行业难题加上V好 | xinpianxiehui
1、开发周期短、开发成本低,、可随时变更密钥;
2、以DES加密算法为核心,在FPGA上成功实现了DES加密的功能,并且加密处理速度达288.44Mbit/s,安全可控性更高;
3、通过仿真以及实际的测试证明该系统快速而可靠;
4、通过设计与以太网、WLAN等快速通信模块的接口,本DES加密设计可实际应用到信息安全领域。 |