智能卡的边频攻击分析及安全防范措施_第1页
智能卡的边频攻击分析及安全防范措施_第2页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 / 10智能卡的边频攻击分析及安全防范措施在智能卡应用日益广泛的今天,智能卡应用系统的安全问题特不重 要。通常认为智能卡具有较高的安全性1,但随着一些专用攻击技术 的出现和进展,智能卡也呈现出其安全漏洞,导致整个应用系统安全 性降低。分析智能卡面临的安全攻击,研究相应的防备措施,关于保证 整个智能卡应用系统的安全性有重大意义。 下面分析目前要紧的智 能卡攻击技术之一一一边频攻击技术,并有针对性地提出相应的安 全设计策略。1智能卡简述智能卡是将具有存储、加密及数据处理能力的集成电路芯片镶嵌于 塑料基片上制成的卡片。智能卡的硬件要紧包括微处理器和存储器 两部分,逻辑结构如图1所示。團1智詣运硬

2、件诸构智能卡内部的微处理器多采纳8位字长的CPU(因此更高位的微处理器也正在开始应用)。微处理器的要紧功能是接收外部设备发送 的命令,2 / 10对其进行分析后,依照需要操纵对存储器的访问。 访问时,微处 理器向存储器提供要访问的数据单元地址和必要的参数,存储器则依 照地址将对应的数据传输给微处理器,最后由微处理器对这些数据进 行处理操作。此外,智能卡进行的各种运算(如加密运算)也是由微处 理器完成的;而操纵和实现上述过程的是智能卡的操作系统COS。卡内的存储器容量由只读存储器ROM、随机存储器RAM和电擦除 可编程存储器EEPROM组成。其中,ROM中固化的是操作系统代 码,其容量取决于所采

3、纳的微处理器;RAM用于存放操作数据,容量 通常不超过1 KB;EEPROM存储智能卡的各种信息,如加密数据和 应用文件等,容量通常介于2 KB32 KB之间(这部分存储资源可供 用户开发利用)。2对智能卡安全的威胁对智能卡的攻击可分为三种差不多类型:1逻辑攻击 在软件的执行过程中插入窃听程序。智能卡及其COS中存在多种潜在的逻辑缺陷,诸如潜藏的命令、不良参数与缓 冲器溢出、文件存取、恶意进程、通信协议、加密协议等。逻辑攻 击者利用这些缺陷诱骗卡泄露机密数据或同意非期望的数据修改。2物理攻击分析或更改智能卡硬件。用于实现物理攻击的手段 和工具包括化学溶剂、蚀刻与着色材料、显微镜、亚微米探针台以

4、 及粒子束FIB等。3边频攻击利用物理量来分析和更改智能卡的行为。通过观看 电路中3 / 10的某些物理量,如能量消耗、电磁辐射、时刻等的变化规律,来 分析智能卡的加密数据;或通过干扰电路中的某些物理量,如电压、 电磁辐射、温度、光和X射线、频率等,来操纵智能卡的行为。智能卡攻击方法的有效性以攻击者所获得的效益高于其耗费的时 刻、精力、经费等作为标准。表1给出了上述三种攻击类型的情况 对比。表1智寵百吏击傭呪对比连击娄空at龄咗推打臭冗n睦囲翩K疗时n燉御攻击rc0.1儿介诽物理攻If化学实驶宅1廿一 |SB述増顼J.i忙、示at、恒 垸推牛:嚣1申u月几小时由表1可见,物理攻击成本过高,耗时

5、费劲,较少被采纳;逻辑攻 击尽管投入较少,容易实施,但也容易防范,成功率较低。近年来, 新兴的边频攻击技术因其较高的收益成本比而被广泛使用。尽管智 能卡业界关于边频攻击的解决方案已有了越来越多的认识, 然而许 多智能卡关于这类攻击仍毫无免疫力。目前,应用最为广泛的边频分析和边频操纵技术包括:差分能量分析技术DPA(DifferentialPower Analysis)与能量短脉冲波形干扰(Power Glitching)技术。下面重点就这两种边频攻击的方法加以分析,并给出相应的安全策略。3差分能量分析4 / 103.1 DPA攻击的分析DPA(差分能量分析)攻击是通过用示波镜检测电子器件的能量

6、消 耗来获知其行为的。图2为某智能卡用DES算法加密时的能量追踪 图。圉引氈迂宜的魄量遇臨團由图2可见,能量消耗是不连续的并呈现出某种模式。众所周知,用DES算法对一个输入数据加密时需要执行16次循环,因此能够 在能量轨迹的16次重复模式中识不出这些循环。 攻击者只需明白算 法的明文(输入)或密文(输出),通过分析和比较一系列的能量轨 迹就可重现加密密钥。DPA攻击的基础是假设被处理的数据与能量 消耗之间存在某种联系,换句话讲,假设处理0比1所用的能量要 少(反之亦然),那么对两个不同数据执行同一算法的两个能量轨迹会由于输入数据的不同而产生微小的差不。用计算机严格按时钟 计算两条轨迹的差得到差

