用于检测伪造的和/或修改的智能卡的方法和终端的制作方法

文档序号:6376237阅读:260来源:国知局
专利名称:用于检测伪造的和/或修改的智能卡的方法和终端的制作方法
技术领域
本发明涉及一种检测被插入到一个终端的物理接口中的伪造的和/或修改的智能卡的方法和相应的终端。
背景技术
智能卡通常被用于各种各样的应用中,以便有权开支票、付款、卫星电视、数据存储等等。举例来说,健康保险和银行业广泛地使用智能卡。一个智能卡通常在大小与形状方面类似于一张信用卡,但是一般在里面包含一个嵌入式微处理器。具有读卡器的终端与控制对卡上的数据的存取的微处理器进行通信。智能卡可以例如和一个智能卡阅读器一起使用,该智能卡阅读器被附装于或位于个人计算机中以验证用户等等。智能卡阅读器还可以在移动电话中用于SIM读取以及用于自动售货机。
对于一个具有智能卡读取能力的专用和/或家用终端,例如机顶盒(STB)、集成数字电视(IDTV)、数字电视、家用网关、存取系统、GSM、因特网音频组、汽车系统等等,暗中监视智能卡和/或安全存取卡与所述终端之间的电子通信的可能性比在公用的自动取款机(ATM)或类似的半公用/公用的如用于/与电子商务有关的终端中大得多。这就使得能够向所述智能卡进行攻击,该智能卡在公用的和/或半公用的终端中不可能具有传统智能卡的应用程序,由于所述操作在一个私人的范围中进行。
欧洲的金融和服务业联盟Finread试图标准化电子商务终端的形式,该电子商务终端用在公用的ATM和个人计算机(PC)以及未来的STB、IDTV和类似的家用终端中。直到现在,所述联盟已经集中于用于家用电子商务终端的昂贵的窜改检测和抗窜改的结构。嵌入的Finread是所述Finread联盟的一部分,所述Finread联盟检查用于电子商务的低成本终端如IDTV、Jave终端和STB的发布。对于低成本的家用终端而言,为专用终端(即ATM)通常采用的抗窜改的和其它对抗措施的费用被认为是复杂的和/或昂贵的。
存在各种各样的智能卡/安全存取卡,一些不具有复杂的处理能力,一般是只存储卡。其它的卡一般是所谓的多应用/多功能卡,其包含更高级的性能与功能,一般提供所述卡的用户/所有者的安全验证,例如涉及可以使用设备、帐户、功能、货币转移、电子商务应用等等。
这样的卡具有卡上动态数据处理能力,并且把卡存储器配置成为独立的部分,所述部分被分配给一个特定的功能和/或应用。
所述多应用/多功能智能卡由一个发行者来分发,但允许两个或多个应用/功能驻留在所述智能卡上。一般地,高级的32位处理器卡用于该目的。
Java智能卡是一个具有Java虚拟机(JVM)的智能卡,其允许应用程序进入并驻留在所述卡上。这样,Java智能卡是向多应用智能卡的第一阶段。
如所述的传统智能卡仅仅运行一个进程,而Java智能卡具有在卡上运行多个进程的能力,这是所述智能卡防护能力的增强,其允许所述智能卡不仅执行安全的交易,而且监视它本身和出现的攻击。
一般被指定为子终端的设备是包括一个终端的某些功能部件的设备,所述功能部件即用户输入端、显示器、存储器和与所述因特网的一个远程连接、或一个广播频道,然而并非所有的功能部件。因而一个终端是完整的,并且例子是例如IDTV、STB或GSM(或类似的像3G、UMTS、GPRS等等的蜂窝系统),但一个子终端是不完整的。这样,子终端是一个终端的低成本方案,其提供一个终端的一些而不是全部功能。子终端的一个例子是例如电视遥控装置。所述子终端也可以是例如在STB和/或TV中执行的条件访问系统的条件访问模块(在美国一般表示为POD(配置点))。条件访问模块是一个基于DVB的术语,它是由用于DVB终端的公共接口概念引出的。
通过足够资源的攻击实体可以成功地攻击大多数系统。然而对适度地资源安全性攻击提供充分的防御(保护和/或检测)或至少提供与其他相比较足以使得单一形式的攻击不再成功的对抗措施是必需的。用一种花费不多的方法来实现这个也是所希望的。
伪造的终端可以使用粗心用户的个人识别码或所述卡的其它应用信息,这很难防御,于是将需要除本发明提供的方案之外的其它保护/检测方案。
然而,向真正的终端/子终端的典型的安全性攻击是使用一个模拟有效卡的功能的智能卡和/或使用一个修改的智能卡,例如已修改以便在一个终端中可以使用另外的受限制的业务、功能等等。
专利说明书US 5,416,423公开了一种通过检测连接所述卡的导线的电容来检验智能卡的完整性的方法。然而,这种特定检验方法要求电线连接到卡上以便获得关于一种模拟外电路的智能卡是否被耦合到那里的信息。此外,设计和编程一个智能卡是众所周知的,对于普通卡读取终端而言,该智能卡可能与一种经授权的卡在功能上是不能区分的。根据上述专利说明书的终端不能检测模拟另一个智能卡的智能卡,也就是当没有外电路用电线连接到那里的时候。

