- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
功耗分析仿真软件设计和实现
功耗分析仿真软件设计和实现
【 摘 要 】 设计并自主开发一个功耗分析仿真软件,完成对硬件描述语言实现的密码算法IP核进行功耗仿真分析。用软件仿真功耗分析攻击,可以在嵌入式加密芯片的设计阶段评估设计方案和抗功耗分析攻击的性能,提高工作效率,降低开发时间和成本,具有很高的实用价值。该软件已经实现了几种常用密码算法及其改进后加密算法的一阶功耗分析和高阶功耗分析功能。经测试得到的仿真结果与理论分析出来的攻击结果相符合,实现了本软件的设计目标。
【 关键词 】 差分功耗分析;功耗分析仿真软件;高阶功耗分析
【 中图分类号 】 TP311.52 【 文献标识码 】 J
1 引言
自P. Kocher提出功耗分析概念以来,在功耗分析实施过程中的功耗采集、功耗轨迹生成、功耗分析攻击三个主要实现环节中,只有功耗分析攻击的讨论最为深入。究其原因,功耗采集、轨迹生成都有固定的方案可循。而功耗分析攻击涉及到密码算法及其运行过程中一切数据的变化和中间值的估计,必然会复杂和深入得多。一般,功耗分析攻击都是在加密设备的物理硬件平台上完成。对加密芯片设计者而言,所设计的算法软件和其他方面的设计必须在样品设备制造出来之后才能测试验证。对一个已经设计并付诸生产的嵌入式加密芯片而言,后期的验证已经来不及对其进行结构上的调整和修正,且测试周期长,代价高。因此,如能设计一个好的功耗分析仿真软件,不需要搭建硬件实验环境和物理目标设备,通过软件仿真硬件功耗消耗,执行功耗分析攻击,能仿真多种加密算法在多种类型加密设备上进行测试,并能及时反馈所用攻击方法及防御方法的性能和效果,具有极大的实用价值。
1.1 功耗分析仿真软件研究现状
到目前为止,国内外对功耗分析方法的研究仍属于探索和起步阶段。
2003年Einhoven大学的ECSS研究小组设计和开发一种基于功耗泄露攻击的仿真试验平台PINPAS,该仿真平台能对AES,ECC算法在内的密码算法的功耗泄露进行仿真。PINPAS仿真平台实现了简单功耗分析攻击、一阶差分功耗分析攻击。
2004年剑桥大学的EMA项目组以电磁辐射攻击为背景展开相关研究,通过对密码芯片运算时的电磁泄露进行建模,在设计阶段对密码芯片进行电磁分析。EMA项目开发了一套电磁攻击的仿真实验环境,能处理简单电磁攻击和差分电磁攻击。
2005年清华大学的研究人员提出一种功耗分析模拟研究平台,该平台为功耗分析及抗功耗分析提供一个理论研究平台,可以为最终的芯片实现提供一定的安全依据。
2007年上海交通大学的研究人员在进行功耗分析实验的研究中,对旁路功耗分析测试平台进行了详细的描述,给出了整个系统的总体设计框图,用图表的方式描述了攻击测试的流程。
2008年电子科学技术大学的范明钰、张涛、李欣等研究人员在开发旁路攻击仿真软件上进行了一些尝试,初步完成了一个仿真软件SSSCA的相关设计与编写工作。该仿真软件中加密算法和SSSCA平台均是用高级语言描述,目前只完成简单功耗分析攻击和一阶差分功耗分析攻击。
2 仿真软件设计目标和总体架构
2.1 功耗分析仿真软件设计目标
本文所开发的功耗分析仿真软件模块作为整个仿真软件系统的一部分,已完成几个设计目标。
1) 采用自上而下的设计,搭建软件的整体架构,功耗分析仿真软件的最终目的是能够仿真多种加密算法在多种虚拟硬件平台上的泄露功耗进行分析,随着项目开展,能不断扩充算法模块,因此整个软件系统结构需要良好的扩展性。
2) 完成密码算法的IP(Intellectual Property Core)核设计。
3) 设计从硬件描述语言到高级语言的接口设计。
4) 设计加密算法的一阶功耗分析模块,该模块包括功耗统计,功耗分析攻击,最后获得一条直观的功耗分析攻击曲线。
5) 设计加密算法二阶功耗分析模块,该模块包括功耗统计,功耗分析攻击,最后获得一条直观的功耗分析攻击曲线。
2.2 功耗分析仿真软件总体架构
本文设计了一个功耗分析仿真软件总体架构,对加密算法IP核进行功能模拟,提取出功耗曲线,并对其进行功耗分析;另一方面,亦可以利用这一软件评估抗功耗分析攻击算法设计的有效性和可行性。功耗分析仿真软件总体架构如图1所示。
3 仿真软件各功能模块
3.1 加密算法IP核设计
用硬件描述语言实现加密算法。模拟加密芯片从数据输入到数据输出的全过程。
3.2 代码仿真模块
代码仿真模块主要是建立在大量的实验基础上,完成密码算法过程中中间值与功耗数值之间的工作、功耗数据采集工作。
本文中代码仿真器选择的是Mentor Graphics 子公司Model Technology的产品Mode
文档评论(0)