×

基于FPGA的SHA-256算法实现

消耗积分:5 | 格式:rar | 大小:183 | 2009-09-09

分享资料个

         本文分析了SHA-256 算法的基本工作流程,对算法硬件实现的关键路径进行了优化设计,讨论了几个关键模块的设计方案。最后给出了基于Altera 公司的CYCLONE 系列FPGA 的实现结果。
关键字:SHA-256 FPGA VHDL
         杂凑函数,是指能够把可变输入长度的数字串M 转换成较短的固定长度的输出数字串H 的一种函数,以h表示,h(M )易于计算,称H=h(M )为M 的杂凑值,也称哈
希值、杂凑码等。它可以配合公钥算法实现数字签名机制,还可以实现数据的完整性认证以及数据起源认证检测等,在网络安全协议SSL 和IPSec[1]中有着广泛应用。
          SHA(SECURE HASH STANDARD,安全哈希标准),是由美国国家标准技术研究所(NIST)和美国国家安全局(NSA)一道设计的杂凑算法,是使用最为广泛的安全杂凑算法之一。该算法于1993 年5 月11 日起采纳为标准。后经不断改进现已经发布五种安全哈希标准,分别为SHA-1、SHA-224、SHA-256、SHA-384、SHA-512。但随着中国专家先后破解了MD5、SHA-1等国际通用密码。美国国家标准技术研究所(NIST)表示,为配合先进的计算机技术,美国政府5 年内将不再使用SHA-1,并计划在2010 年以前改用先进的SHA-224、SHA-256、SHA-384及SHA-512 的密码系统。由此可见,SHA-224、SHA-256、SHA-384 及SHA-512 算法在不久的将来将会广泛使用。随着信息技术的发展,用户对算法的运算速度也提出了越来越高的要求,而用硬件实现算法是提高其运算速度的有效途径。另外,硬件实现算法在抵御诸如黑客攻击等安全问题方面也比软件实现有着较大优势。本文在分析SHA-256[2]的基础上,选用Altera公司的CYCLONE [3]系列器件,采用VHDL 语言进行描述,给出了该算法的一种电路设计方案。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(1)
发评论
a 2011-09-05
0 回复 举报
hao 收起回复

下载排行榜

全部1条评论

快来发表一下你的评论吧 !