IC卡技术讲座之五 IC卡的数据安全和加密
来源:中国一卡通网 作者: 发布时间:2006-12-29 12:13:59 字体:[大 中 小]
关键字:IC卡技术 IC卡数据 数据安全 加密
摘 要:IC卡上记录有大量重要信息,可以用于个人证件,也可以代替现金和支票进行交易购物,因此难免有不法分子实施对IC卡及其应用系统的各种各样的攻击手段.其目的包括获取非法利益,或破坏应用系统.因此,作为IC卡应用系统开发者必须为IC 卡系统提供合理有效的安全措施,以保证IC卡及其应用系统的数据安全.这些技术有: 身份鉴别和IC卡合法性确认,报文鉴别技术,数据加密通讯技术等. 这些技术采用可以保证IC卡的数据在存储和交易过程中的完整性,有效性和真实性,从而有效地防止对IC卡进行非法读写和修改.
IC卡上记录有大量重要信息,可以用于个人证件,也可以代替现金和支票进行交易购物,因此难免有不法分子实施对IC卡及其应用系统的各种各样的攻击手段.其目的包括获取非法利益,或破坏应用系统.因此,作为IC卡应用系统开发者必须为IC 卡系统提供合理有效的安全措施,以保证IC卡及其应用系统的数据安全.这些技术有: 身份鉴别和IC卡合法性确认,报文鉴别技术,数据加密通讯技术等. 这些技术采用可以保证IC卡的数据在存储和交易过程中的完整性,有效性和真实性,从而有效地防止对IC卡进行非法读写和修改.
影响IC卡及应用系统安全的主要方式有以下几种:
1.使用用户丢失或被窃的IC卡,冒充合法用户进入应用系统,获得非法利益.
2.用伪造的或空白卡非法复制数据,进入应用系统.
3.使用系统外的IC卡读写设备,对合法卡上的数据进行修改.如增加存款数额, 改变操作级别等.
4.在IC卡交易过程中,用正常卡完成身份认证后,中途变换IC卡, 从而使卡上存储的数据与系统中不一致.
5.在IC卡读写操作中,对接口设备与IC卡通信时所作交换的信息流进行截听,修改,甚至插入非法信息,以获取非法利益,或破坏系统.
针对以上种种不安全因素,开发者需要在几个方面来采取防护措施,以保证数据安全.
IC卡安全防护的首要任务是防止对IC卡本身的攻击,这种防范措施在IC 卡制造和个人化过程中就已经开始了.在IC 卡制作和卡片表面印过程中都采用了十分复杂的防伪技术,以增加非法伪造者的难度.对厂商代码有严格保密方法,对IC 芯片加特殊保护层,可防止对存储内容用电磁技术直接分析.在IC卡发行和个人化过程中, 发行商密码,擦除密码应由系统产生,而不能为操作人员所握,防止系统内部人员犯罪.
在IC卡使用过程中,要防止被非法持有人冒用.故在IC卡读写前要验证持卡人身份,即进行个人身份鉴别.IC卡上提供了用户密码(总密码),在个人化时由用户输入,系统中不保存.在使用时,要求用户自己键入,以确认用户身份. 如果连续几次输入有误,IC卡将自行锁定,不能再使用. 这一措施可有效地防止非法持卡人用多次试探方法破译密码.在一些新型IC卡上还采用了生物鉴别技术,如使用持卡人指纹识别, 视网膜识别等.即使用户密码泄露,其他人也无法使用本人的IC卡.
对于丢失后挂失的IC卡和因特殊原因作废的IC卡, 应在系统数据库中设立所谓的-黑名单-,记录下这些卡的发行号.在有人重新使用时,系统将报警,并将卡收回.
IC卡使用中,也要对读写器的合法性进行鉴别.这可以通过分区密码式擦除来实现,如果系统不能提供正确密码,IC卡内容不能读出和修改. 防止了使用非法读写设备来窃取卡上数据.
对于IC卡内部存储的数据可以采用区域保护技术,即将IC卡分为若干个存储区,每区设定不同的访问条件,如果访问符合本区条件,才充许访问,否则锁定. 例如自由访问区内允许随意读,写和修改,保护数据区内的读,擦,写受密码保护; 而保密区内存放的密码则根本不允许读,写和修改.对此区进行此类操作被视为非法入侵, 即锁定系统.这种方法可以有效地防止非法入侵者用读写器逐一探查存储器内容.
对IC卡数据安全威胁最大的不在数据静态存储时,而在对IC 卡正常的读写过程中.因为用户密码,系统密码在核实时都必须通过读写器接口送入IC卡. 因此用各种技术手段,在读写过程中窃取通信数据,从而了解存储分区情况和系统密码就十分可能.便如:在一个合法IC卡输入读写器完成用户证后,读写过程中则换上其它IC卡,从而回避了验证过程,非法读出或写入数据.这种情况可在读写器上加专门机构加以解决.即每当换卡后,都要求重新核实用户身份.而对于采用仪器窃听通信内容,包括核实密码过程的入侵方式,则只有通过对输入输出信息采用加密技术才能有效保护.这可以利用智能IC卡(即CPU卡)的数据处理能力,运行加密,解密算法程序,从而实现传输来解决.
对读写器与IC卡传输信息的保护有两种方式.
1.认证传输方式
将在读写器与IC卡之间传送的信息加上相应加密算法及加密密钥将传送信息──其中包括信息头(传输控制信息)和信息主体部分──进行加密, 得到的密文附加在明文信息尾部传输给接收端,称为认证信息.接收端则对收到的信息按规定算法进行认证,认证通过则进行正常读写,否则报警. 这种方式可有效防止非法插入或删除传送数据.虽然传送以明文进行,也不会已修改而不被发现.而认证信息则是加密的,要由密码算法产生和处理.如果设计合理,附加的认证信息除了具有认证功能外,还可以具有查错甚至纠功能.
2.加密传输方式
这种方式就是要对所有传送信息进行加密后再进行传送, 使信息本身具有保密性,不易破译.因此,即使入侵系统后取得信息,也无法利用.
通常把一个加密系统所采用的基本工作方式叫作密码体制. 一个密码体制由两个要素组成:即加密算法和密钥.加密算法是一些公式或法则, 一般由存放在计算机中的程序来执行,密钥则可以看作密码算法执行中的可选参数,没有密钥, 了解算法也无法解密.因此,密码算一般是公开的,如由IBM公司开发并被普遍采用的DES算法,它将64位明文经过密钥处理成为64位密文.还有属于非对称密钥系统的DSA算法,这种算法中加密密钥为公开密钥,解密密钥与加密密钥不同,可有多个, 这种方法更适应于开放式应用环境.现在市场上有执行相应加密算法的专用芯片问世,在IC卡系统中可以方便地选用.采用加密传输方式,可以大提高IC卡应用系统的安全性能, 当然也受一定的限制,在简单的存储卡上难以采用,主要用在智能CPU卡系统中.
总之,卡片应用系统是一种用量大,使用人数多,涉及领域广的应用系统,因此对安全性要求很高.作为开发者在设计系统时,必须对信息安全加以周密考虑, 并且采取有效错施.好在IC卡具有巨大存储容量和智能处理能力,实现各种安全措施十分方便,有效,安全性能大大优于磁卡,光电卡,这也正是IC卡应用系统的主要优势.
新闻投稿合作邮箱:yktchina-admin@163.com 字体[大 中 小] [收藏] [进入论坛]