PRESENT 的多模型差分错误分析.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文档。上传文档
查看更多
PRESENT的多模型差分错误分析 唐明1,2 沈菲2 邓慧2 尹鹏2 邱镇龙2 马啸2 张焕国1,2 (1. (2. 武汉大学计算机学院 武汉) 摘 要 PRESENT密码是一种适用于传感器网络,RFID标签等小规模硬件的轻量加密算法。该密码算法能够在较少资源条件下提供满足应用要求的安全性。本文对PRESENT算法的差分错误分析方法进行研究,提出了针对Present密码的4种差分错误模型,并对它们进行分析对比,从而找到针对PRESENT算法最好的差分错误分析方法。就我们收集到现有发表著作显示,此次研究比以往PRESENT的差分错误攻击更为有效。理论分析与实验结果均表明,由于PRESENT密码的P置换的线性扩散特性和S盒的差分分布不均匀特性,PRESENT密码易受到差分错误分析。最好结果是,在第28轮和29轮P置换之间引入8bit随机错误,平均使用17个错误样本分析得到最后一轮64bit白化密钥。 关键词 密码分析;差分错误分析;轻量密码;Present密码 引言 1996年9月,Boneh等人提出了一种新的密码分析方法—错误攻击(Fault analysis,FA[1],并利用FA攻击成功破解RSA密码。该方法一经提出就得到了广泛关注,并被尝试用于各种加密算法中。1997年,Biham和Shamir将FA思想运用到私钥加密系统中,提出了一种新的攻击方法——差分错误攻击(Differential Fault analysis,DFA[2]。DFA分析结合了差分分析与错误分析,通过将错误插入到私钥加密系统中,分析得到正确错误的密文对,进行差分分析得到密钥。文献[2]中介绍DFA分析方法对DES算法进行50—200次的错误加密,可获得最后一轮的48bit密钥,该文[2]仅对Feistel结构分组密码进行DFA分析,而未涉及SPN结构分组密码结构。2003年,Pierre等人将DFA分析方法用于SPN结构的密码算法——AES之中[3]。迄今为止,DFA分析方法已被用于多种密码算法中,例如3DES[4]、KHAZAD[5]、SMS4[6]、TRIVIUM[7]、IDEA[8]等。 PRESENT密码[9]是由A.Bogdanov等人在CHES 2007中提出的一种SPN结构的密码。该算法能够在硬件资源有限的条件下完成安全加密。文献[9]中提出PRESENT算法能够在1570个门级电路上完成安全加密,并充分满足传感器网络以及RFID标签的安全要求。目前,对PRESENT算法的分析有多种,包括线性分析[10]、约减轮的差分分析[11]、代数分析[10]、约减轮的线性攻击[12]、差分错误分析[13]、针对密钥扩展的差分错误分析[14]等。其中文献[13]是目前首次提出的针对PRESENT的差分错误分析,研究者能够在第29、30S盒输入之间引入4bit错误,利用40-50个有效错误样本条件下恢复出最后一轮64bit白化密钥。 本文中,我们针对PRESENT算法提出四种不同的错误模型,即:第29、30P置换之间4bit随机错误模型;第29、308bit随机错误模型;第28、29P置换之间4bit随机错误模型;第28、29P置换之间8bit随机错误模型。 理论分析与实验结果表明,在普通PC下(CPU:Intel i3 530@2.93Ghz;内存:4G)利用vc9.0编译器下,第28、29P置换之间引入8bit的随机错误,能够在秒级的计算时间,利用17对错误样本分析得到最后一轮64bit的白化密钥。剩下的密钥比特数,可以直接穷举得到。 本文其它部分的组织结构如下:第2章介绍了PRESENT算法以及差分错误分析的相关知识;第3章分析了PRESENT算法的四种错误模型下的错误传播过程及分析方法;第4章进行四种错误模型的复杂度分析,实验模拟攻击,给出了相应的实验结果;第5章为全文工作的总结。 相关知识介绍 PRESENT密码 PRESENT密码是一种结构为SPN的轻量密码算法,包括31轮函数变换及最后的输出密钥白化。算法结构如图1所示。 图1 PRESENT算法结构 PRESENT轮函数由轮密钥加、S盒代换和P置换组成。其中S盒代换由16个4*4大小的S盒完成,是PRESENT算法中唯一的非线性部件。 轮密钥加:设轮密钥为,当前状态为,则变换如下: S盒代换:设状态为,可表示成16个4bit数 ,其中。则变换如下: S盒定义如表1所示: 表1 S盒代换表 x 0 1 2 3 4 5 6 7 8 9 A B C D E F S(x) C 5 6 B 9 0 A D 3 E F 8 4 7 1 2 P置换:P置换将64bit状态进行重排,提供扩散效应。P置换表定义如表2所示: 表2 P置换表 i

文档评论(0)

飘颖 + 关注
文档贡献者

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

1亿VIP精品文档

相关文档