资源预览内容
第1页 / 共46页
第2页 / 共46页
第3页 / 共46页
第4页 / 共46页
第5页 / 共46页
第6页 / 共46页
第7页 / 共46页
第8页 / 共46页
第9页 / 共46页
第10页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
ETSI TS 102 221UICC与终端接口;物理和逻辑特性1 USIM-ME命令结构本章节描述了 UICC (USIM)所支持的命令和响应APDU格式。11命令APD U结构本章节描述了一个通用的应用协议数据单元(APDU)的基本结构。APDU是指在传输层 之上的应用层的数据(移动设备和卡之间)传输协议。一个命令APDU包含数据包头和数据体。见下表,其中,数据包头包含CLA字段,INS 字段,P1和P2字段,其是命令APDU的必要组成部分。数据体部分是可选部分,包括Lc, Data 和 Le。表10.1: 命令APDU的内容代码长度描述类属CLA1指令所属的类包头INS1指令代码P11参数1P21参数2Lc0 or 1命令数据体包含的字节数数据体DataLc命令数据体Le0 or 1响应数据最大字节数对于C-APDU结构的四种可能组合见下表:表 10.2: C-APDU 组合组合结构1CLA INS P1 P22CLA INS P1 P2 Le3CLA INS P1 P2 Lc Data4CLA INS P1 P2 Lc Data Le211 Class字段编码Class类字段的最高4位(b8-b5)的含义参见下表,位4和3表示安全数据标识,位2 和1表示所用的逻辑通道,逻辑通道可以从0到3。如果UICC卡支持逻辑通道机制,那么 最大可获得的逻辑通道数标识在ATR的卡兼容性数据对象中,如果该数据对象不存在,则只 支持b2 = b1 = 0的数据通道。一个运行在支持逻辑通道的UICC上的应用,应该要么在消息校验中,从签名的计算中 去除类字节,或者将其设置为缺省值。移动终端可以改变应用所使用的逻辑通道,与所使用 的逻辑通道比较安全消息校验签名。表10.3:类字节编码b8b7b6b5b4b3b2b1值含义0000-0X参见 ISO/IEC 7816-41010-AX参见ISO/IEC 7816-4,除非特殊说明。1000-8X参见ISO/IEC 7816-4及本文档-XX-安全消息标识(参见表10.4)-XX-逻辑通道号表10.4:安全消息标识编码b4b3含义00在终端和卡之间不使用SM01私有SM格式1x按照ISO/IEC 7816-4使用安全管理10不鉴别命令头11鉴别命令头缺省情况下,卡不采用安全消息,除非由应用特别指出。2.1.2指令字段编码参见下表表10.5:电信应用的指令字节编码命令CLAINS命令APDUsSELECT FILE0XA4STATUS8XF2READ BINARY0XB0UPDATE BINARY0XD6READ RECORD0XB2UPDATE RECORD0XDCSEARCH RECORD0XA2INCREASE8X32VERIFY0X20CHANGE PIN0X24DISABLE PIN0X26ENABLE PIN0X28UNBLOCK PIN0X2CDEACTIVATE FILE0X04ACTIVATE FILE0X44AUTHENTICATE0X88GET CHALLENGE0X84TERMINAL PROFILE8010ENVELOPE80C2FETCH8012TERMINAL RESPONSE8014MANAGE CHANNEL0X70传输导向APDUsGET RESPONSE0XC0213参数字段编码参数字节P1和P2的使用和具体的命令有关。如果参数未被使用,则设置未00。具体 编码方式参见具体的命令。214 Lc字段的编码该字段表示数据的长度,其为可选项。如果该字段存在,则在其后将跟着相应长度的数 据字节。移动设备可以发送1到255各字节。215数据体编码数据体的编码与具体的命令有关。参见下面章节。216 Le字段的编码该字段表示命令发送后所期望的最大返回数据长度,其为可选项。如果该字段存在,则 在响应数据中应包含相应长度的数据。如果Le设置为00,则表示移动终端期望最大256 个字节的数据,则UICC可返回介于1到256之间长度的数据。12响应APDU结构响应APDU包含一个可选的数据体和一个必须的状态字,该状态字由两个字节组成:SW1 和SW2。数据长度由Lr指示。参见下表表10.6: 响应APDU内容编码长度描述DataLr响应数据字串SW11状态字节1SW21状态字节2217 UICC返回的状态字本章节描述了由UICC返回的各种状态字2171正常过程表10.7:状态字编码-正常过程SW1SW2描述9000- 命令正常结束91XX- 命令正常结束,并包含UICC所返回的数据的长度,用 XX 表示。2172延迟过程表10.8:状态字编码-延迟过程SW1SW2错误描述9300-STK忙,当前不能执行该命令。2173警告表10.9:状态字编码-警告SW1SW2描述6200- 无参考信息,非易失内存没有改变6281- 部分返回数据可能损坏6282-读取文件或记录Le长度时,已经到结尾6283- 所选的文件已经无效63CX- 在内部重试X次后,命令执行成功- 校验失败,还有X次可试(参见注释)注释: 对于VERIFY PIN命令,SW1SW2指示命令成功执行,但是PIN不正确, 并可以重试X次。对于任何其它命令,表示“在内部重试X次后,命令执行 成功”2174执行错误表10.10:状态字编码-执行错误SW1SW2描述6400- 无参考信息,非易失内存没有改变6500- 无参考信息,非易失内存改变6581- 内存错误2175检査错误表10.11:状态字编码-检查错误SW1SW2描述6700- 长度错误67XX- 除了 SW2 = 00的情况下,该状态字与命令相关6B00-错误的参数P1-P26D00- 指令字段不支持或错误6E00- 类字段不支持6F00- 技术问题,无精确诊断信息6FXX- 除了 SW2 = 00的情况下,该状态字与命令相关21751 CLA字段中的功能不支持表10.12:状态字编码- CLA字段中的功能不支持SW1SW2描述6800- 无参考信息6881- 不支持逻辑通道6882- 不支持安全消息21752命令不允许执行表10.13:状态字编码-命令不允许执行SW1SW2描述6900- 无参考信息6981- 命令与该文件结构不兼容6982- 不满足安全条件6983-鉴权/PIN被禁止6984- 引用的数据失效6985- 使用条件不满足6986-命令不允许执行(没有选中EF)21753错误的参数表10.14:状态字编码-错误的参数SW1SW2描述6A80- 数据体参数不正确6A81- 功能不支持6A82- 文件没有找到6A83- 记录没有找到6A86- 参数P1-P2不正确6A87-Lc与P1-P2不一致6A88- 引用的数据没有找到2176应用错误表10.15:状态字编码-应用错误SW1SW2错误描述9850-INCREASE命令不能执行,已经达到最大值9862- 鉴权错误(与应用相关)注释:应用可以定义自己的错误代码218命令的状态字下表表示对于每一个命令所可能返回的状态字(用*号注明)。表10.16:命令和状态字68 82*69 81*69 82*69 83*69 84*69 85*69 86*6A 80*6A 81*6A 82*6A 83*6A 86*6A 87*6A 88*6B 00*6E 00*
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号