cla ins p1 p2 lc data le
其中cla為指令類別;ins為指令碼;p1、p2為引數;lc為data的長度;le為希望響應時回答的資料位元組數,0表最大可能長度。
一 命令分類:
cos命令由具體應用分為4種命令報文結構如下:
① 情形1
cla ins p1 p2 00
② 情形2
cla ins p1 p2 le
③ 情形3
cla ins p1 p2 lc data
④ 情形4
cla ins p1 p2 lc data le
二 響應報文
1) 響應結構
響應資料 響應狀態碼
data sw1 sw1
data: 返回給使用者的資料,即命令的執行結果。
sw1、sw2: 返回命令處理的狀態。
三 命令集
1) read binary
功能:此命令用於讀取二進位制檔案部分或全部的內容。
cla 00
ins b0
p1 見引數說明
p2 從檔案中讀取的第一位元組的偏移位址
le 期望讀出資料的長度
2) update binary
功能:此命令使用給定的資料來更新二進位制檔案部分或全部的內容。
cla 00
ins d6
p1 見引數說明
p2 要修改的第一位元組的偏移位址
lc 後續資料域的長度
data 修改用的資料
3) read record
功能:此命令用於讀取記錄檔案中指定記錄的內容。
cla 00
ins b2
p1 記錄號
p2 見引數說明
le 期望讀出資料的長度
4) update record
功能:此命令使用給定的資料來更新記錄檔案中指定記錄的內容。當所指定的檔案非記錄檔案時,命令將終止。
cla 00
ins dc
p1 p1= 00 表示當前記錄
p1≠ 00 表示指定的記錄號
p2 見引數說明
lc 後續資料域的長度
data 更新原有記錄的新記錄
5) verify pin
功能:此命令將校驗給定的密碼的正確性,根據比較的結果修改安全狀態,若校驗失敗次數達到pin嘗試上限,則pin自動鎖定。
cla 00
ins 20
p1 00
p2lc 02 ~ 10
data 外部輸入的個人密碼
6) select file
功能:此命令使用檔名或應用標示符來選擇ic卡內df或ef。
cla 00
ins a4
p1 00
p2 00
lc 00 (選擇mf檔案)/ 02
data 無 / fid
7) get challenge
cla 00
ins 84
p1 00
p2 00
le 04
8) get response
功能:此命令為t=0協議情形4狀態下,用來取卡中返回的資料。
格式:cla 00
ins c0
p1 00
p2 00
le 響應的期望資料最大長度
9) internal authenticate
功能:此命令將為外部裝置驗證卡中的秘密模組的有效性提供資料。
cla 00
ins 88
p1 00
p2 00 ~ 07 金鑰號
lc 04
data 外部隨機數(4位元組)
10) external authenticate
功能:此命令將驗證外部裝置中的秘密模組的有效性。
cla 00
ins 82
p1 00
p2 00 ~ 07 金鑰號
lc 0c
data 發卡方認證資料
11) change / unlock pin
功能:修改、解鎖、安裝卡片個人密碼。
cla 00
ins 5e
p1 00 修改卡片個人密碼
01 解鎖卡片個人密碼
02 安(重)裝卡片個人密碼
p2 密碼號
lcdata
12) unlock key
功能:解鎖卡片應用金鑰。
cla 00
ins 5c
p1 01 解鎖應用金鑰
02 安裝卡片應用金鑰
p2 金鑰號
lc 無 / 金鑰長度
data 無 / 加密的金鑰
13) create file
功能:此命令建立卡片檔案系統。
cla 00 / 80
ins f2
p1 00 / ftp 檔案型別
p2 00 / fac 檔案訪問控制條件
lc 無 / 07
data
示例:1 應用選擇
(1)選擇mf(主檔案)
cla ins p1 p2 lc data
00 a4 00 00
p1=00選擇主檔案
(2)根據應用識別符號選擇應用
cla ins p1 p2 lc data
00 a4 04 0c 07 a0 00 00 02 47 10 01
p1=04 選擇df(專用檔案),此時資料域為df的檔名(aid應用識別符號)
df包括ef(基本檔案)和其他df
df1:ef.com、ef.dg1........................ef.dg16、ef.sod
2 使用select命令選擇基本檔案
例:選擇機讀取區
cla ins p1 p2 lc data
00 a4 02 0c 02 01 01
3讀二進位制
cla ins p1 p2 lc data
00 b0 05 00 00 //讀取檔案前256byte
如果p1的最高位b8為1時,b6和b7位必須為0,b5-b1位表示待讀取的基本檔案的sfi;這時p2表示要讀取資料起始位置在檔案中的偏移量。
如果p1的最高位為0時,p1的後7位和p2相連共同組成了乙個超過256的整數,表示待讀取資料塊的起始位置在檔案中的偏移量,可以用於超過256byte檔案的讀取。
讀取資料組1(機讀取)的資料
讀取資料組2(編碼人臉)的資料
IC卡寫卡操作流程
var icdata new icdata var deviceresult crd.crdicpoweron if deviceresult.issuccess return null var result crd.crdpbocinit if result.issuccess return nu...
常用IC卡容量
晶元型別 容量晶元描述 工作溫度 at24c01a 1kbit 2線序列eeprom 0 70 at24c02 2kbit 2線序列eeprom 0 70 at24c04 4kbit 2線序列eeprom 0 70 at24c08 8kbit 2線序列eeprom 0 70 at24c16 16kb...
接觸式IC卡
現在有接觸式和非接觸式ic卡 據我所知,非接觸式是卡是乙個id,然後mcu識別這個id然後通過上位機做出對這個id的相關操作 那麼接觸式的卡是乙個儲存元件,依靠mcu對元件讀寫操作,做出相應的處理 這個不需要連線上位機 疑問 非接觸式的卡能作為乙個可讀寫的元件麼?不管是非接觸式的 還是接觸式的 罈子...