版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、.APDU指令介紹1. APDU指令格式根據(jù)7816-4規(guī)范,從終端發(fā)出的命令和卡片響應的信息必須遵從以下4種格式。情形1:命令 :CLAINSP1P200響應 :SW1SW2情形2:命令:CLAINSP1P2Le響應:Le字節(jié)的DATASW1SW2情形3:命令:CLAINSP1P2LcDATA響應 :SW1SW2情形4:命令:CLAINSP1P2LcDATALe 響應:Le字節(jié)的DATASW1SW21.1 APDU命令格式命令由4字節(jié)的命令頭和命令體組成,見圖1。命令頭(必備體)命令體(可選體)CLAINSP1P2LcDATALe圖1 APDU命令格式1.1.1 命令頭域命令頭定義報文的內(nèi)容
2、如下表所示:表1 命令頭域代碼長度(byte)值(Hex)描述CLA1X0不帶安全報文的命令X4帶安全報文的命令INS1XX指令代碼P11XX參數(shù)1P21XX參數(shù)21.1.2 命令體命令體中各項是可選的。Lc命令數(shù)據(jù)域中DATA的長度,該長度不可超過255字節(jié)。Data 命令和響應中的數(shù)據(jù)域。Le響應數(shù)據(jù)域中期望數(shù)據(jù)的長度。Le=00,表示需要最大字節(jié)數(shù), 該長度不可超過255字節(jié)。1.2 APDU響應數(shù)據(jù)格式APDU命令的應答由數(shù)據(jù)和狀態(tài)字組成,見下圖2。數(shù)據(jù)狀態(tài)字響應中接收的數(shù)據(jù)位串SW1SW2圖2 APDU響應數(shù)據(jù)格式1.2.1 返回數(shù)據(jù)返回數(shù)據(jù)域是可選項。1.2.2 返回狀態(tài)字(SW1
3、SW2)SW1 SW2是卡片執(zhí)行命令的返回代碼,任何命令的返回信息都至少由一個狀態(tài)字組成。1.3 狀態(tài)字SW1SW2意義狀態(tài)字說明了命令處理的情況,即命令是否被正確執(zhí)行,如果未被正確執(zhí)行,原因是什么。狀態(tài)字由2部分組成:SW1(status word1):表示命令處理狀態(tài);SW2(status word2):表示命令處理限定。表2 狀態(tài)字SW1-SW2SW1SW2Description9000正確執(zhí)行61XX正確執(zhí)行XX表示響應數(shù)據(jù)長度??捎肎et Response命令取回響應數(shù)據(jù)。(僅用于T=0)6281回送的數(shù)據(jù)可能錯誤6283選擇文件無效,文件或密鑰校驗錯誤63CXX表示還可再試次數(shù)64
4、00狀態(tài)標志未改變6581寫EEPROM不成功6700錯誤的長度6900CLA與線路保護要求不匹配6901無效的狀態(tài)6981命令與文件結(jié)構(gòu)不相容6982不滿足安全狀態(tài)6983密鑰被鎖死6985使用條件不滿足6987無安全報文6988安全報文數(shù)據(jù)項不正確6A80數(shù)據(jù)域參數(shù)錯誤6A81功能不支持或卡中無MF或卡片已鎖定6A82文件未找到6A83記錄未找到6A84文件無足夠空間6A86參數(shù)P1 P2錯誤6B00在達到Le/Lc字節(jié)之前文件結(jié)束,偏移量錯誤6CXXLe錯誤6E00無效的CLA6F00數(shù)據(jù)無效9302MAC錯誤9303應用已被鎖定9401金額不足9403密鑰未找到9406所需的MAC不可
5、用注意:當SW1的高半字節(jié)為9,且低半字節(jié)不為0時,其含義依賴于相關(guān)應用。當SW1的高半字節(jié)為6,且低半字節(jié)不為0時,其含義與應用無關(guān)。2. APDU指令2.1 常見APDU指令介紹以下介紹的指令均為交通行業(yè)常見指令,涵蓋ED/EP應用和電子現(xiàn)金應用,針對非接觸卡片。l 通用指令SELECT(選擇)READ BINARY(讀二進制)READ RECORD(讀記錄)UPDATE BINARY(修改二進制)UPDATE RECORD(修改記錄)GET RESPONSE(取響應)GET CHALLENGE(產(chǎn)生隨機數(shù))EXTERNAL AUTHENTICATION(外部認證)INTERNAL AUT
6、HENTICATION(內(nèi)部認證)VERIFY(校驗)PIN CHANGE/UNBLOCK(個人密碼修改/解鎖)APPLICATION BLOCK(應用鎖定)APPLICATION UNBLOCK(應用解鎖)CARD BLOCK(卡片鎖定)l 電子錢包電子存折一般交易相關(guān)指令GET BALANCE(讀余額)GET TRANSACTION PROVE(取交易認證)CHANGE PIN(修改個人密碼)INITIALIZE FOR LOAD(圈存初始化)CREDIT FOR LOAD(圈存)INITIALIZE FOR PURCHASE(消費初始化)INITIALIZE FOR CASH WITHD
7、RAW(取現(xiàn)初始化)DEBIT FOR PURCHASE/CASH WITHDRAW(消費/取現(xiàn))INITIALIZE FOR UNLOAD(圈提初始化,僅用于電子存折)DEBIT FOR UNLOAD(圈提,僅用于電子存折)INITIALIZE FOR UPDATE(修改透支限額初始化,僅用于電子存折)UPDATE OVERDRAW LIMIT(修改透支限額,僅用于電子存折)APPEND RECORD(增加記錄)l 復合應用模式專用指令INITIALIZE FOR CAPP PURCHASE(復合應用消費初始化)UPDATE CAPP DATA CACHE(更新復合應用數(shù)據(jù)緩存)DEBIT
8、FOR CAPP PURCHASE(復合應用消費)l 電子現(xiàn)金專用指令GENERATE AC(生成應用密文)GET DATA(取數(shù)據(jù))PUT DATA(設置數(shù)據(jù))GET PROCESSING OPTIONS(獲取處理選項)表3 APDU命令集命 令CLAINSP1P2SELECT(選擇)00A4040002READ BINARY(讀二進制)80B0SFI偏移READ RECORD(讀記錄)00B2記錄號XXUPDATE BINARY(修改二進制)00 04D6SFI偏移UPDATE RECORD(修改記錄)00 04DC記錄號XXGET RESPONSE(取響應)00C00000GET CHA
9、LLENGE(產(chǎn)生隨機數(shù))00840000EXTERNAL AUTHENTICATION(外部認證)00820000INTERNAL AUTHENTICATION(內(nèi)部認證)00880000VERIFY(校驗)002000XXPIN CHANGE/UNBLOCK(個人密碼修改/解鎖)842400000102APPLICATION BLOCK(應用鎖定)841E0000APPLICATION UNBLOCK(應用解鎖)84180000CARD BLOCK(卡片鎖定)84160000GET BALANCE(讀余額)805C000XGET TRANSACTION PROVE(取交易認證)805A00
10、XXCHANGE PIN(修改個人密碼)805E0100INITIALIZE FOR LOAD(圈存初始化)8050000XCREDIT FOR LOAD(圈存)80520000INITIALIZE FOR PURCHASE(消費初始化)8050010XINITIALIZE FOR CASH WITHDRAW(取現(xiàn)初始化) 80500201DEBIT FOR PURCHASE/CASH WITHDRAW(消費/取現(xiàn))80540100INITIALIZE FOR UNLOAD(圈提初始化)80500501DEBIT FOR UNLOAD(圈提)80540300INITIALIZE FOR UPD
11、ATE(修改初始化)80500401UPDATE OVERDRAW LIMIT(修改透支限額)80580000APPEND RECORD(增加記錄)00 04E200XXINITIALIZE FOR CAPP PURCHASE(復合應用消費初始化)80500302UPDATE CAPP DATA CACHE(更新復合應用數(shù)據(jù)緩存)80DCXXXXDEBIT FOR CAPP PURCHASE(復合應用消費)80540100GENERATE AC(生成應用密文)80AEXX00GET DATA(取數(shù)據(jù))80CA待訪問標簽PUT DATA(設置數(shù)據(jù))04DA待修改標簽GET PROCESSING
12、OPTIONS(獲取處理選項)80A80000注意:通用指令是電子錢包、電子存折、電子現(xiàn)金都支持的,但是針對不同的應用,某些指令的具體參數(shù)細節(jié)可能略有差異,可參照相關(guān)規(guī)范。2.2 APDU指令分類按照指令操作對象,可分為以下類別:l 文件選擇:selectl 數(shù)據(jù)存?。簉ead/update binary,read/update/append record,get/put datal 卡片安全相關(guān):verify,pin change/unblock,change pin,external authentication,internal authentication,application bl
13、ock,application unblock,card block,get challengel 交易相關(guān):get balance,get transaction prove,initialize for load,credit for load,initialize for purchase,initialize for cash withdraw ,debit for purchase/cash withdraw,initialize for unload,debit for unload,initialize for update,update overdraw limit,initi
14、alize for capp purchase,update capp data cache,debit for capp purchase,generate ac,get processing optionsl 其他:get response2.2.1 SELECT命令文件選擇指令一般針對目錄文件,可以是主目錄MF(PSE),也可以是DF或ADF,可以通過文件標識FID或文件名字AID來選擇,是一種顯示選擇方式。文件選擇指令要求返回數(shù)據(jù)中必須包含F(xiàn)CI,F(xiàn)CI描述了文件的特性,在個人化期間建立。FCI必須符合特定的模板,具體模板格式跟所選擇的文件類別有關(guān)。執(zhí)行選擇指令后,指令中的DF/ADF
15、成為當前目錄,后續(xù)的指令皆針對該應用進行。如果要切換目錄,必須再次執(zhí)行選擇指令。對EF文件的選擇一般為隱式選擇,使用SFI方式,包含在數(shù)據(jù)存取指令參數(shù)中。關(guān)于DF和EF的組織關(guān)系,見附錄A。2.2.1.1 命令報文SELECT命令報文編碼見表4:表4 SELECT命令報文代碼 值CLA00INSA4P1引用控制參數(shù)(見表62)P200第一個或僅有一個02下一個Lc05-10Data文件名Le00表5定義了命令報文中的引用控制參數(shù):表5 SELECT命令引用控制參數(shù)b8b7b6b5b4b3b2b1 含 義 0 0 0 0 01通過文件名選擇 0 02.2.1.2 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域應包
16、括所選擇的PSE名、DF名或AID。2.2.1.3 響應報文數(shù)據(jù)域響應報文中數(shù)據(jù)域應包括所選擇的PSE、DDF或ADF的FCI。表63到表65規(guī)定了此定義了所用的標志。本規(guī)范不規(guī)定FCI中回送的附加標志。表6定義了成功選擇PSE后回送的FCI:表6 SELECT PSE的響應報文(FCI)標 志 值 存在方式6FFCI模板 M84DF名 MA5FCI專用數(shù)據(jù) M88目錄基本文件的SFI M表7定義了成功選擇DDF后回送的FCI:表7 SELECT DDF的響應報文(FCI)標 志 值 存在方式6FFCI模板 M84DF名 MA5FCI專用數(shù)據(jù) M88目錄基本文件的SFI M表8定義了成功選擇A
17、DF后回送的FCI:表8 SELECT ADF的響應報文(FCI)標 志 值 存在方式6FFCI模板 M84DF名 MA5FCI專用數(shù)據(jù) M9F0C發(fā)卡方自定數(shù)據(jù)的FCI O表9定義了ADF回送的A5中包含的數(shù)據(jù),其中必須包含標簽為9F08的應用版本號,其數(shù)值由全國金融標準化技術(shù)委員會負責定義和維護。表9 SELECT ADF的應答報文中的FCI數(shù)據(jù)專用模板A5FCI數(shù)據(jù)專用模板M50應用標簽O87應用優(yōu)先指示符O9F08應用版本號M9F12應用優(yōu)先名稱O2.2.2 GET RESPONSE 命令2.2.2.1 定義和范圍該指令只用于T=0協(xié)議卡片。當APDU不能用現(xiàn)有協(xié)議傳輸時,GET RE
18、SPONSE命令提供了一種從卡片向接口設備傳送APDU(或APDU的一部分)的傳輸方法。2.2.2.2 命令報文GET RESPONSE命令報文編碼見表10:表10 GET RESPONSE命令報文代碼 值CLA00INSC0P100P200Lc不存在Data不存在Le響應的期望數(shù)據(jù)最大長度2.2.2.3 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域不存在。2.2.2.4 響應報文數(shù)據(jù)域響應報文數(shù)據(jù)域的長度由Le的值決定。如果Le的值為零,在附加數(shù)據(jù)有效時,卡片必須回送狀態(tài)碼6CXX,否則回送狀態(tài)碼6F00。2.2.2.5 響應報文狀態(tài)碼此命令執(zhí)行成功的狀態(tài)碼是9000。表11列出正常處理情況:表11 GET
19、 RESPONSE命令報文SW1SW2含 義61XX 正常處理XX表示可以通過后續(xù)GET RESPONSE命令得到的額外數(shù)據(jù)長度IC卡可能回送的警告狀態(tài)碼如表12所示:表12 GET RESPONSE警告狀態(tài)SW1SW2 含 義6281回送的數(shù)據(jù)可能有錯IC卡可能回送的錯誤狀態(tài)碼如表13所示:表13 GET RESPONSE錯誤狀態(tài)SW1SW2 含 義6700長度錯誤(Le 不正確)6A86參數(shù)P1 P2不正確6CXX長度錯誤(Le 不正確,XX表示實際長度)6D00INS不支持或錯誤6E00CLA不支持或錯誤6F00數(shù)據(jù)無效2.2.2.6 響應報文狀態(tài)碼此命令執(zhí)行成功的狀態(tài)碼是9000。IC
20、卡可能回送的警告狀態(tài)碼如表14所示:表14 SELECT警告狀態(tài)SW1SW2 含 義6283選擇的文件無效6284FCI格式與P2指定的不符IC卡可能回送的錯誤狀態(tài)碼如表15所示:表15 SELECT錯誤狀態(tài)SW1SW2 含 義6400標志狀態(tài)位沒變6700P1 P2與Lc不一致6A81不支持此功能6A82未找到文件6A86參數(shù)P1 P2不正確6D00INS不支持或錯誤6E00CLA不支持或錯誤9303應用永久鎖定注:SW1 SW2=6A82用于表示當卡支持部分文件名選擇時,沒有與此部分文件名相匹配的文件。2.2.3 數(shù)據(jù)存取指令數(shù)據(jù)存取指令,對卡內(nèi)數(shù)據(jù)進行讀取或修改,指令參數(shù)跟卡內(nèi)數(shù)據(jù)存儲格
21、式有關(guān),主要分三類:l 二進制數(shù)據(jù)(讀二進制、修改二進制),針對二進制文件,如read/update binaryl 記錄數(shù)據(jù)(讀記錄、修改記錄、增加記錄),針對記錄文件,如read/update/append recordl TLV格式數(shù)據(jù)(取數(shù)據(jù)、設置數(shù)據(jù))、針對金融安全數(shù)據(jù),如get/put data三種數(shù)據(jù)及相關(guān)文件在卡內(nèi)的存在形式,參見附錄A。2.2.3.1 READ BINARY命令2.2.3.1.1 定義和范圍READ BINARY命令用于讀取二進制文件的內(nèi)容(或部分內(nèi)容)。2.2.3.1.2 命令報文READ BINARY命令報文編碼見表16:表16 READ BINARY命令
22、報文代碼 值CLA00或04INSB0P1見表54P2從文件中讀取的第一個字節(jié)的偏移地址Lc不存在;(CLA=04時除外)Data不存在;(CLA=04時,應包括MAC)Le00表17定義了命令報文中的引用控制參數(shù):表17 READ BINARY命令引用控制參數(shù)b8b7b6b5b4b3b2b1 含 義X1讀取模式:-用SFI方式00RFU(如果b8=1)XXXXXSFI(取值范圍21-30)2.2.3.1.3 命令報文數(shù)據(jù)域一般情況下,命令報文數(shù)據(jù)域不存在。當使用安全報文時,命令報文數(shù)據(jù)域中應包含MAC。MAC的計算方法和長度由應用決定。2.2.3.1.4 響應報文數(shù)據(jù)域當Le的值為零時,只要
23、文件的最大長度在256(短長度)或65536(擴展長度)之內(nèi),則其全部字節(jié)將被讀出。2.2.3.1.5 響應報文狀態(tài)碼此命令執(zhí)行成功的狀態(tài)碼是9000。IC卡可能回送的警告狀態(tài)碼如表18所示:表18 READ BINARY警告狀態(tài)SW1SW2 含 義6281部分回送的數(shù)據(jù)可能有錯6282文件長度LeIC卡可能回送的錯誤狀態(tài)碼如表19所示:表19 READ BINARY錯誤狀態(tài)SW1SW2 含 義6700長度錯誤(Lc域為空)6981命令與文件結(jié)構(gòu)不相容6982不滿足安全狀態(tài)6986不滿足命令執(zhí)行的條件(非當前EF)6A81不支持此功能6A82未找到文件6A86P1,P2不正確6B00參數(shù)錯誤(
24、偏移地址超出了EF)6CXX長度錯誤(Le錯誤;XX為實際長度)6D00INS不支持或錯誤6E00CLA不支持或錯誤2.2.3.2 UPDATE BINARY命令2.2.3.2.1 定義和范圍UPDATE BINARY命令報文使用命令APDU中給定的數(shù)據(jù)修改EF文件中已有的數(shù)據(jù)。2.2.3.2.2 命令報文UPDATE BINARY命令報文編碼見表20:表20 UPDATE BINARY命令報文代碼 值CLA00或04INSD6P1見表69P2要修改的第一個字節(jié)的偏移地址Lc后續(xù)數(shù)據(jù)域的長度Data修改用的數(shù)據(jù)+報文鑒別代碼(MAC)數(shù)據(jù)元(4字節(jié))Le不存在 CLA = 00 不需要安全報文
25、。CLA = 04 需要安全報文。表21定義了命令報文中的引用控制參數(shù):表21 UPDATE BINARY命令引用控制參數(shù)b8b7b6b5b4b3b2b1 含 義X1讀取模式:-用SFI方式00RFU(如果b8=1)XXXXXSFI(取值范圍21-30) 2.2.3.2.3 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域:包括更新原有數(shù)據(jù)的新數(shù)據(jù)。報文鑒別代碼(MAC)數(shù)據(jù)元:4字節(jié)2.2.3.2.4 響應報文數(shù)據(jù)域響應報文數(shù)據(jù)域不存在。2.2.3.2.5 響應報文狀態(tài)碼此命令執(zhí)行成功的狀態(tài)碼是9000。IC卡可能回送的警告狀態(tài)碼如表22所示:表22 UPDATE BINARY警告狀態(tài)SW1SW2 含 義63C
26、X使用內(nèi)部重試程序更新成功X=0表示不提供計數(shù)器X0表示重試次數(shù) IC卡可能回送的錯誤狀態(tài)碼如表23所示:表23 UPDATE BINARY錯誤狀態(tài)SW1SW2 含 義6581內(nèi)存失敗(修改失敗)6700長度錯誤(Lc域為空)6981命令與文件結(jié)構(gòu)不相容6982不滿足安全狀態(tài)6984引用數(shù)據(jù)無效6986不滿足命令執(zhí)行的條件(不是當前的EF)6A81不支持此功能6A82未找到文件6A86P1,P2參數(shù)錯誤6B00參數(shù)錯誤(偏移地址超出了EF)6D00INS不支持或錯誤6E00CLA不支持或錯誤9303應用永久鎖定 2.2.3.3 READ RECORD命令2.2.3.3.1 定義和范圍READ
27、RECORD命令用于讀取記錄文件的內(nèi)容。IC卡的響應由回送記錄組成。2.2.3.3.2 命令報文READ RECORD命令報文編碼見表24:表24 READ RECORD命令報文代碼 值CLA00或04INSB2P1記錄的個數(shù)P2引用控制參數(shù)(見表58)Lc不存在(CLA=04時除外)Data不存在(CLA=04時除外)Le00 表25定義了命令報文中的引用控制參數(shù):表25 READ RECORD命令引用控制參數(shù)b8b7b6b5b4b3b2b1 含 義XXXXXSFI 1 0 0P1為記錄的個數(shù) 2.2.3.3.3 命令報文數(shù)據(jù)域當無安全報文使用時,命令報文數(shù)據(jù)域不存在。使用安全報文時,命令報
28、文的數(shù)據(jù)域中應包含MAC。MAC的計算方法和長度由應用決定。2.2.3.3.4 響應報文數(shù)據(jù)域所有執(zhí)行成功的READ RECORD命令的響應報文數(shù)據(jù)域由讀取的記錄組成。2.2.3.3.5 響應報文狀態(tài)碼此命令執(zhí)行成功的狀態(tài)碼是9000。IC卡可能回送的警告狀態(tài)碼如表26所示:表26 READ RECORD警告狀態(tài)SW1SW2 含 義6281回送的數(shù)據(jù)可能有錯 IC卡可能回送的錯誤狀態(tài)碼如表27所示:表27 READ RECORD錯誤狀態(tài)SW1SW2 含 義6400標志狀態(tài)位沒變6700長度錯誤(Lc域不存在)6981命令與文件結(jié)構(gòu)不相容6A81不支持此功能6A82未找到文件6A83未找到記錄6
29、A86P1,P2不正確6D00INS不支持或錯誤6E00CLA不支持或錯誤 2.2.3.4 UPDATE RECORD命令2.2.3.4.1 定義和范圍UPDATE RECORD 命令報文用命令APDU中給定的數(shù)據(jù)更改指定的記錄。在使用當前記錄地址時,該命令將在修改記錄成功后重新設定記錄指針。2.2.3.4.2 命令報文UPDATE RECORD 命令報文編碼見表28:表28 UPDATE RECORD 命令報文代碼 值CLA00 或04INSDCP1P1=00表示當前記錄P100指定的記錄號P2見表73Lc后續(xù)數(shù)據(jù)域的長度Data更新原有記錄的新記錄+報文鑒別代碼(MAC)數(shù)據(jù)元(4字節(jié))L
30、e不存在 CLA = 00 不需要安全報文。CLA = 04 需要安全報文。表29定義了命令報文中的引用控制參數(shù):表29 UPDATE RECORD 命令引用控制參數(shù)b8b7b6b5b4b3b2b1 含 義XXXXXSFI000第一個記錄001最后一個記錄010下一個記錄011上一個記錄100記錄號在P1中給出 其余值RFU 2.2.3.4.3 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域由更新原有記錄的新記錄和報文鑒別代碼(MAC)數(shù)據(jù)元(4字節(jié))組成。2.2.3.4.4 響應報文數(shù)據(jù)域響應報文數(shù)據(jù)域不存在。2.2.3.4.5 響應報文狀態(tài)碼此命令執(zhí)行成功的狀態(tài)碼是9000。IC卡可能回送的警告狀態(tài)碼如表3
31、0所示:表30 UPDATE RECORD 警告狀態(tài)SW1SW2 含 義63CX使用內(nèi)部重試程序更新成功X=0表示不提供計數(shù)器X0表示重試次數(shù) IC卡可能回送的錯誤狀態(tài)碼如表31所示:表31 UPDATE RECORD 錯誤狀態(tài)SW1SW2 含 義6581內(nèi)存失敗(修改失敗)6700長度錯誤(Lc域為空)6981命令與文件結(jié)構(gòu)不相容6982不滿足安全狀態(tài)6986不滿足命令執(zhí)行的條件(不是當前的EF)6A81不支持此功能6A82未找到文件6A83未找到記錄6A84文件中存儲空間不夠6D00INS不支持或錯誤6E00CLA不支持或錯誤 2.2.3.5 APPEND RECORD命令2.2.3.5.
32、1 定義和范圍APPEND RECORD命令用于對變長記錄文件追加新記錄。2.2.3.5.2 命令報文增加記錄命名報文編碼在32中:表32 激活非接觸通道命令報文編碼: 代碼值CLA04INSE2P100P2見表9.3-2Lc后續(xù)數(shù)據(jù)域的長度Data追加的新記錄Le不存在表33定義了命令報文中的引用控制參數(shù):表33 APPEND RECORD命令引用控制參數(shù)b8b7b6b5b4b3b2b1含義xxxxxSFI000追加新記錄2.2.3.5.3 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域由追加的新記錄組成。2.2.3.5.4 響應報文數(shù)據(jù)域響應報文數(shù)據(jù)域不存在。2.2.3.5.5 響應報文狀態(tài)碼此命令執(zhí)行成功
33、的狀態(tài)碼是9000。IC卡可能回送的錯誤狀態(tài)碼如表34所示:表34 APPEND RECORD錯誤狀態(tài)SW1SW2含義6581內(nèi)存失敗6700長度錯誤6981命令與文件結(jié)構(gòu)不相容6982不滿足安全狀態(tài)6A81不支持此功能6A82未找到文件6A84文件中存儲空間不夠2.2.3.6 GET DATA命令2.2.3.6.1 定義和范圍下面描述的是在非金融交易過程中在特殊設備上使用GET DATA命令訪問到的數(shù)據(jù)和一個金融交易過程中,使用GET DATA命令訪問數(shù)據(jù)。l 特殊設備下表列出的靜態(tài)數(shù)據(jù)可以在發(fā)卡行控制的特殊設備上通過GET DATA命令訪問。普通終端不能用取數(shù)據(jù)命令獲得。表35 使用GET
34、 DATA命令訪問的靜態(tài)數(shù)據(jù)數(shù)據(jù)元應用貨幣代碼應用缺省行為連續(xù)脫機交易限制數(shù)(國際-國家)連續(xù)脫機交易限制數(shù)(國際-貨幣)累計脫機交易金額限制數(shù)累計脫機交易金額限制數(shù)(雙貨幣)累計脫機交易金額上限貨幣轉(zhuǎn)換因子發(fā)卡行認證指示位發(fā)卡行國家代碼連續(xù)脫機交易下限連續(xù)脫機交易上限第二應用貨幣代碼l 金融交易GET DATA命令用來從當前應用中取得一個沒有封裝在記錄中的基本數(shù)據(jù)對象。GET DATA命令可以用來獲取基本數(shù)據(jù)對象ATC(標簽為9F36)、上次聯(lián)機ATC寄存器(標簽為9F13)或密碼重試計數(shù)器(標簽為9F17)、日志格式(標簽為9F4F)。 2.2.3.6.2 命令報文GET DATA命令報文
35、根據(jù)下表編碼 :表36 GET DATA命令報文編碼值CLA80 INSCAP1 P2要訪問數(shù)據(jù)的標簽Lc不存在數(shù)據(jù)域不存在Le002.2.3.6.3 命令報文數(shù)據(jù)域命令報文沒有數(shù)據(jù)域。2.2.3.6.4 響應報文數(shù)據(jù)域響應報文的數(shù)據(jù)域中包含有如命令報文的P1 P2所述的基本數(shù)據(jù)對象。(即包括它的標簽和它的長度)。2.2.3.6.5 響應報文狀態(tài)碼9000編碼表示命令成功執(zhí)行。如果命令中請求的數(shù)據(jù)是專有數(shù)據(jù)不能返回,卡片返回“6A88”。2.2.3.7 PUT DATA命令2.2.3.7.1 定義和范圍PUT DATA命令用來修改卡片中的一些基本數(shù)據(jù)對象的值。只有有標簽的數(shù)據(jù)才能使用這條命令修
36、改。此命令不能用來修改結(jié)構(gòu)數(shù)據(jù)對象。下表列出的數(shù)據(jù)可以使用此命令修改。表37 使用PUT DATA命令修改的數(shù)據(jù)數(shù)據(jù)元連續(xù)脫機交易限制數(shù)(國際-國家)連續(xù)脫機交易限制數(shù)(國際-貨幣)累計脫機交易金額限制數(shù)累計脫機交易金額限制數(shù)(雙貨幣)累計脫機交易金額上限貨幣轉(zhuǎn)換因子連續(xù)脫機交易下限(9F58)連續(xù)脫機交易上限(9F59)2.2.3.7.2 命令報文PUT DATA命令報文根據(jù)下表編碼。表38 PUT DATA命令報文編碼值CLA04INSDAP1 P2要修改的數(shù)據(jù)對象的標簽Lc數(shù)據(jù)域字節(jié)數(shù)數(shù)據(jù)域數(shù)據(jù)對象的新值(不包括標簽和長度)和MAC數(shù)據(jù)Le不存在2.2.3.7.3 命令報文數(shù)據(jù)域命令數(shù)據(jù)
37、域中包括的是要修改的數(shù)據(jù)對象的值,后面家一個4到8字節(jié)的MAC。MAC的計算見附錄Error! Reference source not found.中描述。2.2.3.7.4 響應報文數(shù)據(jù)域響應報文沒有數(shù)據(jù)域。2.2.3.7.5 響應報文狀態(tài)碼9000編碼表示命令成功執(zhí)行。下表列出了命令可能返回的警告信息:表39 PUT DATA命令的警告響應碼SW1SW2含義6200沒有信息返回6281數(shù)據(jù)可能被破壞下表列出了命令可能返回的錯誤信息表40 PUT DATA命令的錯誤響應碼SW1SW2含義6400沒有準確診斷6581內(nèi)存失敗6700長度錯誤6882不支持安全報文6982安全狀態(tài)不滿足6986
38、命令不允許6987安全報文數(shù)據(jù)對象丟失6988安全報文數(shù)據(jù)對象不正確6A80錯誤的參數(shù)6A81功能不支持6A84文件中沒有足夠空間6A85Lc和TLV結(jié)構(gòu)不一致2.2.4 卡片安全指令verify,pin change/unblock,change pin,external authentication,internal authentication,application block,application unblock,card block,get challenge根據(jù)卡片的安全狀態(tài)產(chǎn)生的方式,安全指令又可做以下分類:表41 安全指令分類安全狀態(tài)產(chǎn)生方式reset或PPS后/執(zhí)行包含一
39、條或多條命令的認證過程后application blockapplication unblockcard block口令驗證verifypin change/unblockchange pin密鑰認證external authenticationinternal authentication安全的報文傳遞/注意:關(guān)于卡片的安全機制,參見附錄B。安全報文傳遞適用于跟卡片安全相關(guān)的指令執(zhí)行過程中。安全報文傳遞針對文件操作或密鑰操作。具體安全報文的操作見附錄C。get challenge指令取出的隨機數(shù)要用于安全相關(guān)的指令的計算過程中,所以在PIN以外的安全指令執(zhí)行之前,都需要先執(zhí)行該指令。在ED/
40、EP應用和金融借貸記應用中,以上指令會存在細節(jié)上的差別,具體差異參照對應的卡片規(guī)范。以下列出常用的ED/EP應用中的指令細節(jié):2.2.4.1 APPLICATION BLOCK 命令2.2.4.1.1 定義和范圍APPLICATION BLOCK命令使當前選擇的應用失效。當APPLICATION BLOCK命令成功地完成應用臨時鎖定后,用SELECT命令選擇已臨時鎖定的應用,將回送狀態(tài)碼“不支持此功能”(SW1 SW2=6A81)。同時回送FCI(對于T=0卡片,需要用GET RESPONSE 指令取回)。當APPLICATION BLOCK 命令成功完成應用永久鎖定后,此后執(zhí)行所有命令,卡片
41、將回送狀態(tài)碼“應用永久鎖定”(SW1 SW2 = 9303)。對其他命令的影響根據(jù)不同應用而定。2.2.4.1.2 命令報文APPLICATION BLOCK命令報文編碼見表42:表42 APPLICATION BLOCK命令報文代碼 值CLA84INS1EP100,其他值保留為將來使用P200或01Lc數(shù)據(jù)字節(jié)數(shù)Data報文鑒別代碼(MAC)數(shù)據(jù)元;根據(jù)本規(guī)范附錄C中的規(guī)定進行編碼Le不存在 P2=00:此命令執(zhí)行成功后可鎖定應用,但該應用可以用APPLICATION UNBLOCK命令解鎖。P2=01:此命令執(zhí)行成功后將永久鎖定應用。2.2.4.1.3 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域包括根據(jù)
42、本文附錄C中的規(guī)定進行編碼的報文鑒別碼(MAC)數(shù)據(jù)元。2.2.4.1.4 響應報文數(shù)據(jù)域響應報文數(shù)據(jù)域不存在。2.2.4.1.5 響應報文狀態(tài)碼無論應用是否已經(jīng)失效,此命令執(zhí)行成功的狀態(tài)碼是9000。IC卡可能回送的警告狀態(tài)碼如表43所示:表43 APPLICATION BLOCK警告狀態(tài)SW1SW2 含 義6200無信息提供6281回送數(shù)據(jù)可能出錯6283選擇文件無效6A81不支持此功能9003應用永久鎖定 IC卡可能回送的錯誤狀態(tài)碼如表44所示:表44 APPLICATION BLOCK錯誤狀態(tài)SW1SW2 含 義6400狀態(tài)標志位未變6581內(nèi)存失敗6700Lc長度錯誤6982不滿足安
43、全狀態(tài)6984引用數(shù)據(jù)無效6987安全報文數(shù)據(jù)項丟失6988安全報文數(shù)據(jù)項不正確6A86參數(shù)P1 P2不正確6A88未找到引用數(shù)據(jù)6D00INS不支持或錯誤6E00CLA不支持或錯誤 2.2.4.2 APPLICATION UNBLOCK 命令2.2.4.2.1 定義和范圍APPLICATION UNBLOCK命令用于恢復當前應用。當APPLICATION UNBLOCK命令成功地完成后,由APPLICATION BLOCK命令產(chǎn)生的對應用命令響應的限制將被取消。2.2.4.2.2 命令報文APPLICATION UNBLOCK命令報文編碼見表45:表45 APPLICATION UNBLOCK命令報文代碼 值CLA84INS18P100,其他值保留為將來使用P200,其他值保留為將來使用Lc數(shù)據(jù)字節(jié)數(shù)Data報文鑒別代碼(MAC)數(shù)據(jù)元;根據(jù)本規(guī)范附錄C中的規(guī)定進行編碼Le不存在 2.2.4.2.3 命令報文數(shù)據(jù)域命令報文數(shù)據(jù)域的內(nèi)容包括根據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年葵花籽種植戶互助合作社合同3篇
- 2025年度旅游主題公園運營管理合同4篇
- 二零二五年度煤炭清潔利用技術(shù)研發(fā)與應用合同4篇
- 2025版旅游交通車輛租賃及保險合同4篇
- 二零二五年度高新技術(shù)企業(yè)稅收優(yōu)惠政策申請合同3篇
- 二零二五年度鋁單板市場調(diào)研采購合同3篇
- 2025年豬圈修建及糞污處理系統(tǒng)合同模板3篇
- 2025年無證房產(chǎn)轉(zhuǎn)讓合同范本專業(yè)版3篇
- 二零二五年度綠化工程后期維護管理合同4篇
- 2025年私立醫(yī)院護士老年護理專業(yè)聘用合同3篇
- GB/T 15593-2020輸血(液)器具用聚氯乙烯塑料
- 2023年上海英語高考卷及答案完整版
- 西北農(nóng)林科技大學高等數(shù)學期末考試試卷(含答案)
- 金紅葉紙業(yè)簡介-2 -紙品及產(chǎn)品知識
- 《連鎖經(jīng)營管理》課程教學大綱
- 《畢淑敏文集》電子書
- 頸椎JOA評分 表格
- 員工崗位能力評價標準
- 定量分析方法-課件
- 朱曦編著設計形態(tài)知識點
- 110kV變電站工程預算1
評論
0/150
提交評論