非接觸CPU卡與M1卡加密系統(tǒng)比較
文章出處:http://m.luckydriving.com 作者: 人氣: 發(fā)表時(shí)間:2012年02月19日
非接觸CPU卡與邏輯加密卡
1、 邏輯加密存儲(chǔ)卡:在非加密存儲(chǔ)卡的基礎(chǔ)上增加了加密邏輯電路,加密邏輯電路通過校驗(yàn)密碼方式來保護(hù)卡內(nèi)的數(shù)據(jù)對(duì)于外部訪問是否開放,但只是低層次的安全保護(hù),無法防范惡意性的攻擊。
早期投入應(yīng)用的非接觸IC卡技術(shù)多為邏輯加密卡,比如最為著名的Philips公司(現(xiàn)NXP)的Mifare 1卡片。非接觸邏輯加密卡技術(shù)以其低廉的成本,簡明的交易流程,較簡單的系統(tǒng)架構(gòu),迅速得到了用戶的青睞,并得到了快速的應(yīng)用和發(fā)展。據(jù)不完全統(tǒng)計(jì),截至去年年底,國內(nèi)各領(lǐng)域非接觸邏輯加密卡的發(fā)卡量已經(jīng)達(dá)到數(shù)億張。
隨著非接觸邏輯加密卡不斷應(yīng)用的過程,非接觸邏輯加密卡技術(shù)的不足之處也日益暴露,難以滿足更高的安全性和更復(fù)雜的多應(yīng)用的需求。特別是2008年10月,互聯(lián)網(wǎng)上公布了破解MIFARE CLASSIC IC芯片(以下簡稱M1芯片)密碼的方法,不法分子利用這種方法可以很低的經(jīng)濟(jì)成本對(duì)采用該芯片的各類“一卡通”、門禁卡進(jìn)行非法充值或復(fù)制,帶來很大的社會(huì)安全隱患。因此,非接觸CPU卡智能卡技術(shù)正成為一種技術(shù)上更新?lián)Q代的選擇。
2、非接觸CPU卡:也稱智能卡,卡內(nèi)的集成電路中帶有微處理器CPU、存儲(chǔ)單元(包括隨機(jī)存儲(chǔ)器RAM、程序存儲(chǔ)器ROM(FLASH)、用戶數(shù)據(jù)存儲(chǔ)器EEPROM)以及芯片操作系統(tǒng)COS。裝有COS的CPU卡相當(dāng)于一臺(tái)微型計(jì)算機(jī),不僅具有數(shù)據(jù)存儲(chǔ)功能,同時(shí)具有命令處理和數(shù)據(jù)安全保護(hù)等功能。
(1)、非接觸CPU卡的特點(diǎn)(與存儲(chǔ)器卡相比較) 芯片和COS的安全技術(shù)為CPU卡提供了雙重的安全保證自帶操作系統(tǒng)的CPU卡對(duì)計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)要求較低,可實(shí)現(xiàn)脫機(jī)操作;可實(shí)現(xiàn)真正意義上的一卡多應(yīng)用,每個(gè)應(yīng)用之間相互獨(dú)立,并受控于各自的密鑰管理系統(tǒng)。存儲(chǔ)容量大,可提供1K-64K字節(jié)的數(shù)據(jù)存儲(chǔ)。
(2)、獨(dú)立的保密模塊 -- 使用相應(yīng)的實(shí)體SAM卡密鑰實(shí)現(xiàn)加密、解密以及交易處理,從而完成與用戶卡之間的安全認(rèn)證。
非接觸CPU卡安全系統(tǒng)與邏輯加密系統(tǒng)的比較
密鑰管理系統(tǒng)(Key Management System),也簡稱KMS,是IC項(xiàng)目安全的核心。如何進(jìn)行密鑰的安全管理,貫穿著IC卡應(yīng)用的整個(gè)生命周期。
1、非接觸邏輯加密卡的安全認(rèn)證依賴于每個(gè)扇區(qū)獨(dú)立的KEYA和KEYB的校驗(yàn),可以通過扇區(qū)控制字對(duì)KEYA和KEYB的不同安全組合,實(shí)現(xiàn)扇區(qū)數(shù)據(jù)的讀寫安全控制。非接觸邏輯加密卡的個(gè)人化也比較簡單,主要包括數(shù)據(jù)和各扇區(qū)KEYA、KEYB的更新,在期間所有敏感數(shù)據(jù)包括KEYA和KEYB都是直接以明文的形式更新。
由于KEYA和KEYB的校驗(yàn)機(jī)制,只能解決卡片對(duì)終端的認(rèn)證,而無法解決終端對(duì)卡片的認(rèn)證,即我們俗稱的“偽卡”的風(fēng)險(xiǎn)。
非接觸邏輯加密卡,即密鑰就是一個(gè)預(yù)先設(shè)定的固定密碼,無論用什么方法計(jì)算密鑰,最后就一定要和原先寫入的固定密碼一致,就可以對(duì)被保護(hù)的數(shù)據(jù)進(jìn)行讀寫操作。因此無論是一卡一密的系統(tǒng)還是統(tǒng)一密碼的系統(tǒng),經(jīng)過破解就可以實(shí)現(xiàn)對(duì)非接觸邏輯加密卡的解密。很多人認(rèn)為只要是采用了一卡一密、實(shí)時(shí)在線系統(tǒng)或非接觸邏輯加密卡的ID號(hào)就能避免密鑰被解密,其實(shí),非接觸邏輯加密卡被解密就意味著M1卡可以被復(fù)制,使用在線系統(tǒng)盡可以避免被非法充值,但是不能保證非法消費(fèi),即復(fù)制一張一樣ID號(hào)的M1卡,就可以進(jìn)行非法消費(fèi)。現(xiàn)在的技術(shù)使用FPGA就可以完全復(fù)制。基于這個(gè)原理,M1的門禁卡也是不安全的。目前國內(nèi)80%的門禁產(chǎn)品均是采用原始IC卡的UID號(hào)或ID卡的ID號(hào)去做門禁卡,根本沒有去進(jìn)行加密認(rèn)證或開發(fā)專用的密鑰,其安全隱患遠(yuǎn)遠(yuǎn)比Mifare卡的破解更危險(xiǎn),非法破解的人士只需采用的是專業(yè)的技術(shù)手段就可以完成破解過程,導(dǎo)致目前國內(nèi)大多數(shù)門禁產(chǎn)品都不具備安全性原因之一,是因?yàn)樵缙陂T禁產(chǎn)品的設(shè)計(jì)理論是從國外引進(jìn)過來的,國內(nèi)大部分廠家長期以來延用國外做法,采用ID和IC卡的只讀特性進(jìn)行身份識(shí)別使用,很少關(guān)注卡與機(jī)具間的加密認(rèn)證,缺少鑰匙體系的設(shè)計(jì);而ID卡是很容易可復(fù)制的載體,導(dǎo)致所有的門禁很容易幾乎可以在瞬間被破解復(fù)制;這才是我們國內(nèi)安防市場(chǎng)最大的災(zāi)難。
2、非接觸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ì)卡終端的認(rèn)證。
(3) 通過ISAM卡對(duì)非接觸CPU卡進(jìn)行充值操作,實(shí)現(xiàn)安全的儲(chǔ)值。
(4) 通過PSAM卡對(duì)非接觸CPU卡進(jìn)行減值操作,實(shí)現(xiàn)安全的扣款。
(5) 在終端設(shè)備與非接觸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)長期使用帶來的安全風(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)密鑰等。
4、非接觸CPU卡的密鑰實(shí)現(xiàn)方式:
(1) 硬密鑰:即在終端機(jī)具中安裝SAM卡座,所有的認(rèn)證都是由安裝在SAM卡座中的SAM卡進(jìn)行運(yùn)算的,這樣在終端機(jī)具維修時(shí),只要取出SAM卡座中的SAM卡,這臺(tái)終端機(jī)具就是空的了。所以所有的銀行設(shè)備都采用SAM卡的認(rèn)證模式。
(2) 軟密鑰:終端機(jī)具中沒有SAM卡座,這個(gè)密鑰的運(yùn)算實(shí)際上是由終端機(jī)具完成的,這樣客戶的密鑰就等于存在終端機(jī)具中,廠家拿回終端機(jī)具維修時(shí),極易造成密鑰流失。
總結(jié)以上所述,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卡是一種必然的選擇。