智能卡按安全級別可以分為三類:存儲器卡、邏輯加密卡和CPU卡,其中CPU卡是安全級別最高的。從“CPU”這個名字可以看出,CPU卡最大的特點就是卡片里面有一個"CPU",有了CPU我們就可以對卡片編程寫入軟件(COS,卡片操作系統),實現復雜的安全加密算法,所以CPU卡的安全性是最高的。與之形成對比的是,存儲器卡和邏輯加密卡中沒有"CPU",盡管在我們看來像MIFARE1卡看起來似乎也很智能,但M1卡里存在的僅僅是一個專用集成電路(ASIC),而不是CPU。
說到非接觸式CPU卡,就不得不提接觸式CPU卡,因為就CPU卡的靈魂——COS來說,二者遵循的協議基本是一樣的,都是ISO7816-4,不同之處在于二者進入COS的方式和途徑,在此以復旦微電的非接觸式CPU卡FM1208M01為例,與接觸式CPU卡進入COS的過程對比如下圖所示。
CPU卡在進入ISO7816-4協議之前所做的都是一些為卡片和讀寫器對話進行的準備工作。接觸式CPU卡的序列比較簡單,卡片插在卡座上,讀寫器給卡片一個復位(Reset)信號,卡片回送一個應答ATR(Answer To Reset),ATR由5部分組成:
(1)初始字符TS:指定字符傳送規則,如果是3B則高電平表示1,低電平表示0,先傳送字符最低有效位;如果是3F 則高電平表示0,低電平表示1,先傳送字符最高有效位。
(2)格式字符T0:指定存在哪些接口字符以及歷史字符的個數。
(3)接口字符 :指定協議參數和協議類型
(5)校驗字符 :保證ATR數據的完整性,使用的是異或校驗
非接觸式CPU卡得到ATS(Answer To Select)相對步驟多一些,不過這也是迫不得已,這是由卡片本身的“非接觸”特性決定的。不像接觸式卡片那樣一卡一座,非接觸式卡片由于“無源”和“免接觸”,讀寫器的射頻場中可能同時存在多張卡片,為了從多張卡片中選中一張進行操作,讀寫器要啟動防沖突和卡選擇的過程。由于不能保證射頻場中的卡片都是CPU卡,所以讀寫器選中一張卡片后還要向卡片發送RATS命令,CPU卡會回送一個ATS響應,此ATS與接觸式CPU卡的ATR也大同小異,同樣由5部分組成:
(1)長度字符TL:指出ATS的長度,不包括后面的校驗字節。
(2)格式字符T0:指定存在哪些接口字符以及卡片能接收的幀的最大長度。
(3)接口字符 :指定協議參數和協議類型
(4)歷史字符 :說明諸如制造商、芯片型號、序列號等一般信息
(5)校驗字符 :保證ATS數據的完整性,使用的是2字節CRC校驗
完成ATR或ATS應答之后,卡片可以進行PPS(Protocol Parameter Selection)協商,也可以不協商而使用默認值。此后就進入7816-4,執行COS命令進行數據交換了。
審核編輯:湯梓紅
-
射頻
+關注
關注
102文章
5471瀏覽量
166944 -
RFID
+關注
關注
386文章
6006瀏覽量
236617 -
cpu
+關注
關注
68文章
10702瀏覽量
209371
發布評論請先 登錄
相關推薦
評論