基于AMBA总线的AES算法的设计与验证
发布时间:2023-03-01 17:36
随着社会信息产业的发展,信息安全越来越受到重视。同时随着手持设备和移动终端的兴起,对密码算法的硬件实现提出了新的要求,比如小面积,低功耗等。AES (Advanced Encryption Standard)作为新一代数据加密标准,已经越来越多地被信息安全界所采用。针对以上情况,本文提出了一种支持不同密钥长度,兼容AHB总线的AES加解密算法实现方案。为了减少硬件的面积,本文采用了32bit数据宽度的的硬件结构,同时在加密与解密之间、轮函数与密钥扩展之间实现模块级的资源共享。然后进行了模块划分,并对模块功能、接口信号、内部寄存器进行了详细的说明。对于AHB总线接口模块,本文说明了其实现结构图并对逻辑功能进行了分析。在数据通路模块的设计中,本文提出了带行移位变换功能的数据存储模块的实现方法,同时对逆向列混淆模块的实现方法进行了分析。接着在分析密钥扩展算法的基础上,本文提出了一种能支持128、192和256位不同密钥长度正向和逆向密钥扩展的电路结构,并分析了Rcon函数的两种实现方法和适用场合。然后分析了字代换模块的实现结构并对其中的sbox盒的实现方法进行了说明。最后分析了状态机控制模块...
【文章页数】:81 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第一章 绪论
1.1 课题背景与意义
1.2 研究内容与设计指标
1.2.1 研究内容
1.2.2 设计指标
1.3 论文组织结构
第二章 AES算法研究和AHB总线简介
2.1 有限域GF(28)运算
2.1.1 有限域GF(28)定义
2.1.2 有限域GF(28)加法
2.1.3 有限域GF(28)乘法
2.1.4 有限域GF(28)x乘运算
2.1.5 有限域GF(28)字乘法运算
2.2 AES加密算法
2.2.1 SubBytes正向字节变换
2.2.2 ShiftRows正向行移位变换
2.2.3 MixColumn正向列混淆变换
2.2.4 AddRoundKey密钥加变换
2.3 等价解密算法
2.3.1 InvSubBytes逆向字节变换
2.3.2 InvShiftRows逆向行移位变换
2.3.3 InvMixColumn逆向列混淆变换
2.4 密钥扩展及分配
2.5 AHB总线接口
2.5.1 AHB总线系统互联结构
2.5.2 AHB基本传输操作
2.6 本章小结
第三章 需求分析与方案制定
3.1 设计需求
3.2 设计方案的选择
3.3 总体结构
3.3.1 模块功能说明
3.3.2 接口信号描述
3.3.3 寄存器定义
3.4 本章小结
第四章 AES算法IP核设计
4.1 AHB总线接口模块设计
4.1.1 AHB总线接口模块结构
4.1.2 逻辑功能实现分析
4.2 数据通路模块设计
4.2.1 数据通路模块整体结构
4.2.2 数据存储模块设计
4.2.3 列混淆变换模块设计
4.3 密钥通路模块设计
4.3.1 密钥扩展方法
4.3.2 密钥扩展模块结构
4.3.3 密钥存储模块设计
4.3.4 轮常量Rcon模块设计
4.4 字代换模块设计
4.4.1 字代换模块结构
4.4.2 字节代换模块设计
4.5 状态机控制模块设计
4.5.1 控制信号说明
4.5.2 加解密流程分析
4.5.3 控制信号的产生
4.5.4 控制信号产生逻辑优化
4.5.5 状态机编码及状态跳转
4.5.6 操作模式可配置的实现
4.6 本章小结
第五章 AES算法P核验证及结果分析
5.1 功能验证
5.1.1 正向和逆向sbox盒功能验证
5.1.2 AHB总线数据传输功能验证
5.1.3 控制位FC功能验证
5.1.4 控制位TC功能验证
5.1.5 控制位AC功能验证
5.1.6 AES-128加解密功能验证
5.1.7 AES-192加解密功能验证
5.1.8 AES-256加解密功能验证
5.2 FPGA综合与实现
5.3 FPGA板级验证
5.4 Design Complier逻辑综合与时序验证
5.5 设计指标和验证结果对比
5.6 结果分析与比较
5.7 本章小结
第六章 总结与展望
6.1 总结
6.2 展望
参考文献
致谢
攻读硕士学位期间发表的论文
本文编号:3751941
【文章页数】:81 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第一章 绪论
1.1 课题背景与意义
1.2 研究内容与设计指标
1.2.1 研究内容
1.2.2 设计指标
1.3 论文组织结构
第二章 AES算法研究和AHB总线简介
2.1 有限域GF(28)运算
2.1.1 有限域GF(28)定义
2.1.2 有限域GF(28)加法
2.1.3 有限域GF(28)乘法
2.1.4 有限域GF(28)x乘运算
2.1.5 有限域GF(28)字乘法运算
2.2 AES加密算法
2.2.1 SubBytes正向字节变换
2.2.2 ShiftRows正向行移位变换
2.2.3 MixColumn正向列混淆变换
2.2.4 AddRoundKey密钥加变换
2.3 等价解密算法
2.3.1 InvSubBytes逆向字节变换
2.3.2 InvShiftRows逆向行移位变换
2.3.3 InvMixColumn逆向列混淆变换
2.4 密钥扩展及分配
2.5 AHB总线接口
2.5.1 AHB总线系统互联结构
2.5.2 AHB基本传输操作
2.6 本章小结
第三章 需求分析与方案制定
3.1 设计需求
3.2 设计方案的选择
3.3 总体结构
3.3.1 模块功能说明
3.3.2 接口信号描述
3.3.3 寄存器定义
3.4 本章小结
第四章 AES算法IP核设计
4.1 AHB总线接口模块设计
4.1.1 AHB总线接口模块结构
4.1.2 逻辑功能实现分析
4.2 数据通路模块设计
4.2.1 数据通路模块整体结构
4.2.2 数据存储模块设计
4.2.3 列混淆变换模块设计
4.3 密钥通路模块设计
4.3.1 密钥扩展方法
4.3.2 密钥扩展模块结构
4.3.3 密钥存储模块设计
4.3.4 轮常量Rcon模块设计
4.4 字代换模块设计
4.4.1 字代换模块结构
4.4.2 字节代换模块设计
4.5 状态机控制模块设计
4.5.1 控制信号说明
4.5.2 加解密流程分析
4.5.3 控制信号的产生
4.5.4 控制信号产生逻辑优化
4.5.5 状态机编码及状态跳转
4.5.6 操作模式可配置的实现
4.6 本章小结
第五章 AES算法P核验证及结果分析
5.1 功能验证
5.1.1 正向和逆向sbox盒功能验证
5.1.2 AHB总线数据传输功能验证
5.1.3 控制位FC功能验证
5.1.4 控制位TC功能验证
5.1.5 控制位AC功能验证
5.1.6 AES-128加解密功能验证
5.1.7 AES-192加解密功能验证
5.1.8 AES-256加解密功能验证
5.2 FPGA综合与实现
5.3 FPGA板级验证
5.4 Design Complier逻辑综合与时序验证
5.5 设计指标和验证结果对比
5.6 结果分析与比较
5.7 本章小结
第六章 总结与展望
6.1 总结
6.2 展望
参考文献
致谢
攻读硕士学位期间发表的论文
本文编号:3751941
本文链接:https://www.wllwen.com/kejilunwen/xinxigongchenglunwen/3751941.html