CPU卡安全系統與邏輯加密卡系統的對比
眾所周知,密鑰管理系統(Key Management System),也簡稱KMS,是IC項目安全的核心。如何進行 密鑰的安全管理,貫穿著IC卡應用的整個生命周期。
1、非接觸CPU卡智能卡與非接觸邏輯加密卡相比,擁有獨立的CPU處理器和芯片操作系統,所以可以 更靈活的支持各種不同的應用需求,更安全的設計交易流程。但同時,與非接觸邏輯加密卡系統相比,非 接觸CPU卡智能卡的系統顯得更為復雜,需要進行更多的系統改造,比如密鑰管理、交易流程、PSAM卡以 及卡片個人化等。密鑰通常分為充值密鑰(ISAM卡),減值密鑰(PSAM卡),外部認證密鑰(SAM卡)和 全能密鑰(ASAM卡)。
非接觸 CPU卡智能卡可以通過內外部認證的機制,例如像建設部定義的電子錢包的交易流程,高可靠 的滿足不同的業務流程對安全和密鑰管理的需求。對電子錢包圈存可以使用圈存密鑰,消費可以使用消費 密鑰,清算可以使用TAC密鑰,更新數據可以使用卡片應用維護密鑰,卡片個人化過程中可以使用卡片傳 輸密鑰、卡片主控密鑰、應用主控密鑰等,真正做到一鑰一用。
CPU卡加密算法和隨機數發生器與安裝在CPU卡讀寫設備中的密鑰認證卡(SAM卡)相互發送認證的隨機數,可以實 現以下功能:
(1) 通過終端設備上SAM卡實現對卡的認證。
(2) CPU卡與終端設備上的SAM卡的相互認證,實現對卡終端的認證。
(3) 通過ISAM卡對CPU卡進行充值操作,實現安全的儲值。
(4) 通過PSAM卡對CPU卡進行減值操作,實現安全的扣款。
(5) 在終端設備與CPU卡中傳輸的數據是加密傳輸。
(6) 通過對CPU卡發送給SAM卡的MAC1,SAM卡發送給CPU的MAC2和由CPU卡返回的TAC,可以實現數據傳 輸驗證的計算。而MAC1、MAC2和TAC就是同一張CPU卡每次傳輸的過程中都是不同的,因此無法使用空中接 收的辦法來破解CPU卡的密鑰。
2、非接觸邏輯加密卡的安全認證依賴于每個扇區獨立的KEYA和KEYB的校驗,可以通過扇區控制字對 KEYA和KEYB的不同安全組合,實現扇區數據的讀寫安全控制。非接觸邏輯加密卡的個人化也比較簡單,主 要包括數據和各扇區KEYA、KEYB的更新,在期間所有敏感數據包括KEYA和KEYB都是直接以明文的形式更新 。由于KEYA和KEYB的校驗機制,只能解決卡片對終端的認證,而無法解決終端對卡片的認證,即我們俗稱的 “偽卡”的風險。
非接觸邏輯加密卡,即密鑰就是一個預先設定的確定數,無論用什么方法計算密鑰,最后就一定要和 原先寫入的數一致,就可以對被保護的數據進行讀寫操作。因此無論是一卡一密的系統還是統一密碼的系 統,經過破解就可以實現對非接觸邏輯加密卡的解密。很多人認為只要是采用了一卡一密、實時在線系統 或非接觸邏輯加密卡的ID號就能避免密鑰被解密,其實,非接觸邏輯加密卡被解密就意味著M1卡可以被復 制,使用在線系統盡可以避免被非法充值,但是不能保證非法消費,即復制一張一樣ID號的M1卡,就可以 進行非法消費。現在的技術使用FPGA就可以完全復制。基于這個原理,M1的門禁卡也是不安全的。目前國 內80%的門禁產品均是采用原始IC卡的ID號或ID卡的ID號去做門禁卡,根本沒有去進行加密認證或開發專 用的密鑰,其安全隱患遠遠比Mifare卡的破解更危險,非法破解的人士只需采用的是專業的技術手段就可 以完成破解過程,導致目前國內大多數門禁產品都不具備安全性原因之一,是因為早期門禁產品的設計理 論是從國外引進過來的,國內大部分廠家長期以來延用國外做法,采用ID和IC卡的只讀特性進行身份識別 使用,很少關注卡與機具間的加密認證,缺少鑰匙體系的設計;而ID卡是很容易可復制的載體,導致所有 的門禁很容易幾乎可以在瞬間被破解復制;這才是我們國內安防市場最大的災難。