发明内容
本发明的目的是提供一种检测被插入到一个终端的物理接口中的伪造的和/或修改的智能卡的方法(和相应的终端),其中所述方法(和终端)提供对通过另一个和/或窜改一个有效的智能卡来替换一个有效卡的一些类别的检测和/或保护。一个进一步的目的是以一种简单的方法来提供这个。更进一步的目的是能够检测包含像恶意(rogue)数字电视应用(即所谓的“诈骗(roguelet)”)一样的未被授权的应用程序的智能卡。
这通过一种检测被插入到一个终端的物理接口中的伪造的和/或修改的智能卡的方法(和相应的系统)来实现,所述方法包含下列步骤●由一个电流监控器执行一系列的电流测量以便获得第一电流特征(current signature),●比较获得的第一电流特征和第二电流特征,该第二电流特征表示智能卡的唯一电流特征,和●确定存在于第一电流特征和第二电流特征之间的差异是否在预定范围内。
这样,获得了一种检测伪造的和/或修改的智能卡的简单的方法。另外,有可能检测(并从而防止)伪造的卡和/或驻留在智能卡上的“诈骗”应用程序。
在优选实施例中,第二电流特征是IDDQ电流特征或ICCQ电流特征。
这样,提供了一种获得对智能卡是唯一的特征的简单而可靠的方法。
在一个实施例中,所述方法进一步包含下列步骤●根据所述确定步骤调节智能卡的使用。
这样,有可能执行像密切监视伪造/修改的卡的使用、完全拒绝所述卡等等之类的各种适当的操作。
在一个实施例中,所述方法进一步包含下列步骤●测量并存储一个耦合到所述终端的智能卡的电流特征。
因此,可以在由终端(本地的和/或远程的)存储的已知的特征和当使用所述卡进行随后的交易时所述卡的签名之间进行比较,从而同时能够检测所述卡是否已经被修改。
在优选实施例中,通过一个将由智能卡执行的并驻留在所述智能卡中的自测程序确定所述序列。
这样,所述测试程序的序列然后对于所述卡的制造商和终端(101)的测试应用程序是确定且已知的。
在一个实施例中,第二电流特征从一个数据库中被检索和/或被包含在一个数字证书中。
本发明也涉及一种与根据本发明的方法对应的终端。
更具体地说,本发明涉及一种用于检测被插入到所述终端的一个物理接口中的伪造的和/或修改的智能卡的终端,所述终端包含●适合于执行一系列的电流测量以便获得第一电流特征的控制器,和●用于执行所述序列的电流测量的电流监控器,●其中所述控制器进一步适合于●比较获得的第一电流特征和第二电流特征,该第二电流特征表示智能卡的唯一电流特征,和●确定存在于第一电流特征和第二电流特征之间的差异是否在预定范围内。
在优选实施例中,第二电流特征是IDDQ电流特征或ICCQ电流特征。
在一个实施例中,所述终端进一步包含装置以用于●根据所述确定步骤调节智能卡的使用。
在一个实施例中,所述终端进一步包含装置以用于●测量并存储一个耦合到所述终端的智能卡的电流特征。
在一个实施例中,通过将由智能卡执行的并驻留在所述智能卡中的自测程序确定所述序列。
在一个实施例中,第二电流特征从一个数据库中被检索和/或被包括在一个数字证书中。
进一步地,本发明也涉及一种计算机可读介质,其具有存储在其上的用于使一个或多个处理单元执行根据本发明的方法的指令。


