关键词:
AES
S盒
密钥扩展
资源共享
FPGA
摘要:
随着数字化信息时代的到来,万物互联,我们在享受网络科技给我们生活带来诸多便利的同时也时刻伴随着信息泄露、篡改和窃取的问题,信息安全问题显得尤为重要,尤其随着网络通信技术的发展,传输数据信息量的不断增大,为了使得数据加密算法更好的应用于生物识别、金融和无线局域网通信等领域,对加解密数据吞吐量要求一般在Gbit/s数量级,而高级加密标准(Advanced Encryption Standard,AES)密码技术因其硬件结构实现较为简单,数据加密速度较快,对多种攻击方式又有较强的抵抗能力,在国内外众多领域得到广泛的应用和研究。首先,经过对AES算法的深入研究后,用FPGA设计方法实现了AES算法的硬件系统,然后在算法安全性上研究了两种优化方法,方法一是针对传统S盒的仿射变换周期小和迭代输出周期存在短周期问题,采用新的仿射变换对(1C,DA)重新构造S盒,改善了S盒的代数性质,提高了S盒的抗攻击能力,方法二是针对传统密钥扩展算法存在的安全隐患和破解难度低的缺点,通过改进算法的运算结构,降低轮密钥之间的相关性,从而提高了AES算法中密钥的安全性。最后,对AES算法硬件系统结构进行优化,使用有限状态机(Finite State Machine,FSM)设计方法,去控制各个子模块资源共享的端口连接,大大减少了逻辑资源消耗。利用Quartus II和Modelsim等软件工具完成电路综合与功能仿真,将优化前后各指标数据进行对比分析。实验结果表明,优化前总逻辑资源消耗为10033个逻辑单元(Logic Element,LE),系统最高工作频率为105.33 MHz,硬件系统数据吞吐量为13.48 Gbit/s,优化后硬件系统总逻辑资源消耗数量为6422个LE,相比优化前减少36%,系统最高工作频率略有降低,为81.81 MHz,系统数据吞吐量为10.47 Gbit/s,但是总体速度面积比是提高的,优化后AES算法硬件系统从安全性、逻辑资源消耗和速度面积比来说,都要明显优于优化之前,设计基本达到预期。