首页 理论教育 IC卡安全认证方法简介

IC卡安全认证方法简介

时间:2023-06-29 理论教育 版权反馈
【摘要】:安全认证用来在读写设备与IC卡进行数据交换之前,首先进行必要的安全认证,用来确认双方身份的合法性。安全认证有两种方式可以实现,一是通过密码进行安全认证;二是通过密钥进行安全认证。密码认证的方式比较简单实用,是一种常用的安全认证手段。

IC卡安全认证方法简介

安全认证用来在读写设备(包括智能卡表)与IC卡进行数据交换之前,首先进行必要的安全认证,用来确认双方身份的合法性。只有双方身份确认后,才能建立相互之间联系的通道进行必要的数据交换。如果双方不能确认身份的合法性,则不能建立进行数据交换的通道。

安全认证有两种方式可以实现,一是通过密码进行安全认证;二是通过密钥进行安全认证。

978-7-111-39929-2-Chapter03-5.jpg

图3-5 密码认证过程

1.密码认证

密码认证的过程如图3-5所示。IC卡在进行密码比较时,如果读写设备发来的密码与IC卡中存储的密码相同,IC卡向读写设备返回密码认证通过的结果,并打开IC卡数据与外部进行交换的权限。如果密码不同,则返回错误结果,IC卡数据与外部进行交换的权限被关闭。

在逻辑加密卡中使用的就是这种认证方式,同时智能卡中的口令密钥认证也是采用这种方式进行的。密码认证的方式比较简单实用,是一种常用的安全认证手段。其最大的缺陷在于进行认证的密码在线路上进行了传输,如果非法设备跟踪到密码认证的第一步,就比较容易破译整个密码认证过程,这样非法设备也能够正确地与IC卡进行密码认证,从而能够非法与IC卡进行数据交换,而这个过程是无法阻止的。

2.密钥认证

密钥认证的过程如图3-6所示。与密码认证过程相比,密钥认证增加了两个内容,一是引入了密钥的概念,增加了加密运算过程;二是增加了产生随机数的过程,有了这两个过程,就可以有效地保证密钥认证过程被非法跟踪后,仍然能够保证认证过程的安全性。

978-7-111-39929-2-Chapter03-6.jpg

图3-6 密钥认证过程(www.xing528.com)

密钥是事先设置到读写设备和IC卡中的,它在认证过程中只参与运算,但不在线路中进行传输,这样非法跟踪是不可能截获到密钥的;由于有随机数的概念,这样每次进行密钥认证虽然使用的是相同的密钥,但经过加密运算产生的密码也是随机的,无规律可循的,这样非法跟踪截获到的密码无法在下次进行认证时使用,只要不知道密钥,非法设备就无法再向密码认证那样模拟安全认证的过程,也就不能非法与IC卡进行数据交换。

在这里值得特别指出的是加密运算过程也是保证密钥认证安全性的一个非常重要的环节,加密运算的算法必须满足下面的条件:

1)已知加密因子和密钥可以计算出加密结果,即数据加密运算。

2)已知加密结果和密钥可以推出加密因子,即数据解密运算。

3)已知加密因子和加密结果不可以推出密钥。

4)加密算法应该是公开的算法。

这样的加密算法就可以有效地保证密钥的安全性。同时需要特别指出的是在智能卡表及系统中采用的算法一定应该是国际上公认的具备上述特征的算法,只有采用这样的算法,才能够有效保证安全性,同时也能使智能卡表及系统具有兼容性和互换性。目前有些厂家采用自己编制的算法进行密钥安全认证存在两大隐患:一是算法未经过权威部门认证,算法的安全级别实际上很低,其安全性完全取决于算法不公开,但即使不公开的算法也很容易被非法攻击攻破,因为厂家的技术人员往往只是表计设计专家,而不是密码安全算法专家,而进行非法攻击的人员却往往是密码算法专家;二是由于安全原因算法不公开,系统的安全性就永远与厂家的人员有关,而真正关心系统运行安全的行业管理部门却不能掌握核心安全,同时也无法实现在系统中使用多家的智能卡表,从而对产品招标选型带来不方便,在某种程度上,不安全的算法可能反而保护了产品性能并不高的厂家,因为即使发现智能卡表产品有性能缺陷,使用者却由于安全算法的原因不能更换更好厂家的产品。

目前国际上公认的加密算法主要分为两大类型:一种是对称加密算法,这种算法的加密密钥和解密密钥是相同的,代表性的算法有DES算法和3DES算法;另一种算法是非对称算法,这种算法的加密密钥和解密密钥是不相同的,代表性的算法有RSA算法。从安全性的角度来讲,不对称算法的安全性更高,但计算过程也更复杂,一般都应用在需要对身份进行合法性认证、防伪认证等场合;对称性算法也具有很高的安全性,算法相对比较简单使用,目前金融应用、公用事业应用基本上都采用对称算法。

在智能卡表应用中,如果是非金融的单机系统,采用DES算法比较适宜;如果考虑和金融系统联网收费,则应满足银行规范使用3DES算法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