论文部分内容阅读
USB存储介质以其方便快捷、大容量、便于携带等特点得到广泛使用,这也导致客观上存在USB 存储介质中数据丢失泄露的风险。信息加密技术是应对这种风险的最基本、最核心的技术措施和理论基础。
对数据可以进行软件加密也可以进行硬件加密,硬件加密因其高可靠性和高速性越来越得到重视。用FPGA器件进行硬件加密具有全硬件电路、可自行更新密码算法模块的优点,本系统硬件以Altera公司的CyclonII系列芯片EP2C8Q208C8为核心,分别通过CY7C68013与上位机、CH376与USB存储介质通信。
本系统的目的是用FPGA实现AES算法从而对数据进行有效加密。AES即高级数据加密标准,是事实上的国际标准,并且AES算法全免费公开,基于该算法的密码产品已得到广泛应用,因此对它的研究具有很强的现实意义。AES算法主要包括三个方面:轮变化、圈数和密钥扩展。本系统选择算法输入为128bit,密钥长度128bit。
用Nr表示对一个数据分组加密的轮数,每轮都需要一个与输入分组具有相同长度的扩展密钥。通常来说外部输入的加密密钥K 长度都是有限的,所以需要在算法中引入一个密钥扩展模块,原始密钥扩展经过密钥扩展得到更长的比特串,获得算法中各轮的所需的加密/解密密钥,本文对加解密模块中的控制部分和密钥扩展部分做了比较详细的说明。
本文讨论了AES算法的基本原理、算法结构和工作流程;设计了系统工作平台,它由硬件层、固件层、软件层三部分共同构成,给出了其硬件、软件开发环境;系统采用模块化设计思想,论文详细论述了各功能模块的设计和实现,主要分成Verilog语言描述的AES 加解密模块、CY7C68013通信模块和CH376 读写U 盘模块,分别给出了硬件电路、软件说明以及相应测试或仿真结果。