来自:hk0626 > 馆藏分类
配色: 字号:
非接触式IC卡干扰式旁路攻击与防护
2012-02-06 | 阅:  转:  |  分享 
  
学术研究

。:。矗爱Acadefll{cResearch

非接触式IC卡干扰式旁路攻击与防护

蒋烨,薛质,王轶骏

(上海交通大学信息安全工程学院,上海200240)

【摘要】为了适应非接触式Ic卡在经济生活中的广泛应用。论文深入研究了对非接触式IC卡的旁路攻击理论和干

扰式攻击的方法,并且针对非接触式Ic卡的旁路攻击原理,干扰式攻击行为,以及针对RSA和DES算法的特殊扰

动攻击行为,研究出适用于此类攻击行为的防护方法。这些方法中包括随机化。对密码的保护措施和盲化技术。通过

运用这些方法我们在理论上可以达到防止非接触式IC卡干扰式旁路攻击的目的。

【关键词】旁路攻击,干扰式攻击IRSA算法。DES算法

【中图分类号】TP309【文献标识码】A【文章编号ll009—8054(2008)03-0052—03

Non-contactICCardDisturbsDyadicBypassAttackandProtections

JIANGYe,XUEZhi,WANGYi-jun

(InstituteofInformationSecurityEngineering,ShanhaiJiaoTongUniversity,Shanghai200240,China)

[Abstract]Thispaperdescribestheprincipleforaon-contactIC,disturb—modedyadicaggressivebehaviour,peculiar

perturbationattackonRSAandDESandprotectionmethodsagainsttheseattacks,includingrandomizedaggressive

behaviours,andtheprotectionofthepasswordsandblindness,technology.

[Keywords]sidechannelattack;disturbattack;RSAAlgorithm;DESAlgorithm

O引言

随着社会经济生活的快速发展和电子信息技术的不断进

步,非接触式IC卡开始应用在各个地区,不同行业,并呈现

出快速发展的势头,对社会经济,金融体系,支付结算体系

产生重要影响。由于非接触式Ic卡业务的不断扩展,整个行

业面临的安全威胁日益增加,攻击种类也不断翻新。目前对

于非接触式IC卡的攻击方法主要有三种类型入侵式攻击方

法(也称逆向工程X非入侵式攻击方法半入侵式攻击方法131。

其中非入侵攻击不损坏卡片并且对不同的卡片的攻击方法是

类似的。非入侵攻击的受害者往往不知道自己已被攻击,而

且非入侵攻击所需的设备价格低廉并容易复制,所以非入侵

收箍日期:2007-09-19

作者简介:蒋烨.男,1982年生,硕士研究生,研究方向:

信息安全;薛质。男,1971年生,教授,研究方向:计算机

通信网和信息安全方面的教学科研工作;王轶骏,男,1980

年生,讲师,研究方向:黑客攻防。

52I凹凹晒cismag@①圆圆衄

式攻击更具危害性。

本文将论述一种针对非接触式IC卡的特殊非入侵方

式:干扰式旁路攻击。这种攻击是近几年才有真正应用的

攻击方式,较之其他旁路攻击方式它具有更隐蔽,更快速

的特点。’

1旁路攻击原理

旁路攻击是基于分析通过旁路获取的信息来破解密码算

法。旁路信息是从器件执行密码运算时释放的既不是明文也

不是密文的运算过程相关信息。过去通常将密码器件看成黑

盒子,密码器件的破解通常仅根据密码数学算法、输出的密

文和输入的明文来分析密钥,即已知密文攻击、已知明文攻

击,以及选择明文攻击。但是近年发现,密码器件的输入输

出除了明文,密文外还有其他输入和输出。密码器件产生的

时间信息(执行密码运算消耗的时间)、功耗信息(执行密码运

算消耗的电能)、各种辐射信息(芯片做密码运算产生的电磁辐

射等)等等都是密码器件的旁路输出信息【l】,这些信息都可以

检测采集到,以用来分析密钥。同时密码器件还有时钟信号,

供电电压,环境温度等除了明文的其他输入.即旁路输人

万方数据

信息,通过人为操纵这些旁路输入信息可以分析密码器件

的密钥。旁路攻击充分利用这些芯片做密码运算释放的旁

路信息,并结合传统的密码分析技术来破解芯片内当前密

码算法使用的密钥。7

2干扰式攻击

干扰式攻击是旁路攻击的一种子类型。在干扰攻击

中,攻击者通过将芯片放置于异常物理环境中有意使得芯

片指令的执行出现故障或错误。干扰式攻击通常用来将芯

片关键指令的执行替换成任意其他指令的执行,也可以用

来在数据传递于寄存器和存储器间时更改传输数据【21。目

前已知的干扰方式有时钟信号的短暂扰动,电源供应的短

暂扰动,外部电磁场的短暂扰动等,这些扰动可以使芯片

指令执行出现故障,但仅仅影响很少的指令循环而对其余

指令没有影响。干扰式攻击的对象,即用来通过扰动替代

的芯片指令有程序执行跳转指令或跳转指令前的测试指令

等。干扰式攻击在芯片的许多安全应用的处理过程中产生

一个安全性很弱的阶段,使得攻击者可以跳过复杂的密码

控制指令,使得像认证等安全控制代码被跳过。指令扰动

也可以用来延长程序循环的时间,.比如在端口数据输出时

可以读取存储数据的等多内容,同样,指令扰动也可以简

短程序循环的时间,比如减少密码运算的轮运算,使得算

法更易攻击。

时钟信号扰动是目前最容易和有效的干扰方式,通过

在一个到两个时钟周期内短暂增加时钟频率可以在芯片执

行下一指令前扰乱当前执行的指令。功耗分析可以用来在

扰动中监视程序走到哪一步,比如是否走到一个条件分支

指令运行前,以辅助扰动的效果。时钟频率的进一步提高

可以使得芯片处理器没有足够的时间将跳转地址写入程序

计数器而使得程序分支跳转无法执行。瞬间扰动可以应用

在时钟信号或电源信号上,因为不同数目的逻辑门可以延

迟各种信号路径(而改变芯片电路参数),通过改变扰动的精

确时间和长度,可以使得芯片处理器执行一系列完全不同

的错误指令,具体的效果随着芯片的不同而不同。

2.1针对NSA算法的特殊扰动攻击

如果芯片中的RSA算法实现在计算签名:通过分别计

算mmodP和mmodq,并利用中国剩余定理来计算

mroodn=pq,并且可以在前两个运算中的任意一个中

引入一个错误,则可以立即分解公钥模,从而破解RSA。

因为在这样的RSA实现中计算签名的大部分时间是进行m

modP和mroodq运算,所以扰动不需要很高的精确度

就可以成功。

学术研究

Academi露。Researchji鬈戮

2.2针对DES算法的特殊扰动攻击

当扰动可以使特定的指令失效时,则有一些直接的方

法攻击DES。例如,使DES运算中最后两个轮运算中用于

组合子密钥与数据输入到s盒的8比特异或运算中的一个

不工作,并对每~密钥字节做相同处理。这样得到的错误

输出密文与正常密文相比将有2到3个s盒的输出不同。采

用该扰动技术并使用针对分组密钥的差分分析技术,可以

得到由于故障引入引起的8比特密钥值中的5个比特没有

被异或,因而可以清晰得到。这样,利用在最后一个轮运

算中引入故障得到的6个密文,可以获取最后一轮子密钥

中的30比特值,其余子密钥比特值可以采用穷搜索得到。

如果扰动能使DES的部分轮运算变量或条件跳转失效,进

而可以将DES的轮运算数目降低,这样在得到至多lO个

错误密文时就可以彻底破解整个DES密钥。

除了可以通过扰动RC5的密钥方案来分析它,在芯片

中实现的RC5也可以成功地采用扰动攻击破解。

5抗扰动攻击的防护技术

抗击针对非接触式IC卡扰动攻击的防护技术主要包.

括:

——降低分组密码轮运算旁路信息输出频谱间的相关

性(通过引入随机时间移动和等待、引入哑运算指令.运算

执行的随机化等)。

——将关键汇编指令替换成对其时间功耗等的消耗难

以分析的指令,或重新进行完成算数运算或存储功能的部

分电路设计。

——变更针对密码算法的算数运算实现,使得在特定.

实现的芯片中难以进行扰动攻击,例如在分组密码运算的

每一轮将数据和密钥进行随机封装。

在所有这些防护中,对算数运算的改进是针对各种旁

路攻击的抵抗最有效的,也是代价最低的防护。基于软件

的防护方法包括引入哑指令,将指令执行的顺序随机化,平

衡内部数据的汉明重量、做内部数据比特组的分隔等。基

于硬件的防护通常包括时钟的随机化,功耗随机化和功耗

平衡、对指令集的运行和寄存器操作随机化等。然而这些

防护措施的有效性可以由各种信号处理过程技术降低。针

对扰动攻击的软件防护方法可以很好地隐藏密码运算,特

别是隐藏密码运算的存储器操作时间和运算执行时间。

3.1随机化

最常用的针对扰动攻击的防护是对相关数据的随机化。

相关数据可能通过各种旁路。例如功耗,电磁辐射或运行

时间等泄漏给攻击者。对相关信息随机化处理的目的是使



信息安全与通信保密·2008.3I53万方数据

学术研究

i鬟甏。餮Academl《ReSearch

得攻击者通过旁路只能获取随机信息,因而无法根据这些

旁路信息获取密码硬件模块的内部敏感信息。

3.2对于密码实现的考虑

在硬件或芯片中的密码算法可以通过硬件实现(以协

处理器方式)和软件实现(以嵌入式软件方式),一般而言,

密码算法的硬件实现比软件实现更有利于抵抗旁路攻击,

因为:

——硬件实现中,敏感信息的处理运算通常是并行的,

这样更难以获取相关旁路信息。

——密码的硬件实现使得密码运算速度远高于软件实

现。使得通过信号处理过程分析敏感信息更困难。

一般而言,扰动攻击是利用旁路泄漏的芯片在进行密

码运算操作时与内部数据或密钥相关的旁路信息来进行密

码分析,所以应该使芯片进行的所有相关运算操作的旁路

信息与处理的数据无关,例如芯片执行的密码运算操作所

消耗的时间应该与处理数据无关14】。也就是说,芯片进行密

码运算消耗的时间必须完全独立于输入算法、输人数据或

密钥。无论根据特定的输入或密钥比特进行什么样的子运

算操作,这些子运算消耗的时间必须相同。

上述使得操作运算无论处理的数据如何不同而消耗的

时间必须是常量这一要求可以阻止所有时间攻击。这是因

为这些时间攻击都是基于分析与输入数据和密钥比特相关

的运算时间差异进行攻击的。在公钥密码运算中影响算法

运行时间消耗唯一的输入数据特征是在模指数运算中指数

的长度,然而指数长度对于攻击者没有意义而且可以通过

其他方式获得。

3.3盲化技术

盲签名技术可以修改成盲化技术以阻止攻击者获取模

指数运算的输入。这种数据盲化技术有助于抵抗任何类型的

旁路攻击。然而,尽管使用盲化技术,数据的分布信息仍会

揭示每一操作的平均运行时间,这可以在分析公钥算法中用

来分析指数的汉明重量。如果数据完全盲化是重要的并且需

要将数据进一步秘密封装,可以在每一模指数运算前对指数

进行随机倍数运算。如果进行这样的操作,必须确保这一附

加的操作本身不具有时间旁路特征以被攻击者用来获取该随

机倍数。这一技术有助于阻止通过电磁辐射旁路,系统运行

波动、功耗改变等的旁路信息中获取模指数运算的信息,因

为指数在每一次模指数运算中都做了随机改变。

4结语

本文详细论述了针对非接触式IC卡的扰动攻击原理和

防护方法。由于非接触式IC卡的自身特点,攻击者采用非接

触的攻击方法较为便利,这对防范类似扰动式非侵入型攻击

提出了更高的要求。本文所列举的几类防护方法已可以防止

大多数扰动攻击或类似的旁路攻击,但随着攻击技术的不断

发展,防护技术也需要不断地、有针对性地创新。

参考文献

【l】中国金融集成电路(IC)卡规范【s】.2005版.

【2】银行卡联网联合技术规范V2.0【s】.

【3】金融Ic卡安全检测与评估机制及原理【s】.2006.

【4】金融IC卡借记贷记应用根CA公钥认证规范[s1.2006.‘疆

(上接第51页)

提高了系统的吞吐率和容错性。

该平台可以在入侵检测等系统中作为底层数据捕获使

用,具有广泛的实用价值。

参考文献.

【l】DeeringS,HindenR.IntemetProtocol。Version6

(IPv6)Specification【s】.RFC20461998.

【2】JohnEHopcroft。RajeevMotwani,JeffreyD.

Ullman.IntrOductiOntoAutomataTheory.

Languages,andComputation[M].AddisonWesley,

。2000.

54.1凹叩晒cismag@④000.@田

【3】RubiniA,CorbetJ.LINUXdevicedrivers[M].

Se—bastopol:0’Reflly&Associates,2002.

【4】WangBailing,、FangBinxing,YunXiaochun.

ResearchandimplementationofZero—-copypacket

captureplatform[J].ChinesejournalofComputers,

2005.

【5】YangWu,FangBLnxing,YunXiaochun,eta1.

Researchandimplementationofahigh——performance

distributedintrusiondetectionsystem[J].Journalof

BeijingUniversityofPostsandTelecommunications,

2004.

【6】罗浩,云晓春,方滨兴.多线程TCP/IP协议还原技术

的研究【n高技术通讯,2003.继~一

万方数据

非接触式IC卡干扰式旁路攻击与防护

作者:蒋烨,薛质,王轶骏,JIANGYe,XUEZhi,WANGYi-jun

作者单位:上海交通大学信息安全工程学院,上海,200240

刊名:信息安全与通信保密

英文刊名:INFORMATIONSECURITYANDCOMMUNICATIONSPRIVACY

年,卷(期):2008,""(3)

被引用次数:0次



参考文献(4条)

1.中国金融集成电路(IC)卡规范2005

2.银行卡联网联合技术规范V2.0

3.金融IC卡安全检测与评估机制及原理2006

4.金融IC卡借记贷记应用根CA公钥认证规范2006





本文链接:http://d.g.wanfangdata.com.cn/Periodical_xxaqytxbm200803022.aspx

授权使用:上海交通大学(shjtdxip),授权号:0016a9f1-9c94-4509-9dd7-9df501185662

下载时间:2010年9月18日

献花(0)
+1
(本文系hk0626首藏)