学习笔记-USIM卡与终端命令详解.doc
《学习笔记-USIM卡与终端命令详解.doc》由会员分享,可在线阅读,更多相关《学习笔记-USIM卡与终端命令详解.doc(38页珍藏版)》请在课桌文档上搜索。
1、1 / 38ETSI TS 102 221UICC 与终端接口;物理和逻辑特性与终端接口;物理和逻辑特性1 USIM-MEUSIM-ME 命令结构命令结构本章节描述了 UICCUSIM所支持的命令和响应 APDU 格式.1.1 命令命令APDUAPDU结构结构本章节描述了一个通用的应用协议数据单元APDU的基本结构.APDU 是指在传输层之上的应用层的数据移动设备和卡之间传输协议.一个命令 APDU 包含数据包头和数据体.见下表,其中,数据包头包含 CLA 字段,INS 字段,P1 和 P2 字段,其是命令 APDU 的必要组成部分.数据体部分是可选部分,包括 Lc,Data 和 Le.表 1
2、0.1:命令 APDU 的内容代码长度描述类属CLA1指令所属的类INS1指令代码P11参数 1P21参数 2包头Lc0 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 Le2.1.1 ClassClass字段编码字段编码Class 类字段的最高 4 位b8-b5的含义参见下表,位 4 和 3 表示安全数据标识,
3、位 2和 1 表示所用的逻辑通道,逻辑通道可以从 0 到 3.如果 UICC 卡支持逻辑通道机制,那么最大可获得的逻辑通道数标识在 ATR 的卡兼容性数据对象中,如果该数据对象不存在,则只支持 b2 = b1 = 0 的数据通道.一个运行在支持逻辑通道的 UICC 上的应用,应该要么在消息校验中,从签名的计算中去除类字节,或者将其设置为缺省值.移动终端可以改变应用所使用的逻辑通道,与所使用的逻辑通道比较安全消息校验签名.表 10.3:类字节编码b8b7b6b5b4b3b2b1值含义0000-0X参见 ISO/IEC 7816-42 / 381010-AX参见 ISO/IEC 7816-4,除非
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:电信应用的指令字节编码命令命令CLACLA INSINS命令命令 APDUsAPDUs SELECT FILE0XA4STATUS8XF2READ BINARY0XB0UPDATE BINARY0
5、XD6READ RECORD0XB2UPDATE RECORD0XDCSEARCH RECORD0XA2INCREASE8X32VERIFY0X20CHANGE PIN0X24DISABLE PIN0X26ENABLE PIN0X28UNBLOCK PIN0X2CDEACTIVATE FILE0X04ACTIVATE FILE0X44AUTHENTICATE0X88GET CHALLENGE0X84TERMINAL PROFILE8010ENVELOPE80C2FETCH80123 / 38TERMINAL RESPONSE8014MANAGE CHANNEL0X70传输导向传输导向 APDU
6、sAPDUsGET RESPONSE0XC02.1.3 参数字段编码参数字段编码参数字节 P1 和 P2 的使用和具体的命令有关.如果参数未被使用,则设置未00.具体编码方式参见具体的命令.2.1.4 LcLc字段的编码字段的编码该字段表示数据的长度,其为可选项.如果该字段存在,则在其后将跟着相应长度的数据字节.移动设备可以发送 1 到 255 各字节.2.1.5 数据体编码数据体编码数据体的编码与具体的命令有关.参见下面章节.2.1.6 LeLe字段的编码字段的编码该字段表示命令发送后所期望的最大返回数据长度,其为可选项.如果该字段存在,则在响应数据中应包含相应长度的数据.如果 Le 设置为
7、00,则表示移动终端期望最大 256 个字节的数据,则 UICC 可返回介于 1 到 256 之间长度的数据.1.2 响应响应APDUAPDU结构结构响应 APDU 包含一个可选的数据体和一个必须的状态字,该状态字由两个字节组成: SW1 和 SW2.数据长度由 Lr 指示.参见下表表 10.6:响应 APDU 内容编码长度描述DataLr响应数据字串SW11状态字节 1SW21状态字节 22.1.7 UICCUICC返回的状态字返回的状态字本章节描述了由 UICC 返回的各种状态字2.1.7.1 正常过程正常过程表表 10.710.7:状态字编码:状态字编码- - 正常过程正常过程SW1SW
8、1SW2SW2描述描述9000命令正常结束91#命令正常结束,并包含 UICC 所返回的数据的长度,用# 表示.4 / 382.1.7.2 延迟过程延迟过程表表10.8:10.8: 状态字编码状态字编码- - 延迟过程延迟过程SW1SW1SW2SW2错误描述错误描述9300STK 忙,当前不能执行该命令.2.1.7.3 警告警告表表 10.9:10.9: 状态字编码状态字编码- - 警告警告SW1SW1SW2SW2描述描述6200无参考信息,非易失内存没有改变6281部分返回数据可能损坏6282读取文件或记录 Le 长度时,已经到结尾6283所选的文件已经无效63CX在内部重试 X 次后,命令
9、执行成功-校验失败,还有X 次可试参见注释注释:对于 VERIFY PIN 命令,SW1SW2 指示命令成功执行,但是 PIN 不正确,并可以重试X 次.对于任何其它命令,表示在内部重试 X 次后,命令执行成功2.1.7.4 执行错误执行错误表表 10.10:10.10: 状态字编码状态字编码- - 执行错误执行错误SW1SW1SW2SW2描述描述6400无参考信息,非易失内存没有改变6500无参考信息,非易失内存改变6581内存错误2.1.7.5 检查错误检查错误表表 10.11:10.11: 状态字编码状态字编码- - 检查错误检查错误SW1SW1SW2SW2描述描述6700-长度错误67
10、#除了 SW2 = 00的情况下,该状态字与命令相关6B00错误的参数 P1-P26D00指令字段不支持或错误6E00类字段不支持6F00技术问题,无精确诊断信息6F#-除了 SW2 = 00的情况下,该状态字与命令相关2.1.7.5.1 CLACLA字段中的功能不支持字段中的功能不支持表表10.12:10.12: 状态字编码状态字编码- - CLACLA字段中的功能不支持字段中的功能不支持SW1SW1SW2SW2描述描述6800无参考信息6881不支持逻辑通道5 / 386882不支持安全消息2.1.7.5.2 命令不允许执行命令不允许执行表表10.13:10.13: 状态字编码状态字编码-
11、 -命令不允许执行命令不允许执行SW1SW1SW2SW2描述描述6900无参考信息6981命令与该文件结构不兼容6982不满足安全条件6983鉴权/PIN 被禁止6984引用的数据失效6985使用条件不满足6986命令不允许执行没有选中 EF2.1.7.5.3 错误的参数错误的参数表表10.14:10.14: 状态字编码状态字编码- -错误的参数错误的参数SW1SW1SW2SW2描述描述6A80数据体参数不正确6A81功能不支持6A82文件没有找到6A83记录没有找到6A86参数 P1-P2 不正确6A87-Lc 与 P1-P2 不一致6A88引用的数据没有找到2.1.7.6 应用错误应用错误
12、表表10.15:10.15: 状态字编码状态字编码- -应用错误应用错误SW1SW1SW2SW2错误描述错误描述9850-INCREASE 命令不能执行,已经达到最大值9862鉴权错误与应用相关注释: 应用可以定义自己的错误代码2.1.8 命令的状态字命令的状态字下表表示对于每一个命令所可能返回的状态字用*号注明.表 10.16:命令和状态字6 / 38StatusStatus WordsWordsSELECTSTATUSUPDATE BINARYUPDATE RECORDREAD BINARYREAD RECORDSEARCH RECORDINCREASEVERIFY PINCHANGE P
13、INDISABLE PINENABLE PINUNBLOCK PINDEACTIVATE FILEACTIVATE FILEAUTHENTICATEGET CHALLENGETERMINAL PROFILEENVELOPEFETCHTERMINAL RESPONSEMANAGE CHANNEL90 00*91 #*93 00*98 50*98 62*62 00*62 81*62 82*62 83*63 CX*64 00*65 00*65 81*67 00*67 # *68 00*68 81*68 82*69 81*69 82*69 83*69 84*69 85*69 86*6A 80*6A 8
14、1*6A 82*6A 83*6A 86*6A 87*7 / 386A 88*6B 00*6E 00*6F 00*6F # *注释:除了 SW2 = 00的情况只有对支持 USAT 的移动终端,UICC 才可以返回状态字91 #和93 00.2.1.9 逻辑通道逻辑通道使用逻辑通道的命令,用 CLA 字段的最低两位表示逻辑通道号,范围从 0 到 3.逻辑通道号 0 是永久可以获得的.使用 MANAGE CHANNEL 命令打开和关闭一个逻辑通道,逻辑通道号由 UICC 分配.2 USIM-MEUSIM-ME 命令描述命令描述2.1 通用命令通用命令这里描述了应用说支持的各种命令和相应的响应状态字
15、.如果应用不支持某个命令,则应该返回相应的状态字.2.1.1 SELECT2.1.1.1 功能描述功能描述本命令用于选择一个文件,参见第 8 章.在命令执行成功后,记录的指针并不确定.输入:-文件标识符,应用标识符,路径,或空参数.输出:-如果选择的文件是MF,DF或者ADF:文件标识符,总文件尺寸,PIN的状态,PIN禁止/使用的标识,与其它应用私有数据.-如果选择的文件是EF:文件标识符,总文件尺寸,访问条件,无效/有效标识,EF的结构,记录的长度对于线性定长文件线形定长文件和循环文件2.1.1.2 命令参数和数据命令参数和数据代码代码值值CLA参见第 10 章INS参见第 10 章P1选
16、择控制,见下表P2选择控制,见下表8 / 38Lc数据的长度或为空Data文件标识符,DF 名称,或路径,与 P1 的值相关Le空,00,或者期望的最大数据长度表 11.1: P1 参数配置b8b8b7b7b6b6b5b5b4b4b3b3b2b2b1b1含义含义00000000选择 DF, EF或MF,通过文件标识符00000001选择当前DF的子DF00000011选择当前DF的父DF00000100通过DF名称选择应用参见注释00001000以MF为起始,路径选择00001001以当前DF为起始,路径选择注释:: 这里指选择应用表 11.2: P2 参数配置b8b8b7b7b6b6b5b5
17、b4b4b3b3b2b2b1b1含义含义-XX-应用进程控制,参见注释 2-00- 激活/重置-10- 终止0-00100要求返回 FCP 模板0-01100无数据返回-XX按照 AID 选择-00- 第一次或者仅一次出现的-01- 最后一个找到的-10- 下一个-11- 前一个注释 1:有无 FCI 的返回取决与 APDU 的类型.注释 2:只适用于当 P1 指示按照 DFNAME的方式选择.如果 P1 = 00 而且数据字段为空,那么 P2 应该被设置为0C 无数据返回,那么 MF 被设置为当前的目录.为了避免歧义,当 P1 = 00时,当以文件标识符作为参数选择文件的时候,按照以下的搜索
18、顺序进行,-当前DF的之间子文件;-父DF;-父DF的直接子文件.当 P1 04时,P2 的位 b2 和 b1 没有意义,应该设置为 0.当 P1 = 04时,一个右侧数据可截断的 AID 可以作为输入数据.2.1.1.3 响应数据响应数据字节字节描述描述长度长度1FCP 模板标签 = 6212 FCP 模板的长度1 或 23 or 4 to FCP 模板数据X9 / 38Lr响应的数据包含所选择文件的文件控制参数FCP,其内容与所选择的文件有关.参见下表.终端可以忽略其不支持的标签数据.2.1.1.3.1 对于对于MF,MF, DFDF 或或 ADFADF的响应数据的响应数据下表为对应于 M
19、F,DF,或者 ADF 的响应数据,表 11.3:对于 MF, DF 或 ADF 的响应数据描述描述标签标签章节章节状态状态文件描述符82M文件标识符83C1DF 名称AID84C2专有信息A5C3生存周期8AM安全特性86, 8B, 8C or ABC4PIN 状态模板 DOC6M总文件大小81OM:必须.O:可选.C1: 对于 DF 或 MF,必选.对于 ADF,可选.C2: DF 名称只对 ADF 是必须的.C3: 对于 MF,专有信息是必须的,对于 DF/ADF,是可选的.C4: 有,且只有一个标签必须有.2.1.1.3.2 对于对于EFEF的响应数据的响应数据下表为对应于 EF 的响
20、应数据,表 11.4: 对于 EF 的响应数据描述描述标签标签章节章节状态状态文件描述符82M文件标识符83M专有信息A5O身存周期8AM安全特性86, 8B, 8C, or ABC1文件大小80M总文件大小81O短标识符SFI88OM:必须.O:可选.C1: 有,且只有一个标签必须有.10 / 382.1.1.4 文件控制参数文件控制参数2.1.1.4.1 文件大小文件大小字节字节描述描述值值长度长度1标签8012长度0213 to 4文件中数据字节的长度,除去结构信息2文件的大小介于0000 和FFFF 之间.对于二进制文件,其是文件数据体的长度.对于线性定长文件线形定长文件或循环文件,其
21、是记录长度乘以记录的个数.2.1.1.4.2 总文件大小总文件大小字节字节描述描述值值长度长度1标签8112长度X, X 213 to X+2文件中数据字节的长度,包含结构信息X注释:如果文件是 EF,那么 X=2.对于 EF,文件大小范围从0000 到FFFF.对于 EF,总文件大小代表数据的大小和结构信息.对于 DF,总文件大小代表所有 EF 文件和 DF 文件的总文件大小,再加上该 DF 下剩余空间的大小.该 DF 文件本身的结构信息不包含在内.2.1.1.4.3 文件描述符文件描述符字节字节描述描述状态状态值值长度长度1标签M8212长度M02 或 0513文件描述符见下表M14数据编
22、码M2115 到 6记录长度C0001 到 00FF27记录个数C01 到 FE1M: 必须C: 对于线形文件和循环文件是必须的,对其它不适用.-文件描述符内容:参见下表11 / 38表表11.511.5:文件描述字节:文件描述字节b8b8b7b7b6b6b5b5b4b4b3b3b2b2b1b1含义含义0X-文件访问属性文件访问属性00-非共享文件01-共享文件0-XXX-文件类型文件类型0-000-工作EF0-001-内部EF0-010-0-011-0-100-0-101-0-110-RFU0-111-DF 或 ADF0-XXXEFEF结构结构0-000无参考信息0-001透明文件二进制0-
23、010线性定长文件线形定长文件0-0110-1000-101RFU0-110循环文件0-111RFU1XXXXXXXRFU-数据编码:编码方式:参见ISO/IEC 7816-4.移动终端应该不检查与使用该字节.-记录长度:内容:记录的长度.编码:记录的长度用两个字节表示.-记录的个数:内容:表示记录的个数编码:用一个字节标识2.1.1.4.4 文件标识符文件标识符字节字节描述描述值值长度长度1标签8312长度0213 to 4文件标识符212 / 382.1.1.4.5 DFDF名称名称字节字节描述描述值值长度长度1标签8412长度1 X 1613 to 2+XDF 名称XDF 名称是一个字节
24、串,即 AID,用来唯一标识归属应用的文件.2.1.1.4.6 专有信息专有信息字节字节描述描述长度长度1专有信息标签 = A5 12长度13 to 2+X专有信息,格式化的X专有信息的描述参见下表.描述描述标签标签状态状态章节章节UICC 特性80C1应用电源损耗81C2最小应用时钟频率82C3可以内存大小83C4C1: UICC 属性对于 MF 是必须的.C2: 对于 ADF 是可选的.并且不适用于 MF,EF 和 DF.C3: 对于 ADF 是可选的.并且不适用于 MF,EF 和 DF.C4: 对于 ADF,MF,DF 是可选的.并且不适用于 EF.一个应用可以提供一个或多个电源损耗数据
25、,或一个或多个最小时钟频率数据.13 / 3811.1.1.4.6.111.1.1.4.6.1UICCUICC 特性特性字节字节描述描述值值长度长度1标签8012长度0113UICC 特性字节,见下表1表表 11.6:11.6: UICCUICC 特性字节特性字节b8b8b7b7b6b6b5b5b4b4b3b3b2b2b1b1含义含义-XX-1时钟停止模式允许-00-1无优先级别-01-1该级别优先-10-1低级别优先-11-1RFU-XX-0时钟停止模式不允许-00-0从不-01-0除非在高级别时-10-0除非在低级别时-11-0RFU-X-支持电压级别A-X-支持电压级别B-X-支持电压级
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学习 笔记 USIM 终端 命令 详解
链接地址:https://www.desk33.com/p-18363.html