基于SHA1算法加密认证系统设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于SHA1算法加密认证系统设计

基于SHA1算法加密认证系统设计   摘要:为了进一步提高数字系统的安全性,保护设计者的知识产权,本文提出了一种基于安全哈希算法(Secure Hash Algorithm,SHA-1)的加密认证系统设计方法。整个认证系统通过1-wire总线,使FPGA完成与DS28E01-100加密芯片的通信,主机内核采用了Xilinx公司设计开发的8位微控制器软核PicoBlaze。设计完成后’,通过编译器KCPSM2将汇编文件转换成Veri log或VHDL文件,然后采用xilinx公司的ISE软件编译综合,最终完成FPGA验证调试。实验证明该设计能够完成加密认证系统的全过程。   关键词:加密认证系统;SHA-1;1-wire;IFF   1.引言   加密技术是对信息进行编码和解码的技术,编码是把原来可读信息(又称明文)译成代码形式(又称为密文),其逆过程就是解码(解密)。加密技术的要点是加密算法,加密算法可以分为对称加密、不对称加密和不可逆加密三类算法。数字签名技术是不对称加密算法的典型应用。而在种类众多的数字签名技术中通常都会用到一类特殊的数学算法一哈希(Hash)算法,它在数字签名技术中占有极其重要的地位。哈希算法也即散列算法,其作用是对任何不定长的比特串(称为消息)计算出一个定长的比特串(称为消息摘要或散列值)。目前应用广泛的是安全Hash算法SHA-1,SHA-1算法是一种非常复杂的算法,包含多次32位5路加法,复杂的逻辑函数,数据移位和大量的循环。   对于一个真正安全的认证系统,最苛刻的功能是鉴定。这是因为认证必须能够证明它是由发行者授权,而且是可信的。认证应该可以简单地用其所包含发行者在内才能生成的加密信息来证明其合法性,这就是所谓加密认证。它的另一个关键技术是所使用的复杂数学运算法则应该是不可逆的,否则盗窃者采用逆运算,就能够推导出密码。基于SHA-1算法的芯片利用上述安全认证方法可以设计出可靠的嵌入式认证加密系统,将其加入到受保护的电子设备中,就可以起到保护电子产品的作用。   本文对散列算法SHA-1作了深入分析与研究,同时采用DS28E01-100加密芯片塔建了一套可靠的认证加密系统。整个认证系统通过1--wire总线,使FPGA完成与DS28E01-100的通信,同时将信息认证在FPGA内部进行,这样就避免了在一些小的系统设计中通过破译程序的机器码而获得程序的解密。主机内核采用了Xlinx公司设计的8位微控制软核PicoBlaze,它是为Virtex系列FPGA、Spa~an系列FPGA专用的嵌入式MCU IP核。PicoBlaze是一个由VHDL语言实现的完全嵌入式MCU IP核,不需要预编译,可直接由布局布线工具嵌入到FPGA器件中,设计灵活方便,运行速度快,占用资源少。   2.系统模块设计   本文主要实现了基于SHA-1算法的,采用FPGA和DS28E01-100的认证模块的设计。通过配置FPGA内部的数据加密内核,进行与DS28E01-100的指令问答完成身份验证过程。   2.1lFF的概念   IFF(Identification Friend-or-Foe)的字面含义为识别朋友或者敌人,图1所示为采用了IFF概念的认证系统的顶层结构图。SHA-1 IFF模块中有安全存储器中的匹配密钥,能够根据和安全存储器中SHA-1引擎相同的输入来计算SHA-1算法。只有当安全存储器和FPGA中的哈希计算结果相匹配时,输出就是一个朋友(Friend),否则就是一个敌人(Foe)。      2.2lFF认证模块的实现   系统一旦上电,以嵌有SHA-1 IFF参考设计的用户设计配置完FPGA后,首先要完成与加密芯片的匹配过程,其流程如图2所示。   (1)FPGA执行随机数产生器,产生一个随机数,把它发送给安全存储器。并读取加密芯片的序列号。   (2)加密芯片利用仅对设计者开放的密钥、器件序列号、质询码等,通过SHA-1引擎来产生一个160位的MAC值。   (3)FPGA使用相同的密钥产生期望信息,同时读取加密芯片产生的实际信息160位MAC值。   (4)如果期望信息值和实际信息值相同,则IFF模块使能用户设计,如果不相同则禁用它。   一旦使能用户设计后,关断IFF模块以降低功耗。同时也可以连接外部逻辑模块或硬件复位信号来复位IFF模块,再次启动工作。   2.3 IFF认证模块的FPGA设计      2.3.1 IFF认证模块的总体框架   整个认证模块主要由四部分组成,如图3所示。其中1-wire模块主要工作在主模式,负责加密芯片之间的通信;指令译码模块主要负责加密芯片和认证模块之间通信的指令译码工作,译码前指令存储在ROM块中;SHA-1引擎的

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档