论文部分内容阅读
网络化和信息化的深入发展使得信息安全问题愈加突出。加密算法为信息安全问题的解决提供了关键理论与技术,是密码学的重点研究课题。高级加密标准(Advanced Encryption Standard, AES)算法现已取代数据加密标准(Data Encryption Standard, DES)算法,成为了新一代的加密标准算法。它具有抗攻击能力强、易于软硬件实现、加解密速度快和可移植性强等优点,已被应用到信息安全的各个领域。 本研究阐述了AES算法的原理、结构和各模块变换过程。针对现有AES算法进行分析,我们对算法中的变换进行了优化:改变S-box逆变换与仿射变换的顺序并选出最优的仿射变换对,改善了S-box的仿射变换周期和输出迭代周期等密码学性质;针对行移位变换采取字节移位操作使得算法易受Square攻击且使得轮函数扩散性小的缺点,结合FPGA平台的特性提出了一种比特级的扩散层变换,显著改善了轮函数的扩散性;改变列混合变换系数矩阵,选取一个逆变换与其自身相等的系数矩阵,加密和解密的列混合变换可用同一电路模块来实现,可以有效减小资源消耗、路径延时和流水线级数。理论分析与随机性测试表明优化方案提高了算法安全性。设计了一种采用内外混合流水线结构的AES硬件电路,可应用于对加解密速度要求高的各种应用场合。电路设计方面包括:运用基于正规基的复合域算法,使用组合逻辑电路实现了S-box与逆S-box,运用多因子CSE算法优化电路的面积与时延使其易于流水线划分;详细分析各模块的路径延时,对AES轮单元进行了6级流水线划分,显著提高了时钟频率和数据吞吐量;由于密钥不需要经常改变,采用了预先扩展生成子密钥并将其存储在寄存器组的策略,方便随时取用各轮子密钥;最后对密钥扩展模块进行了7级流水线划分以确保时钟频率不会降低,并采用迭代结构实现以减小资源消耗。采用Verilog进行代码设计,Modelsim仿真测试表明本设计实现了优化算法加解密功能。采用 Xilinx公司 ISE套件对电路进行综合编译,目标器件为Virtex-7XC450T,理论上时钟频率可达734.754MHz,数据吞吐量为94.048Gbps,资源消耗为23995LUTs。设计了一个上板验证,结果表明本设计能够正确实现加解密功能。