IC卡厂家电话

客服服务热线

400-868-5581

PRODUCT SERIES

新闻中心

全国免费电话

400-868-5581

联系地址

上海市浦东新区秋兴路875号A栋

代理合作

cooperation
行业新闻

IC卡私钥的认证

时间:2017-03-30
外部认证使用对称算法。每张卡片中都会有一个用于外部认证的秘钥——其实就是一串数字,有16个字节长。每一张银行卡的这个秘钥都是不同的,发卡的时候是使用银行的一个母秘钥对卡内数据,比如卡号,进行运算,得到这张卡得秘钥,然后写进卡里。进行交易的时候,卡片要求终端使用该秘钥对当次交易的数据(比如交易金额,交易时间,交易货币代码等等)进行运算,算出密文输入进卡片。
IC卡私钥就是内部认证用的。内部认证使用的是非对称算法。国际算法是RSA,现在在努力推行国密算法sm2,然而……呵呵。非对称算法的特点是,有两个秘钥(也就是两串数字),分别叫做公钥和私钥。一段明文经过私钥运算之后,就变的他妈都认不得了。但私钥并不能把它变回原样,必须用对应的公钥才可以让它重回母亲怀抱。银行卡内就存着一个IC卡私钥,这个私钥也是每张卡都不一样的。一旦写入卡里,就再也没人知道这私钥是什么了。
卡片负责保证IC卡私钥的安全,任何情况下都不会被泄露。连发卡的银行也不知道一张卡片里面的IC卡私钥是什么。进行内部认证的时候,终端根据卡片内读出的公开的信息,可以计算出卡片的IC卡私钥对应的公钥是什么。(这个过程很复杂,期间需要跟发卡行的后台以及CA认证中心进行认证,就不展开说了,反正合法的终端可以获得IC卡公钥)然后终端发给卡片一些数据,通常是随机数,卡片用卡内存储的IC卡私钥对这个数据进行加密,把密文输出给终端。终端用IC卡公钥解密,确认是刚才自己发给卡得那几个随机数,则认为卡片是合法的卡片。
认证了终端的合法性以后卡片才允许终端做一些高级别的交易,比如修改电子现金余额。然而卡号,有效期这样的数据是不需要认证就可以从卡片中读出来的。于是有的人说了,这不还是可以随便复制么?找张白卡写上同样的卡号?好,关键点来了:终端认证卡片合法的依据是IC卡私钥!IC卡私钥!IC卡私钥!