主要成员
huanglindong的标识图片 huanglindong [创建者
初学者
windycraze的标识图片 windycraze [未验证
Jelatine的标识图片 Jelatine [普通成员
宁空水月的标识图片 宁空水月 [普通成员
世界不在书本里,也不在地图上,它在外面呢。—霍比特人 意外之旅
tsunamikon的标识图片 tsunamikon [普通成员
申请参加这个项目
了解该团队的信息
帮助文档
 
项目信息
项目名称:【HLS】AES加密算法的实现  
英文名称:The implementation of AES 
项目信息:
应用领域:网络与通信
设计摘要:
随着信息产业在我国国民经济中扮演越来越重要的角色,信息技术的发展和数据传输的安全性受到了有关部门的重视,加强网络信息安全的加密产品具有广泛的应用前景,但是算法的复杂度与处理时间成反比,这就制约了算法的实现速度以及高效性。针对当前算法的处理速度慢等问题,本论文提出了基于Xilinx vivado hls高层次综合工具,可以快速地完成高层次算法到硬件的转换,把C语言实现的AES加密算法转化为RTL级别的描述。通过进一步对综合后的硬件描述语言进行优化,可以节省资源,提高处理速度,大大提高了算法处理的速度。
本论文主要讨论了vivado hls的工作原理,AES加密算法的原理以及算法实现,利用hls对AES算进行验证、综合、生成报告文档等。主要的创新点是1、把高层次算法转换成硬件描述语言;2、对AES算法使用sbox变换算法描述,不用传统的查表法,从而节省了面积。
系统原理和技术特点:

      AES加密数据分组长度必须为128B,密钥长度可以为128B192B256B中的任意一个。Nr表示对一个数据分组加密的轮数。每一轮都需要一个与输入分组具有相同长度的扩展密钥Expandedkey(i)的参与。由于外部输入的加密密钥K长度有限,所以在算法中要用一个密钥扩展程序(Keyexpansion)把外部密钥K扩展成更长的比特串,以生成各轮的加密和解密密钥。

AES加密算法很多个轮的重复和变换实现,大致步骤如下:

(1)       密钥扩展(keyExpansion

(2)       初始轮(initial Round

(3)       重复轮(Rounds):subBytesshiftRowsMixcolumnsAddRound

(4)       最终轮(FinalRound),最终轮没有Mixcolumns

 

总体原理框图.jpg
系统框图:总体原理框图.jpg
软件流程图.jpg
系统框图:软件流程图.jpg
软件流程介绍: 软件流程介绍.doc [439 KB]
计划书:计划书.doc [164.5 KB]
当前项目状态:
参赛信息:
指导老师姓名: 蔡肯
指导老师职称: 讲师
学校: 仲恺农业工程学院
研究方向: 机器视觉
参赛情况: OpenHW2014开源硬件与嵌入式计算大赛
需求信息:
拟采用的平台:挑战赛目标器件Kintex7-325T
是否需要设计扩展板?
需要的基本功能:
最新版本:
请同时下载该项目版权声明
update 13-12-25 22:12:12
提交挑战赛作品报告书
相关文件:
挑战赛提交文档.rar  436.3 KB 
了解整个项目的开发记录
相关评论:  
添加评论  更多评论
正在读取数据……
关于OpenHW | OpenHW使用说明 | FAQ | 相关法律 | 版权声明 | 网站地图
联系邮件:aimei@eefocus.com  联系电话: 0512-80981663-8069    Fax:0512-80981279
Powered by eefocus.com