基于Verilog的AES加密算法的实现毕业论文 联系客服

发布时间 : 星期六 文章基于Verilog的AES加密算法的实现毕业论文更新完毕开始阅读8096294ba66e58fafab069dc5022aaea998f4192

东南大学本科生毕业设计(论文)

基于VERILOG的AES加密算法的实现

摘要: 随着信息产业在我国国民经济中扮演越来越重要的角色,信息技术的发展和数据传输的安全性受到了有关部门的重视,加强网络信息安全的加密产品具有广泛的应用前景。此课题主要研究了基于VERILOG硬件描述语言的AES加密算法原理及优化,以及设计硬件实现。

本文先介绍了先进加密算法(AES)的原理,同时讲述了其与Rijndael设计的异同。安全,高效,易拓展优化,硬件实现简单是其的特点,同时,本文还研究了算法实现的关键技术。在设计过程中,完成了整体结构的规划和各部分的端口的定义,用VERILOG语言完成了电路的RTL级的描述,同时使用了Model公司的Modelsim仿真工具进行了软件平台 上的仿真,实现了128位比特密钥的加密解密的逻辑功能,硬件上使用了基于Xilinx公司的VIRTEX系列芯片,并用Synplify软件进行了FPGA综合,仿真基本达到了要求,这也证明了设计的正确性。在设计中尤其要提到的是本文采用了ECB(电子密码本)加密算法模式,采用流水线结构,提高了电路的工作频率和速度,本设计的创新点在于用语言实现S盒变换时,并没有采用传统的查表方式,而是直接采用了算法描述,相较之下,节省了电路的存储面积,实现了优化。

关键字: Verilog, AES,先进加密标准,Rijndael设计,FPGA,加密,高速,流水线结构

I

东南大学本科生毕业设计(论文)

The implement of AES encrypt arithmetic base on Verilog HDL

Abstract: With the information industry plays more important role in the country economy, the development of communication technique and security of data transfer is taken serious by some government department. The encrypt product which is used to strengthen net information security has extensive foreground. This subject mainly investigate AES encrypt arithmetic principium and its upgrade, then offer the design of hardware implement.

This subject introduce the principium of AES arithmetic first, at the same time, it gives the similarities and differences. The AES arithmetic contains following characteristic: security, high efficiency, easy optimized, easy progress of hardware implement. The subject introduces the pivotal technique of the implement and attentions at the same time. Within the process of designing, I complete the programming of whole configuration and the defining of port of each part, complete the RTL description of circuit with Verilog HDL. And I complete the emulation which is based on software with Modelsim which is the product of Model Co. It achieves the logic function of 128 bit key. I use the CMOS chip of Virtex series which comes from Xilinx Co., and carry through synthesis using the software of Synplify. The result of the synthesis is reach the request of design, it prove the correctness of the design. I should mention especially that I use the ECB encrypt arithmetic mode and pipelining configuration which advances work frequency and work speed. The innovative point lies to the mode of the implement of s-box transform. I don’t use the mode of looking through the table. It save the area of ROM and implement the upgrade.

Key words: Verilog, AES, advanced encrypt standard, Rijndael design, FPGA, encrypt, high speed, pipelining configuration.

目 录

摘要 ........................................................................ I 关键字 ...................................................................... I

II

东南大学本科生毕业设计(论文)

Abstract. .................................................................. II Key words .................................................................. II 第一章 绪论 ................................................................. 1

1.1密码学简介和我国信息安全现状 ......................................... 1 1.2 数据加密标准的发展过程 ............................................... 2

1.2.1数据加密标准DES ................................................ 2 1.2.2 高级加密标准AES ............................................... 2 1.3 AES的研究现状 ....................................................... 2

1.3.1 算法的研究现状 ................................................. 2 1.3.2 硬件实现的研究现状 ............................................. 3 1.4 本论文的意义......................................................... 4 1.5 内容和创新 .......................................................... 4 1.6 本章小结 ............................................................ 5 第二章 AES加密算法原理介绍和安全性能分析 .................................... 6

2.1 Rijndael和AES的区别 ................................................ 6 2.2 预备知识 ............................................................ 6

2.2.1 Rijdael的数学基础和设计思想 ................................... 6 2.2.2 字节运算(位运算) ............................................. 9 2.2.3 四字节运算 ..................................................... 9 2.3 加密算法的四种主要工作模式 .......................................... 10 2.4 加密算法原理描述 .................................................... 12 2.5 AES加/解密算法的实现 ............................................... 13

2.5.1 S盒变换 SubBytes() ........................................... 14 2.5.2 行变换ShiftRows() ............................................ 15 2.5.3 列变换Mixcolumns() ........................................... 15 2.5.4 与扩展密钥的异或运算AddRoundKey() .......................... 16 2.5.5 密钥扩展程序 Key Expansion( ) ................................. 16 2.6 AES安全性能分析 ...................................................... 16

2.6.1安全性原则 .................................................... 16 2.6.2 AES算法的安全性 .............................................. 17 2.6.3AES算法的性能分析 ............................................. 18 2.7 本章小结 ........................................................... 18 第三章 开发环境介绍......................................................... 19

3.1 硬件描述语言........................................................ 19 3.2 Modelsim+Synplify+(Virtex-5)开发环境 ................................ 19

3.2.1 Modelsim...................................................... 19 3.2.2 逻辑综合和综合工具Synplify ................................... 20 3.2.3 Xilinx Virtex-5系列FPGA ...................................... 21 3.3 设计方法 ........................................................... 22 3.4 本章小节 ........................................................... 23 第四章 AES算法的FPGA设计 .................................................. 24

4.1 FPGA实现系统分析 ................................................... 24

4.1.1 软硬件实现方法比较 ............................................ 24 4.1.2 性能参数...................................................... 25 4.1.3 关键技术...................................................... 25

III

东南大学本科生毕业设计(论文)

4.2 整体结构设计........................................................ 26

4.2.1 总体设计方案 .................................................. 26 4.2.2 总体系统结构框图 .............................................. 29 4.3 各系统分支设计...................................................... 30

4.3.1 加解密模块的设计 .............................................. 30 4.3.2 控制模块设计 .................................................. 31 4.3.3 密钥扩展模块设计 .............................................. 32 4.3.4 接口模块设计 .................................................. 33 4.4 编码实现 ........................................................... 34 4.5 本章小节 ........................................................... 35 第五章 系统的仿真和测试 ..................................................... 36

5.1 仿真测试简介........................................................ 36 5.2 Modelsim功能仿真 ................................................... 36 5.3 Synplify 综合和时序分析 ............................................. 41 第六章 结论和展望 .......................................................... 42 致谢 ....................................................................... 43 参考文献 ................................................................... 44

IV