非接觸CPU卡安全系統(tǒng)與邏輯加密系統(tǒng)的比較
密鑰管理系統(tǒng)(Key Management System),也簡(jiǎn)稱KMS,是IC項(xiàng)目安全的核心。如何進(jìn)行密鑰的安全管理,貫穿著IC卡應(yīng)用的整個(gè)生命周期。最常見的是非接觸CPU卡安全系統(tǒng)和邏輯加密系統(tǒng),非接觸邏輯加密卡的安全認(rèn)證依賴于每個(gè)扇區(qū)獨(dú)立的KEYA和KEYB的校驗(yàn),可以通過扇區(qū)控制字對(duì)KEYA和KEYB的不同安全組合,實(shí)現(xiàn)扇區(qū)數(shù)據(jù)的讀寫安全控制。非接觸邏輯加密卡的個(gè)人化也比較簡(jiǎn)單,主要包括數(shù)據(jù)和各扇區(qū)KEYA、KEYB的更新,在期間所有敏感數(shù)據(jù)包括KEYA和KEYB都是直接以明文的形式更新。
由于KEYA和KEYB的校驗(yàn)機(jī)制,只能解決卡片對(duì)終端的認(rèn)證,而無法解決終端對(duì)卡片的認(rèn)證,即我們俗稱的“偽卡”的風(fēng)險(xiǎn)。目前市面上使用的非接觸邏輯加密卡的安全系數(shù)相對(duì)比較低,所以在很多項(xiàng)目中都在升級(jí)改造為非接觸式CPU卡安全系統(tǒng)。
非接觸CPU卡智能卡與非接觸邏輯加密卡相比,擁有獨(dú)立的CPU處理器和芯片操作系統(tǒng),所以可以更靈活的支持各種不同的應(yīng)用需求,更安全的設(shè)計(jì)交易流程。但同時(shí),與非接觸邏輯加密卡系統(tǒng)相比,非接觸CPU卡智能卡的系統(tǒng)顯得更為復(fù)雜,需要進(jìn)行更多的系統(tǒng)改造,比如密鑰管理、交易流程、PSAM卡以及卡片個(gè)人化等。密鑰通常分為充值密鑰(ISAM卡),減值密鑰(PSAM卡),身份認(rèn)證密鑰(SAM卡)。
非接觸CPU卡智能卡可以通過內(nèi)外部認(rèn)證的機(jī)制,例如像建設(shè)部定義的電子錢包的交易流程,高可靠的滿足不同的業(yè)務(wù)流程對(duì)安全和密鑰管理的需求。對(duì)電子錢包圈存可以使用圈存密鑰,消費(fèi)可以使用消費(fèi)密鑰,清算可以使用TAC密鑰,更新數(shù)據(jù)可以使用卡片應(yīng)用維護(hù)密鑰,卡片個(gè)人化過程中可以使用卡片傳輸密鑰、卡片主控密鑰、應(yīng)用主控密鑰等,真正做到一鑰一用。
非接觸CPU卡加密算法和隨機(jī)數(shù)發(fā)生器與安裝在讀寫設(shè)備中的密鑰認(rèn)證卡(SAM卡)相互發(fā)送認(rèn)證的隨機(jī)數(shù),可以實(shí)現(xiàn)以下功能:
(1) 通過終端設(shè)備上SAM卡實(shí)現(xiàn)對(duì)卡的認(rèn)證。
(2) 非接觸CPU卡與終端設(shè)備上的SAM卡的相互認(rèn)證,實(shí)現(xiàn)對(duì)CPU卡讀寫器的認(rèn)證。
(3) 通過ISAM卡對(duì)非接觸CPU卡進(jìn)行充值操作,實(shí)現(xiàn)安全的儲(chǔ)值。
(4) 通過PSAM卡對(duì)非接觸CPU卡進(jìn)行減值操作,實(shí)現(xiàn)安全的扣款。
(5) 在CPU卡讀寫器與非接觸CPU卡中傳輸?shù)臄?shù)據(jù)是加密傳輸。
(6) 通過對(duì)非接觸CPU卡發(fā)送給SAM卡的隨機(jī)數(shù)MAC1,SAM卡發(fā)送給非接觸CPU的隨機(jī)數(shù)MAC2和由非接觸CPU卡返回的隨機(jī)數(shù)TAC,可以實(shí)現(xiàn)數(shù)據(jù)傳輸驗(yàn)證的計(jì)算。而MAC1、MAC2和TAC就是同一張非接觸CPU卡每次傳輸?shù)倪^程中都是不同的,因此無法使用空中接收的辦法來破解非接觸CPU卡的密鑰。
3、非接觸CPU卡智能卡,可以使用密鑰版本的機(jī)制,即對(duì)于不同批次的用戶卡,使用不同版本的密鑰在系統(tǒng)中并存使用,達(dá)到密鑰到期自然淘汰過渡的目的,逐步更替系統(tǒng)中所使用的密鑰,防止系統(tǒng)長(zhǎng)期使用帶來的安全風(fēng)險(xiǎn)。非接觸CPU卡智能卡,還可以使用密鑰索引的機(jī)制,即對(duì)于發(fā)行的用戶卡,同時(shí)支持多組索引的密鑰,假如當(dāng)前使用的密鑰被泄漏或存在安全隱患的時(shí)候,系統(tǒng)可以緊急激活另一組索引的密鑰,而不用回收和更換用戶手上的卡片。
非接觸CPU卡智能卡系統(tǒng)中,PSAM卡通常用來計(jì)算和校驗(yàn)消費(fèi)交易過程中出現(xiàn)的MAC碼,同時(shí)在計(jì)算的過程中,交易時(shí)間、交易金額、交易類型等交易信息也都參與運(yùn)算,使得交易更安全更可靠。某些情況下,非接觸CPU卡智能卡系統(tǒng)中的PSAM卡還可以用來支持安全報(bào)文更新數(shù)據(jù)時(shí)MAC的計(jì)算,以及交易TAC的驗(yàn)證。因此,與非接觸邏輯加密卡系統(tǒng)相比,非接觸CPU卡智能卡系統(tǒng)中的PSAM卡支持更廣泛的功能,也更為靈活、安全和復(fù)雜。通常非接觸CPU卡智能卡系統(tǒng)的PSAM卡還支持不同的密鑰版本。
而非接觸CPU卡智能卡的個(gè)人化通常可以分為卡片洗卡和卡片個(gè)人化兩個(gè)獨(dú)立的流程,前者創(chuàng)建卡片文件結(jié)構(gòu),后者更新個(gè)人化數(shù)據(jù),并注入相應(yīng)的密鑰。在信息更新和密鑰注入的過程中,通常都采用安全報(bào)文的方式,保證數(shù)據(jù)和密鑰更新的正確性和安全性。而且密鑰注入的次序和相互保護(hù)的依存關(guān)系,也充分體現(xiàn)了密鑰的安全設(shè)計(jì),比如卡片主控密鑰通常被用來保護(hù)導(dǎo)入應(yīng)用主控密鑰,應(yīng)用主控密鑰通常被用來保護(hù)導(dǎo)入其他應(yīng)用密鑰,比如消費(fèi)密鑰等。
M1卡即邏輯加密卡采用的是固定密碼,而采用非接觸CPU卡智能卡采用的是動(dòng)態(tài)密碼,并且是一用一密即同一張非接觸CPU卡智能卡,每刷一次卡的認(rèn)證密碼都不相同,這種智能化的認(rèn)證方式使得系統(tǒng)的安全性得到提高,特別是當(dāng)交易雙方在完成交易之后,收單方有可能擅自修改或偽造交易流水來達(dá)到獲利目的,為了防止終端偽造交易流水,系統(tǒng)要求卡片能夠產(chǎn)生由交易要素生成的交易驗(yàn)證碼,在后臺(tái)清算時(shí)來對(duì)交易的有效性進(jìn)行驗(yàn)證。非接觸式CPU卡則可以在交易結(jié)束時(shí)產(chǎn)生個(gè)交易驗(yàn)證碼TAC,用來防止偽造交易。邏輯加密卡由于不具有運(yùn)算能力,就不可能產(chǎn)生交易的驗(yàn)證碼。
所以,從安全性的角度來看, 從IC卡邏輯加密卡升級(jí)到CPU卡是一種必然的選擇。