图1示意性地说明智能卡;图2说明智能卡和现有技术的终端;图3示意性地说明根据本发明的实施例的终端。
具体实施例方式
图1示意性地说明一般的智能卡。显示的是在现有技术中为大家所熟知的安全卡/智能卡(100)。一般而言,卡(100)具有标准尺寸信用卡的形状,不过所述形状、布局、大小等等都可以变化。卡(100)一般包含嵌入的存储器、处理器/控制器和用来经由许多触点(100′)与合适的读卡器/(子)终端(未示出)通信的输入/输出(I/O)。所示的触点(100′)(为了说明的目的其尺寸被夸大/扩大)遵循ISO 7816部分2的标准,并且包含电源(10)、接地(11)、根据具体的卡可用于不同功能的三个可选择的触点/管脚(12、14、15)、双向的输入/输出管脚(13)、校验(16)和复位(17)。所有这些信号由一个接纳所述卡的终端提供给智能卡(100),并且所述终端期望根据所述标准协议来监视双向的输入/输出(13),以便观察智能卡(100)的响应。
这样的卡(100)可以用于存储类似于个人识别码、识别信息、个人信息、安全信息等等之类的信息。
图2说明智能卡和一般的现有技术的终端。显示的是经由智能卡接口通信的智能卡(100)和终端(101)。终端(101)包含主处理器(105)和智能卡接口(106)以及可选地通信/IP链接,例如对于各种电子商务应用或其它的功能是有用的。
当插入到一个私人和/或家用终端/子终端(101)(此后两者都被表示为终端)中时,从来自于一个中心源的电源中为智能卡(100)提供能源,并且接地将是终端的(101)电力系统的中心接地,因为智能卡(100)不具有电源。所述终端(101)中的智能卡接口(106)的控制信号一般将由串行接口提供,该串行接口由所述终端(101)的中央处理器(多个)(105)编程以执行所述标准协议来寻址所述智能卡的接口。这是一种非常廉价且灵活的配置,其允许终端/STB软件的开发者使用标准的电子接口和进程以访问所述卡。然而,如上所述,标准串行接口的使用使得所述终端(101)向由暗中监视所述通信窜改的形式开放。
图3示意性地说明根据本发明的实施例的终端。显示的是对应于结合图1所显示和解释的智能卡的一个智能卡(100)。同样显示的是一个对应于结合图2所显示和解释的终端的一个终端(101),例外的是它进一步包含监控电路(102)和控制器(104),其中所述监控电路(102)被连接到物理的智能卡接口(115)和控制器(104)上,且控制器(104)进一步被连接到主处理器(多个)(105)上。优选地,监控电路(102)、控制器也被集成到/嵌入到所述终端(101)的IC(110)中,其中IC(110)控制物理的智能卡接口(115)。
为了检测一个耦合到物理接口(115)上的智能卡(100)是否是伪造的和/或修改的,一个耦合到终端(101)的真实的智能卡(100)的电流特征(也就是第一电流特征)被获得。
伪造的和/或修改的智能卡(100)可以模拟一个有效的且授权的卡的功能,但是不会显示同样的电流特征,因为根据本发明对于每张卡的电流特征是唯一的。这样,有可能既检测伪造的卡,又检测已经被窜改的原来有效的卡,例如用一种非常简单的方法可以使用其它应用,如在下文中更详细地解释的。
监控电路(102)优选的是一个动态电流监控电路,其允许与智能卡(100)连接的电流被检测、确定、监控等。
电流监控电路(102)更具体地说被连接到所述物理卡接口(115)的VDD(例如所述图1中的电源管脚(10))输入。可替换地,监控电路(102)可以替代地连接到物理接口(115)的VCC(例如图1中的接地管脚(11))输入,或两者都进行连接(这更进一步地增强了安全性)。这样可以在VDD上或者在VCC上或者在两者上执行检测。
物理接口(115)耦合/电连接IC(110)和智能卡(100),并且优选的是一个具有去耦VDD线对地的控制电平的DC接口。
可以根据许多技术测量电流,所述技术包括使用一个或多个电流反射镜、一个或多个电压降传感器等等。许多用于测量集成电路的电流特征的技术已经在文献中进行了描述,并且一般被用于IC的调试、测试和测量的目的。
这些技术包含用于监视如IDDQ或者和/或ICCQ的方法。它们也提供结合电流监控电路(102)和电源的电压调整以确保智能卡(100)的正确工作的能力。
测量CMOS集成电路或包含CMOS IC的成品的漏电流的过程一般被称为“IDDQ”或“ICCQ”测试。所述IDDQ/ICCQ是在CMOS电路的静态期间出现的静态电流。当IC处于静态时,根据本发明的测量法测量VDD和/或VCC电源的电流。如所提到的,IDDQ或ICCQ测试通常用于IC调试、测试和测量的方面,例如检查短路的栅氧化极和其它可以随着时间的过去引起故障的IC缺陷。
电流的幅度一般是非常小的,因为它是来自于所述电路的栅极的P和N MOSFET网络对的漏泄的总和。实际的电流通过MOSFET的Vt来确定,其中MOSFET的Vt是一个通过管芯(die)和晶片的随机变量。这个随机变量在制造期间被以非常严格的限制来控制;然而当在一组状态上测量时,每个电路具有唯一的IDDQ(和ICCQ)特性。因此根据本发明,这种测量非常适合用于检测修改的/伪造的智能卡。
在终端的IC的控制器(104)中的执行控制程序确定电流采样的定时。这个程序将确定在程序中什么时候电流特征应该被测量,它应该如何与已知的特征(即第二电流特征)比较以及根据比较的结果应该采取的任何操作。为了避免窜改,尽可能多的这些操作应该独立于终端(100)的中间件。
为了测量电流特征,必须驱动智能卡通过多个/一系列状态。这些状态可以以任何顺序被输入,然而电路的逻辑状态必须对于电流测量是已知的,以便与所期望的或已知的电流比较。一种改变智能卡(100)状态的简单方法是一个将由智能卡(100)执行的并驻留在智能卡(100)中的自测程序。这样,所述测试程序的序列然后对于所述卡的制造商和终端(101)的测试应用程序是确定且已知的。
优选地,所期望的/已知的/第二电流特征是带有界限的范围,即额定电流的下限和上限。进一步地,如果需要的话,电流特征可以被校准/修改以补偿由极端的温度引起的可变性。这种技术在IC测试领域中为大家所熟知,因为它们为大部分的测试程序所共用,在大部分的测试程序中使用在房间以及高温下的测试。
单个卡的特征可以例如通过卡的发行者保留在数据库或其它存储器中,并且一个交易的任何验证最好使用智能卡(101)的电流特征以核实真实性。所述数据库或存储器可以例如是本地的或远程的,其中通信/IP链接可以用来检索信息。可替换地,电流特征也可以是数字签名(digital signature)的一部分,例如也是通过通信/IP链接可获得的。
进一步地,电流特征可以通过终端(101)中的电路(未示出)来测量,并存储以备将来之用。这样,可以在由终端(本地的和/或远程的)存储的已知的签名和当使用所述卡进行随后的交易时卡的签名之间进行比较,从而同时能够检测所述卡是否已经被修改。
另外,对于一种类型的卡或卡的应用程序具有特性签名(characteristic signature)的更复杂的方案可以容易地成为设备。然而,在这些复杂的方案中,一些部分一般必须具有与这个特定情况相关的测量的唯一序列。
电流特征的长度可以是虚拟无限的长度。电流测量技术已经被发展,其非常接近于专用电路的运行速度。假定CMOS智能卡是非常低性能的设备,其中功率耗散是有限的,则有可能在没有损失吞吐量的情况下连续监控电流特征。
进一步地,可以设计其中卡(100)经由电流特征发信号给/与所述终端(101)通信的方案。这个经由电流特征的发信号可以例如作为特定应用的一部分实现,并且在卡(100)和终端(101)之间的正常通信被怀疑时或在卡(100)已经被插入到一个伪造的终端中并且驻留在卡上的应用程序正在寻找终端真实性的某种确认的情况下将是非常有用的。这个创建或修改电流特征的能力由智能卡来使用,以利用电流监控技术来抵抗对加密算法的攻击。因此,为允许通信而扩展电路将是相对较简单且容易实现的。
权利要求
1.一种检测被插入到终端(101)的物理接口(115)中的伪造的和/或修改的智能卡(100)的方法,所述方法包括下列步骤·由电流监控器(102)执行一系列的电流测量以便获得第一电流特征,·比较获得的第一电流特征和第二电流特征,该第二电流特征表示智能卡(100)的唯一电流特征,以及·确定存在于第一电流特征和第二电流特征之间的差异是否在预定的范围内。
2.根据权利要求1所述的方法,其特征在于第二电流特征是IDDQ电流特征或ICCQ电流特征。
3.根据权利要求1-2所述的方法,其特征在于所述方法进一步包括下述步骤·根据所述确定步骤调节智能卡(100)的使用。
4.根据权利要求1-3所述的方法,其特征在于所述方法进一步包括下述步骤·测量并存储被耦合到终端(101)的智能卡(100)的电流特征。
5.根据权利要求1-4所述的方法,其特征在于通过一个将由智能卡(100)执行的并且驻留在智能卡(100)中的自测程序来确定所述序列。
6.根据权利要求1-5所述的方法,其特征在于所述第二电流特征从一个数据库中进行检索和/或被包括在一个数字证书中。
7.一种用于检测被插入到终端(101)的物理接口(115)中的伪造的和/或修改的智能卡(100)的终端(101),所述终端(101)包括·适合于执行一系列的电流测量以便获得第一电流特征的控制器(104),以及·用于执行所述序列的电流测量的电流监控器(102),·其中控制器(104)进一步适合于·比较获得的第一电流特征和第二电流特征,该第二电流特征表示智能卡(100)的唯一电流特征,以及·确定存在于第一电流特征和第二电流特征之间的差异是否在预定范围内。
8.根据权利要求7所述的终端,其特征在于第二电流特征是IDDQ电流特征或ICCQ电流特征。
9.根据权利要求7-8所述的终端,其特征在于所述终端进一步包括装置(104;105)以用于·根据所述确定步骤调节智能卡(100)的使用。
10.根据权利要求7-9所述的终端,其特征在于所述终端进一步包括装置以用于·测量并存储被耦合到终端(101)的智能卡(100)的电流特征。
11.根据权利要求7-10所述的终端,其特征在于通过一个将由智能卡(100)执行的并且驻留在智能卡(100)中的自测程序来确定所述序列。
12.根据权利要求7-11所述的终端,其特征在于所述第二电流特征从一个数据库中进行检索和/或被包括在一个数字证书中。
13.一种在其上存储有指令的计算机可读介质,该指令用于使一个或多个处理单元执行根据权利要求1-6中任何一个所述的方法。
全文摘要
本发明涉及一种用于检测被插入到一个终端的物理接口中的伪造的和/或修改的智能卡的方法和终端,所述方法包括下列步骤由电流监控器执行一系列电流测量以便获得第一电流特征;比较获得的第一电流特征和第二电流特征,该第二电流特征表示智能卡的唯一电流特征;以及确定存在于第一电流特征和第二电流特征之间的差异是否在预定的范围内。这允许伪造的和/或修改的智能卡的简单检测。进一步地,有可能检测(并由此防止)错误的卡和/或驻留于智能卡上的“诈骗”应用程序。
文档编号G06K5/00GK1739113SQ200380108765
公开日2006年2月22日 申请日期2003年12月5日 优先权日2003年1月14日
发明者K·巴克 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1