当前位置:问答库>论文摘要

题目:AES(高级加密算法)的FPGA设计实现

关键词:AES;硬件加密;FPGA

  摘要

随着密码分析水平、芯片处理能力和计算技术的不断进步,数据加密标准(DES,Data Encryption Standard)的安全强度已经难以适应新的安全需要,其实现速度、代码大小和跨平台性均难以继续满足应用需求。因此,美国国家标准与技术研究所(NIST,National Institute of Standards and Technoligy)开始筹划高级数据加密标准(AES)算法,旨在取代DES,作为保护21世纪敏感政府信息的新型加密标准。Rijndael算法以其简洁、高效、安全和原则性的设计被接纳为AES,并于2001年11月26号正式公布在联邦信息处理标准(FIPS,Federal Information Processing Standards)出版的FIPS-PUB 197中。作为DES的继承者,AES自从被接纳为标准之日起就已经被工业界、银行业和行政部门作为事实上的密码标准。随着网络传输速度提升为gigabits数量级时,对算法的执行速度的要求也越来越高,基于软件的密码算法便显得性能不足,需要采用硬件加密的方式。硬件加密采用一些特殊的优化技术(如流水线和查找表等),可极大的提高数据的流量并减少密钥的生成时间。另外,采用硬件实现加密算法及与之相关的密钥生成过程,并且封装到芯片中,因为它们不易被外部攻击者读取或更改,会有较高的物理安全性。因此,基于硬件的密码算法就受到业界的普遍关注。以现场可编程门阵列(FPGA,Field Programmable Gate Array)为代表的可重构硬件以其自身所固有的特点——既具有硬件的安全性和高速性又有软件的灵活性和易维护性,已经成为分组密码算法硬件实现的热点研究方向。本次论文介绍了通过FPGA对AES算法的实现。通过结合FPGA器件自身的特点,采用时分复用、查找表以及Retiming等技术手段对AES算法进行优化,完成了该算法的片上实现。最后通过功能验证和片上验证手段验证了算法实现的有效性,完成了该算法基于FPGA的设计实现。