您的位置 首页 开关

智能卡的边频进犯及安全防备

在智能卡应用日益广泛的今天,智能卡应用系统的安全问题非常重要。通常认为智能卡具有较高的安全性[1],但随着一些专用攻击技术的出现和发展,智能卡也呈现出其安全漏洞,导致整个应用系统安全性降低。分析智能卡

智能卡运用日益广泛的今日,智能卡运用体系的安全问题十分重要。一般以为智能卡具有较高的安全性[1],但随着一些专用进犯技能的呈现和开展,智能卡也呈现出其安全漏洞,导致整个运用体系安全性下降。剖析智能卡面临的安全进犯,研讨相应的防护办法,关于确保整个智能卡运用体系的安全性有重大意义。下面剖析现在首要的智能卡进犯技能之一——边频进犯技能,并有针对性地提出相应的安全规划战略。

  1 智能卡简述

  智能卡是将具有存储、加密及数据处理才干的集成电路芯片镶嵌于塑料基片上制成的卡片。智能卡的硬件首要包含微处理器和存储器两部分,逻辑结构如图1 所示。

  智能卡内部的微处理器多选用8位字长的CPU(当然更高位的微处理器也正在开端运用)。微处理器的首要功能是接纳外部设备发送的指令,对其进行剖析后, 依据需求操控对存储器的拜访。拜访时,微处理器向存储器供给要拜访的数据单元地址和必要的参数,存储器则依据地址将对应的数据传输给微处理器,最后由微处理器对这些数据进行处理操作。此外,智能卡进行的各种运算(如加密运算) 也是由微处理器完结的;而操控和完结上述进程的是智能卡的操作体系COS。卡内的存储器容量由只读存储器ROM、随机存储器RAM和电擦除可编程存储器 EEPROM组成。其间,ROM 中固化的是操作体系代码,其容量取决于所选用的微处理器;RAM 用于寄存操作数据,容量一般不超越1 KB;EEPROM存储智能卡的各种信息,如加密数据和运用文件等,容量一般介于2 KB~32 KB之间(这部分存储资源可供用户开发运用)。

  2 对智能卡安全的要挟

  对智能卡的进犯可分为三种根本类型:

  ① 逻辑进犯——在软件的履行进程中刺进偷听程序。智能卡及其COS中存在多种潜在的逻辑缺陷,比如潜藏的指令、不良参数与缓冲器溢出、文件存取、歹意进程、通讯协议、加密协议等。逻辑进犯者运用这些缺陷拐骗卡走漏机密数据或答应非希望的数据修正。

  ② 物理进犯——剖析或更改智能卡硬件。用于完结物理进犯的手法和东西包含化学溶剂、蚀刻与上色资料、显微镜、亚微米探针台以及粒子束FIB等。

  ③ 边频进犯——运用物理量来剖析和更改智能卡的行为。经过调查电路中的某些物理量,如能量消耗、电磁辐射、时间等的改动规则,来剖析智能卡的加密数据;或经过搅扰电路中的某些物理量,如电压、电磁辐射、温度、光和X射线、频率等,来操作智能卡的行为。

  智能卡进犯办法的有用性以进犯者所取得的效益高于其消耗的时间、精力、经费等作为规范。表1给出了上述三种进犯类型的状况比照。

  物理进犯本钱过高,耗时吃力,较少被选用;逻辑进犯尽管投入较少,简略施行,但也简略防备,成功率较低。近年来,新式的边频进犯技能因其较高的收益本钱比而被广泛运用。尽管智能卡业界关于边频进犯的处理方案已有了越来越多的知道,但是许多智能卡关于这类进犯仍毫无免疫力。现在,运用最为广泛的边频剖析和边频操作技能包含:差分能量剖析技能DPA(Differential Power Analysis)与能量短脉冲波形搅扰(Power Glitching)技能。下面要点就这两种边频进犯的办法加以剖析,并给出相应的安全战略。

  3 差分能量剖析

  3.1 DPA进犯的剖析

  DPA(差分能量剖析)进犯是经过用示波镜检测电子器材的能量消耗来获悉其行为的。图2为某智能卡用DES算法加密时的能量追寻图。

  能量消耗是不接连的并呈现出某种形式。众所周知,用DES算法对一个输入数据加密时需求履行16次循环,因此能够在能量轨道的16次重复形式中识别出这些循环。进犯者只需知道算法的明文(输入)或密文(输出),经过剖析和比较一系列的能量轨道就可重现加密密钥。DPA进犯的根底是假定被处理的数据与能量消耗之间存在某种联络,换句话说,假定处理0比1所用的能量要少(反之亦然),那么对两个不同数据履行同一算法的两个能量轨道会因为输入数据的不同而发生细小的不同。用核算机严厉按时钟核算两条轨道的差得到差分轨道,差分轨道中呈现峰值的时间便是输入数据发生不同的时钟周期。如此查看加密算法的一切输入以及每一对0和1发生的差分轨道,就能够识别出它们呈现在程序代码中的切当时间,然后获取加密密钥。

  DPA使得加密算法的内部处理进程能够被研讨,这一危险性对智能卡安全提出了更高的要求。加密算法有必要运用满足长度的全密钥,以确保探究密钥的进程因过于耗时而不可行。一个完好的算法一般在加密进程中分化成许多小进程以使处理器能够完结。这些小进程往往不运用全密钥而是用其间的一部分。DPA能够获取这些小进程的输出并探究出这些较短的密钥值,因此,从理论上说,一切加密算法都可用DPA破解。尽管这种进犯办法的开发十分复杂,但是其运用却十分简略且只需很小的出资,所需的设备仅限于1台PC及中等精度的示波镜,因此处理DPA问题成为智能卡制造商最急需面临的问题之一。

  3.2 DPA进犯的安全战略

  应对DPA进犯的安全战略根本分为三个层面:硬件、软件和运用层面。

  (1) 硬件层面的反办法

  ① 选用平衡电路下降信号能量,以及设置金属防护以按捺电磁发射。

  ② 履行并行随机处理来加大幅值噪声水平。例如,内部编程电压发生电路可用作并行噪声发生器。

  ③ 随时处理中止引进的时间噪声和不同的时钟频率。对差分轨道进行核算机处理的根底是轨道可摆放。在参加轨道之前处理器的作业进程应是同步的。时间噪声会防止或至少阻碍轨道很好地摆放。

  硬件反办法的好处在智能卡关于侧路进犯的敏感性比较少地依赖于软件的改动,但其缺陷在于只能下降智能卡关于侧路进犯的敏感性而无法彻底消除它。事实上,硬件防备办法仅仅将信号下降到噪声水平然后使进犯变得困难。

  (2) 软件层面的反办法

  ① 选用随机处理次序来削减相关的信号。例如,算法中的平行置换(比如DES中的S盒)可依随机的次序来完结,置换的数目从头排序,则可将一次置换发生的信号分化。

  ② 运用随机延时和改动途径来添加计时噪声。计时噪声会阻碍轨道的摆放,并下降差分轨道的质量。

  ③ 消除密钥值及中心前言值的时间依存性。当处理进程取决于密钥值时,直接用肉眼调查轨道就可完结简略的能量剖析;而在时间上接连的密钥处理进程则可防止这种易行的进犯。

  ④ 用随机值来荫蔽中心前言值。能量的走漏取决于一个数据中的位数。假如在实践数据上加上随机数据,处理完之后再减去,那么传递的途径将不会走漏有用的信息。不过,这种荫蔽将会导致传递函数的非线性并发生过错的成果。因此,这些函数需求细心地从头规划,以补偿由随机数据引起的违背。

  理论上来说,软件对策完美地处理了DPA进犯的问题。但是这种办法有必要针对某种算法定制且其规划适当困难,因此十分贵重且难以保持。

  (3) 运用层面的反办法

  ① 重规划数器,用于约束进犯者打听的次数。接连三次PIN校验失利后自锁是防备差分能量剖析的有用办法。

  ② 约束加密算法中输入输出的操控和可见度。假如只能挑选部分输入,或只要部分算法的成果回来,进犯者就无法完结差分能量剖析。

  以上是防备DPA进犯的根本办法,其缺陷是对可靠性的负面影响以及需求改动已有的协议。

