CPU 卡的三種認(rèn)證方法
持卡者合法性認(rèn)證——PIN 校驗(yàn),卡合法性認(rèn)證——內(nèi)部認(rèn)證,系統(tǒng)合法性認(rèn)證——外部認(rèn)證
持卡者合法性認(rèn)證:通過持卡人輸入個(gè)人口令來進(jìn)行驗(yàn)證的過程。系統(tǒng)合法性認(rèn)證(外部認(rèn)證)過程:
系統(tǒng) 卡,
送隨機(jī)數(shù)X
[用指定算法、密鑰]對隨機(jī)數(shù)加密
[用指定算法、密鑰]解密Y,得結(jié)果Z
比較X,Z,如果相同則表示系統(tǒng)是合法的;
卡的合法性認(rèn)證(內(nèi)部認(rèn)證)過程:
系統(tǒng) 卡
送隨機(jī)數(shù)X
用指定算法、密鑰]對隨機(jī)數(shù)加密
[用指定算法、密鑰]解密Y,得結(jié)果Z
比較X,Z,如果相同則表示卡是合法的;
在以上認(rèn)證過程中,密鑰是不在線路上以明文出現(xiàn)的,它每次的送出都是經(jīng)過隨機(jī)數(shù)加密的,
而且因?yàn)橛须S機(jī)數(shù)的參加,確保每次傳輸?shù)膬?nèi)容不同。如果截獲了沒有任何意義。這不單單
是密碼對密碼的認(rèn)證,是方法認(rèn)證方法,就象早期在軍隊(duì)中使用的密碼電報(bào),發(fā)送方將報(bào)文
按一定的方法加密成密文發(fā)送出去,然后接收方收到后又按一定的方法將密文解密。
通過這種認(rèn)證方式,線路上就沒有了攻擊點(diǎn),同時(shí)卡也可以驗(yàn)證應(yīng)用的合法性;
但是因?yàn)橄到y(tǒng)方用于認(rèn)證的密鑰及算法是在應(yīng)用程序中,還是不能去除系統(tǒng)商的攻擊性。
在此,我們引進(jìn)了SAM 卡的概念。
SAM 卡是一種具有特殊性能的CPU 卡,用于存放密鑰和加密算法,可完成交易中的相互認(rèn)
證、密碼驗(yàn)證和加密、解密運(yùn)算,一般用作身份標(biāo)志。
由于SAM 卡的出現(xiàn),我們有了一種更完整的系統(tǒng)解決方案。
在發(fā)卡時(shí),我們將主密鑰存入SAM 卡中,然后由SAM 卡中的主密鑰,對用戶卡的特征字節(jié)
(如:應(yīng)用序列號(hào))加密生成子密鑰,將子密鑰注入用戶卡中。由于應(yīng)用序列號(hào)的唯一性,
使每張用戶卡內(nèi)的子密鑰都不同。
密鑰一旦注入卡中,則不會(huì)在卡外出現(xiàn)。在使用時(shí),由SAM 卡的主密鑰生成子密鑰存放在
RAM 區(qū)中,用于加密、解密數(shù)據(jù)。
上述的認(rèn)證過程就成為如下形式:
系統(tǒng)合法性認(rèn)證(外部認(rèn)證)過程:
SAM 卡 系統(tǒng) 卡
送隨機(jī)數(shù)X
SAM 卡生成子密鑰對隨機(jī)數(shù)加密
解密Y,得結(jié)果Z
比較X,Z,如果相同則表示系統(tǒng)是合法的;
卡的合法性認(rèn)證(內(nèi)部認(rèn)證)過程:
SAM 卡 系統(tǒng) 卡
送隨機(jī)數(shù)X
用指定算法、密鑰]對隨機(jī)數(shù)加密
SAM 卡解密Y,得結(jié)果Z比較X,Z,如果相同則表示卡是合法的;這樣在應(yīng)用程序中的密鑰,就轉(zhuǎn)移到了SAM 卡中,認(rèn)證成為卡——卡的認(rèn)證,系統(tǒng)商不再存在責(zé)任。