智能卡的攻击技术分析及安全设计策略-1.docVIP

智能卡的攻击技术分析及安全设计策略-1.doc

  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文档。上传文档
查看更多
智能卡的攻击技术分析及安全设计策略-1

智能卡的攻击技术分析及安全设计策略 1 引言 在智能卡应用日益广泛的今天,智能卡应用系统的安全问题非常重要。通常认为智能卡本身具有较高的安全性[1 ] ,但随着一些专用攻击技术的出现和发展,智能卡也呈现出其安全漏洞,从而导致整个应用系统安全性降低。分析智能卡面临的安全攻击,研究相应的防御措施,对于保证整个智能卡应用系统的安全性有重大的意义。本文首先分析了目前主要的智能卡攻击技术,并有针对性地提出相应的安全设计策略。 2 智能卡设计简述 智能卡是将具有存储、加密及数据处理能力的集成电路芯片镶嵌于塑料基片上制成的卡片,智能卡的硬件主要包括微处理器和存储器两部分,逻辑结构如图1 所示。 智能卡内部的微处理器一般采用8 位字长的中央处理器,当然更高位的微处理器也正在开始应用。微处理器的主要功能是接受外部设备发送的命令,对其进行分析后,根据需要控制对存储器的访问。访问时,微处理器向存储器提供要访问的数据单元地址和必要的参数,存储器则根据地址将对应的数据传输给微处理器,最后由微处理器对这些数据进行处理操作。此外,智能卡进行的各种运算(如加密运算) 也是由微处理器完成的。而控制和实现上述过程的是智能卡的操作系统COS。卡内的存储器容量一般都不是很大, 存储器通常是由只读存储器ROM、随机存储器RAM 和电擦除可编程存储器EEPROM组成。其中,ROM 中固化的是操作系统代码,其容量取决于所采用的微处理器;RAM 用于存放操作数据,容量通常不超过1KB ; EEPROM中则存储了智能卡的各种信息,如加密数据和应用文件等,容量通常介于2KB 到32KB 之间,这部分存储资源可供用户开发利用。 图1  智能卡的硬件结构 3 对智能卡安全的威胁及其防范 对智能卡的攻击可分为三种基本类型: 逻辑攻击:在软件的执行过程中插入窃听程序bugs 物理攻击:分析或更改智能卡硬件 侧路side channel攻击:利用physical phenomena 来分析和更改智能卡的行为 针对逻辑攻击的防范技术已臻成熟,因而其攻击成功的概率较低;而物理攻击因需要昂贵的专业设备和较长的实施周期而较少被采用。作为近年来新兴的攻击技术之一,侧路攻击技术已成功入侵了多种智能卡。尽管智能卡业界对于侧路攻击的解决方案已有了越来越多的认识,然而许多智能卡对于这类攻击仍毫无免疫力。因此解决侧路攻击问题成为智能卡制造商最急需面对的问题之一。 3 侧路攻击及其对策 旁路攻击又可下分为旁路分析和旁路操纵。 通过观察电路行为可进行旁路分析,其用到的物理量有: 能量消耗 电磁辐射 时间 通过干扰电路可进行旁路操纵,其用到的物理量有: 电压 电磁辐射 温度 光和X射线 频率 在过去5年中,以下2中方法大行其道: 差分能量分析 能量短脉冲波形干扰 (1)差分(差分,微分,差动,减法?)能量分析(DPA) 用示波镜检测电子器件能量消耗,有可能获知其行为。图1为某器件用DES算法加密时的能量追踪图。 图1 DES运算的能量追踪图 显然,能量消耗是不连续的并揭示出一种模式。我们知道DES算法要执行16次循环来对一个输入数据加密,因此可以在能量轨迹的16次重复模式中识别出这些循环。虽然这一发现十分有趣,但却无法对另一重要问题给出答案:加密密钥究竟是什么? PDA重现密钥的方法是分析和比较一系列的能量轨迹。攻击者只需知道算法的明文(输入)或密文(输出)。攻击的基础是假设被处理的数据与能量消耗之间存在某种联系,换句话说,假设处理0比1所用的能量要少(反之亦然)。图2为对两个不同数据执行同一算法的两个能量轨迹。能量轨迹显示了8个时钟周期的能量消耗。虽然两条轨迹几乎相同,然而可以看出在第3个周期有微小的差别。图3给出了两条轨迹的差。差分轨迹中的峰值是由输入数据的不同产生的,事实上,算法的输入数据正是在第3个时钟周期被处理的。明显不同的输入值引起的能量消耗有微小的区别并能够用检查能量轨迹的方法来识别。用计算机计算差分轨迹可识别出输入数据被处理的时钟周期。如此检查加密算法的所有输入以及每一对0和1产生的差分轨迹,就可以识别出他们出现在程序代码中的确切时间。 图2 两个差分输入的交迭能量轨迹 图3 差分输入的差分能量轨迹 PDA使得加密算法的内部处理过程可以被研究,这一危险性对智能卡安全提出了更高的要求。加密算法必须使用足够长度的密钥以保证探索密钥的过程因过于耗时而不可行。一个完整的算法通常在加密过程中分解成许多小步骤以使处理器可以实现。这些小步骤往往不使用全密钥而是用其中的一部分。PDA可以获取这些小步骤的输出并探索出这些较短的密钥值。 由于没有处理器能够只用一个单独的步骤就完成完整的加密算法,从理论上说,所有加密算法都可用PDA破解。虽然这种攻击方法的开发十分复杂,然而其应用却十分简单且只需很小的投资。所

文档评论(0)

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

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

1亿VIP精品文档

相关文档