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