4 能量短脉冲搅扰

  4.1 能量短脉冲搅扰进犯的剖析

  微处理器要求在安稳的电压下作业,能量供给的中止就好像忽然冲击程序运转或复位电路。但是,一个短而奇妙的脉冲能够引起单步的程序过错而微处理器仍能持续履行程序。例如, CPU读取存储单元的内容,晶体管用一个阈值来检测存储单元的值,以确认所读的是逻辑“0”或“1”。忽然呈现的能量短脉冲对存储值和逻辑值都会发生影响。不同的内部容量会使存储值遭到不同的影响,有或许会使实在的值被曲解。如图3所示,与逻辑“0”对应的低电平在正常的操作状态下或许低于阈值电平,但是因为短脉冲的能量下压或许导致其高于阈值电平。

  许多加密算法都易受这一类毛病注入的影响。选用差分毛病剖析DFA(Differential Fault Analysis )技能将正确的与过错的暗码编码相比较,然后分出秘藏的密钥。有些算法仅当一个准确的中心值被突击时才干被进犯,而其他算法要求不那么严苛,能够在处理进程的任何方位被进犯。一般DFA要求有或许对同一个明文加密2次,发生一个正确的和一个过错的密文。

  毛病注入的第二种运用发生于安全处理进程要害的决议时间。若某一运用履行一个比如PIN校验的安全查看,那么在器材决议是持续仍是中止处理的那一刻进行进犯最为有用。进犯者有或许将 PIN校验失利转为成功以诈骗处理器。更为严厉的一种方法是,在处理器正要将校验失利写入存储器时彻底封闭电源,然后防止PIN校验失利计数器溢出。

短脉冲搅扰的第三种运用以操作通讯活动为方针。通讯协议的规划是为了从智能卡存储

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/267892.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部