基于USB接口加密算法探究.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文档。上传文档
查看更多
基于USB接口加密算法探究摘 要: 随着信息时代的到来,网络应用范围的日益扩大,电子商务以及网络银行等新兴业务逐渐兴起,给信息安全提出更高要求。加密算法是加密系统的核心内容。在现有数据加密体系基础之上,对基于USB接口加密算法进行阐述,并对算法FPGA进行分析。 关键词: USB接口;加密算法;Rijndael;FPGA 0 前言 随着信息时代的到来,计算机及互联网的应用范围越来越广,广泛涉及到各个领域,诸如电子商务、网络银行等新兴业务逐步发展起来,在给人们的工作及生活带来极大便利的同时,也将信息安全问题摆在了人们面前,维护信息安全性是信息时代的一大热点课题。加密算法是信息加密系统中最为关键的内容,加密算法的设计极为重要。本文在对现有数据加密体系进行研究的基础之上,提出了基于USB接口的加密算法,并对算法FPGA模式解决方案进行全面阐述。 1 Rijndael算法分析 就是加密和解密使用的不同是一个密钥,在非对称加密体系中,密钥被分解为一对(即公开密钥和私有密钥)。密钥中任何一把都可作为公开密钥,通过非保密方式向他人公开,而另一把作为私有密钥加以保存。公开密钥用于加密,私有密钥用于解密,两个必需配对使用,否则不能打开加密文件。在网络上传输加密文件,收件人解密时,只要用自己的私钥,即可避免密钥的传输安全性问题。非对称加密方式可以使通信双方无须事先交换密钥就可以建立安全通信,广泛应用于身份认证、数字签名等信息交换领域。 作为加密系统中最为关键的内容之一,加密算法的选择或设计应予以足够重视。本文选用的数据加密算法是比利时密码专家所研发的,并由美国国家标准及技术研究所宣布当选AES的Rijndael算法。Rijndael算法属于迭代分组密码算法,可以根据实际需求,调整分组长度及密钥长度,此外本算法具有一定扩充性,在以32bit为步长,128bit至256bit区间内,允许对算法分组长度及密钥长度进行调整。占用内存空间少,并且密钥安装简单是本算法最大的优势;此外,该算法具有较好的兼容性,对运行平台的要求极低,支持并行处理。 Rijndael算法对加法及乘法两种运算方式作出了定义,字节及4字节是运行的基本单位。在算法设计方面,主要是考虑到以下几方面:便于实现、对攻击的抵抗性以及多种平台中的运行速度及代码效率。Rijndael算法用Square结构取代了传统加密算法中的Feistel结构,中间态变换知识进行以为处理,三个可逆的简单变换构成轮变换,也就是层。字节的处理方式不受状态变换的影响,这样为快速并行处理的实现奠定了基础。在设计过程中针对层进行不同的组合方式,可以使其具备对线性以及差分攻击的抵抗性能。其中,线性混合层的主要作用在于,保证系统的扩散效果在经过数轮的变换之后依然满足需求;非线性层的功能主要是利用S盒的并行应用,实现了最差情况下输入数据以及密钥组合非线性特征的优化;密钥相加层,主要是在中间状态下,实现本轮密钥以及数据的异或操作。Rijndael算法的密钥为一个长度为 的比特串, 特明文组为加密对象,得到的密文组长依然为 。加解密处理的中间结果称为状态。 Rijndael解密算法与其加密算法之间在结构方面并无差异,解密变换极为加密算法变换的逆过程,只是在密钥扩展方面稍有改动。Rijndael算法以Square算法为原型,并采取主要面向差分分析以及线性分析的宽轨迹策略,其突出的优势在于给出了算法的最佳差分特征概率以及最佳线性逼近的偏差界,从而为分析该算法的抗击差分密码及其线性密码。 2 算法的FPGA分析 加密产品一般都要求较快的速度、较大的安全通信容量以及优越的物理安全性能,这就在一定程度上促进了借助硬件实现的加密的发展。利用硬件描述语言来对加密算法进行设计,在此基础上进行逻辑综合及优化,最后装配到FPGA器件。 在上述加密算法模块设计示意图中,Control输入表示的是数据输入读与写以及注入密钥数据的控制信号,input/key表示的是数据总线,通过与Control进行有效配合,将加密数据以及密钥数据向FPGA进行传输。作为状态机逻辑的Control在FPGA中主要作用是对算法流程进行控制,Input interface表示的是输入数据格式处理逻辑单元,Key scheduling及EncrypTion/dec ryption分别表示密钥扩展算法以及迭代算法,output interfa Ce代表输出数据格式处理逻辑单元,格伦密钥数据内部的RAM需要存放在Memory of internal key中。 对于Rijndael算法而言,最为重要的环节就是对各轮的数据处理进行设计,针对每轮数据开展并行处理是利用FPGA进行轮运算设计的主要思路。 1)S盒设计。Rijnd

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档