7、分轨迹,差分轨迹中出现峰值的时刻即是 输入数据产生差不的时钟周期。如此检查加密算法的所有输入以及 每一对0和1产生的差分轨迹,就能够识不出它们出现在程序代码 中的确切时刻,从而猎取加密密钥。DPA使得加密算法的内部处理过程能够被研究,这一危险性对智能 卡安全提出了更高的要求。加密算法必须使用足够长度的全密钥, 以保证探究密钥的过程因过于耗时而不可行。一个完整的算法通常 在加密过程中分解成许多小步骤以使处理器能够实现。这些小步骤 往往不使用全密钥而是用其中的一部5 / 10分。DPA能够猎取这些小步骤 的输出并探究出这些较短的密钥值,因此,从理论上讲,所有加密 算法都可用DPA破解。尽管这种攻击

8、方法的开发十分复杂,然而其 应用却十分简单且只需专门小的投资, 所需的设备仅限于1台PC及 中等精度的示波镜,因此解决DPA问题成为智能卡制造商最急需面 对的问题之一。3.2 DPA攻击的安全策略应对DPA攻击的安全策略差不多分为三个层面:硬件、软件和应用 层面。(1)硬件层面的反措施1采纳平衡电路降低信号能量,以及设置金属防护以抑制电磁发射。2执行并行随机处理来加大幅值噪声水平。例如,内部编程电压产 生电路可用作并行噪声发生器。3随时处理中断引入的时刻噪声和不同的时钟频率。对差分轨迹进 行计算机处理的基础是轨迹可排列。 在加入轨迹之前处理器的工作 步骤应是同步的。时刻噪声会防止或至少阻碍轨迹

9、专门好地排列。硬件反措施的好处在智能卡关于侧路攻击的敏感性比较少地依靠于 软件的变化,但其弱点在于只能降低智能卡关于侧路攻击的敏感性而 无法完全消除它。事实上,硬件防范措施只是将信号降低到噪声水 平从而使攻击变得困难。6 / 10(2)软件层面的反措施1采纳随机处理顺序来减少相关的信号。例如,算法中的平行置换 (诸如DES中的S盒)可依随机的顺序来完成, 置换的数目重新排 序,则可将一次置换产生的信号分解。2利用随机延时和改变路径来增加计时噪声。计时噪声会阻碍轨迹 的排列,并降低差分轨迹的质量。3消除密钥值及中间媒介值的时刻依存性。当处理过程取决于密钥值时,直接用肉眼观看轨迹就可实现简单的能量

10、分析;而在时刻上连续的密钥处理过程则可防止这种易行的攻击4用随机值来隐蔽中间媒介值。能量的泄露取决于一个数据中的位 数。假如在实际数据上加上随机数据,处理完之后再减去,那么传 递的路径将可不能泄露有用的信息。只是,这种隐蔽将会导致传递 函数的非线性并产生错误的结果。 因此, 这些函数需要认真地重新 设计,以补偿由随机数据引起的背离。理论上来讲,软件对策完美地解决了DPA攻击的问题。然而这种方 法必须针对某种算法定制且其设计相当困难,因而特不昂贵且难以 维持。(3)应用层面的反措施 重设计数器,用于限制攻击者试探的次数。连续三次PIN校验失 败后自锁是防范差分能量分析的有效方法。7 / 10 限

11、制加密算法中输入输出的操纵和可见度。假如只能选择部分输 入,或只有部分算法的结果返回,攻击者就无法完成差分能量分析。以上是防范DPA攻击的差不多方法,其缺点是对可靠性的负面阻碍 以及需要改变已有的协议。4能量短脉冲干扰8 / 104.1能量短脉冲干扰攻击的分析微处理器要求在稳定的电压下工作,能量供应的中断就看起来突然 冲击程序运行或复位电路。然而,一个短而巧妙的脉冲能够引起单 步的程序错误而微处理器仍能接着执行程序。 例如,CPU读取存储 单元的内容,晶体管用一个阈值来检测存储单元的值,以确定所读 的是逻辑“或“1。”突然出现的能量短脉冲对存储值和逻辑值都会产 生阻碍。不同的内部容量会使存储值受到不同的阻碍,有可能会使 真实的值被歪曲。如图3所示,与逻辑“(对应的低电平在正常的操 作状态下可能低于阈值电平,然而由于短脉冲的能量下压可能导致 其高于阈值电平。许多加密算法都易受这一类故障注入的阻碍。采纳差分故障分析DFA(Differenti

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论