学习笔记usim卡与终端命令详解.doc

上传人:文库蛋蛋多 文档编号:2388198 上传时间:2023-02-17 格式:DOC 页数:41 大小:739.50KB
返回 下载 相关 举报
学习笔记usim卡与终端命令详解.doc_第1页
第1页 / 共41页
学习笔记usim卡与终端命令详解.doc_第2页
第2页 / 共41页
学习笔记usim卡与终端命令详解.doc_第3页
第3页 / 共41页
学习笔记usim卡与终端命令详解.doc_第4页
第4页 / 共41页
学习笔记usim卡与终端命令详解.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《学习笔记usim卡与终端命令详解.doc》由会员分享,可在线阅读,更多相关《学习笔记usim卡与终端命令详解.doc(41页珍藏版)》请在三一办公上搜索。

1、ETSI TS 102 221UICC与终端接口;物理和逻辑特性1 USIM-ME命令结构本章节描述了UICC(USIM)所支持的命令和响应APDU格式。1.1 命令APDU结构本章节描述了一个通用的应用协议数据单元(APDU)的基本结构。APDU是指在传输层之上的应用层的数据(移动设备和卡之间)传输协议。一个命令APDU包含数据包头和数据体。见下表,其中,数据包头包含CLA字段,INS字段,P1和P2字段,其是命令APDU的必要组成部分。数据体部分是可选部分,包括Lc,Data和Le。表10.1: 命令APDU的内容代码长度描述类属CLA1指令所属的类包头INS1指令代码P11参数1P21参

2、数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 Le2.1.1 Class字段编码Class类字段的最高4位(b8-b5)的含义参见下表,位4和3表示安全数据标识,位2和1表示所用的逻辑通道,逻辑通道可以从0到3。如果UICC卡支持逻辑通道机制,那么最大可获得的逻辑通道数标识在ATR的卡兼容性数据对象中,

3、如果该数据对象不存在,则只支持b2 = b1 = 0的数据通道。一个运行在支持逻辑通道的UICC上的应用,应该要么在消息校验中,从签名的计算中去除类字节,或者将其设置为缺省值。移动终端可以改变应用所使用的逻辑通道,与所使用的逻辑通道比较安全消息校验签名。 表 10.3: 类字节编码b8b7b6b5b4b3b2b1值含义0000-0X参见 ISO/IEC781641010-AX参见ISO/IEC78164,除非特殊说明。1000-8X参见ISO/IEC78164及本文档-XX-安全消息标识(参见表 10.4)-XX-逻辑通道号表 10.4: 安全消息标识编码b4b3含义00在终端和卡之间不使用S

4、M01私有SM格式1x按照 ISO/IEC 7816-4使用安全管理10不鉴别命令头11鉴别命令头缺省情况下,卡不采用安全消息,除非由应用特别指出。2.1.2 指令字段编码参见下表表10.5: 电信应用的指令字节编码命令 CLA INS命令 APDUs SELECT FILE0XA4STATUS8XF2READ BINARY0XB0UPDATE BINARY0XD6READ RECORD0XB2UPDATE RECORD0XDCSEARCH RECORD0XA2INCREASE8X32VERIFY0X20CHANGE PIN0X24DISABLE PIN0X26ENABLE PIN0X28UN

5、BLOCK PIN0X2CDEACTIVATE FILE0X04ACTIVATE FILE0X44AUTHENTICATE0X88GET CHALLENGE0X84TERMINAL PROFILE8010ENVELOPE80C2FETCH8012TERMINAL RESPONSE8014MANAGE CHANNEL0X70传输导向 APDUsGET RESPONSE0XC02.1.3 参数字段编码参数字节P1和P2的使用和具体的命令有关。如果参数未被使用,则设置未00。具体编码方式参见具体的命令。2.1.4 Lc字段的编码该字段表示数据的长度,其为可选项。如果该字段存在,则在其后将跟着相应长度

6、的数据字节。移动设备可以发送1到255各字节。2.1.5 数据体编码 数据体的编码与具体的命令有关。参见下面章节。2.1.6 Le字段的编码该字段表示命令发送后所期望的最大返回数据长度,其为可选项。如果该字段存在,则在响应数据中应包含相应长度的数据。如果Le设置为00,则表示移动终端期望最大256个字节的数据,则UICC可返回介于1到256之间长度的数据。1.2 响应APDU结构响应APDU包含一个可选的数据体和一个必须的状态字,该状态字由两个字节组成: SW1 和 SW2。数据长度由Lr指示。参见下表表10.6: 响应APDU内容编码长度描述DataLr响应数据字串SW11状态字节1SW21

7、状态字节22.1.7 UICC返回的状态字本章节描述了由UICC返回的各种状态字2.1.7.1 正常过程表 10.7:状态字编码- 正常过程SW1SW2描述9000命令正常结束 91XX命令正常结束,并包含UICC所返回的数据的长度,用XX 表示。2.1.7.2 延迟过程 表10.8: 状态字编码- 延迟过程SW1SW2错误描述9300STK忙,当前不能执行该命令。2.1.7.3 警告表 10.9: 状态字编码- 警告SW1SW2描述6200无参考信息,非易失内存没有改变6281部分返回数据可能损坏 6282读取文件或记录Le长度时,已经到结尾6283所选的文件已经无效63CX在内部重试X次后

8、,命令执行成功-校验失败,还有X 次可试(参见注释)注释:对于VERIFY PIN命令,SW1SW2 指示命令成功执行,但是PIN不正确,并可以重试X 次。对于任何其它命令,表示“在内部重试X次后,命令执行成功”2.1.7.4 执行错误表 10.10: 状态字编码- 执行错误SW1SW2描述6400无参考信息,非易失内存没有改变6500无参考信息,非易失内存改变6581内存错误2.1.7.5 检查错误表 10.11: 状态字编码- 检查错误SW1SW2描述6700-长度错误67XX除了SW2 = 00的情况下,该状态字与命令相关6B00错误的参数 P1-P26D00指令字段不支持或错误6E00

9、类字段不支持6F00技术问题,无精确诊断信息6FXX-除了SW2 = 00的情况下,该状态字与命令相关2.1.7.5.1 CLA字段中的功能不支持表10.12: 状态字编码- CLA字段中的功能不支持SW1SW2描述6800无参考信息6881不支持逻辑通道6882不支持安全消息 2.1.7.5.2 命令不允许执行表10.13: 状态字编码-命令不允许执行SW1SW2描述6900无参考信息6981命令与该文件结构不兼容6982不满足安全条件6983鉴权/PIN被禁止6984引用的数据失效6985使用条件不满足6986命令不允许执行(没有选中EF)2.1.7.5.3 错误的参数表10.14: 状态

10、字编码-错误的参数SW1SW2描述6A80数据体参数不正确6A81功能不支持6A82文件没有找到6A83记录没有找到6A86参数P1-P2不正确6A87Lc 与P1-P2不一致6A88引用的数据没有找到2.1.7.6 应用错误表10.15: 状态字编码-应用错误SW1SW2错误描述9850INCREASE 命令不能执行,已经达到最大值9862鉴权错误(与应用相关)注释: 应用可以定义自己的错误代码 2.1.8 命令的状态字下表表示对于每一个命令所可能返回的状态字(用*号注明)。表10.16: 命令和状态字Status WordsSELECTSTATUSUPDATE BINARYUPDATE R

11、ECORDREAD BINARYREAD RECORDSEARCH RECORDINCREASEVERIFY PINCHANGE PINDISABLE PINENABLE PINUNBLOCK PINDEACTIVATE FILEACTIVATE FILEAUTHENTICATEGET CHALLENGETERMINAL PROFILEENVELOPEFETCHTERMINAL RESPONSEMANAGE CHANNEL90 00*91 XX*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

12、XX (参见注释)*68 00*68 81*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*6F 00*6F XX (参见注释)*注释:除了SW2 = 00的情况只有对支持USAT的移动终端,UICC才可以返回状态字91 XX和93 00。2.1.9 逻辑通道使用逻辑通道的命令,用CLA字段的最低两位表示逻辑通道号,范围从0到3。逻辑通道号0是永久可以获得的。使用MANAGE CHANNEL 命令打开和关闭一个逻辑通道,逻辑通道号由UICC分配。2

13、 USIM-ME命令描述2.1 通用命令这里描述了应用说支持的各种命令和相应的响应状态字。如果应用不支持某个命令,则应该返回相应的状态字。2.1.1 SELECT2.1.1.1 功能描述本命令用于选择一个文件,参见第8章。在命令执行成功后,记录的指针并不确定。输入:- 文件标识符,应用标识符,路径,或空参数。 输出:- 如果选择的文件是MF,DF或者ADF: 文件标识符,总文件尺寸,PIN的状态,PIN禁止/使用的标识,及其它应用私有数据。- 如果选择的文件是EF: 文件标识符,总文件尺寸,访问条件,无效/有效标识,EF的结构,记录的长度(对于线性定长文件线形定长文件和循环文件)2.1.1.2

14、 命令参数和数据代码值CLA参见第10章INS参见第10章P1选择控制,见下表P2选择控制,见下表Lc数据的长度或为空Data文件标识符,DF名称,或路径,与P1的值相关Le空,00,或者期望的最大数据长度表 11.1: P1参数配置b8b7b6b5b4b3b2b1含义00000000选择 DF, EF或MF,通过文件标识符00000001选择当前DF的子DF00000011选择当前DF的父DF00000100通过DF名称选择应用参见注释00001000以MF为起始,路径选择00001001以当前DF为起始,路径选择注释::这里指选择应用表 11.2: P2参数配置b8b7b6b5b4b3b2

15、b1含义-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时,当以文件标识符作为参数选择文件的时候,按照以下的搜索顺序进行,- 当前DF的之间子文件;- 父DF;- 父DF的

16、直接子文件。当P1 04时,P2的位 b2 和 b1 没有意义,应该设置为0。当P1 = 04时,一个右侧数据可截断的AID可以作为输入数据。2.1.1.3 响应数据字节描述长度1FCP 模板标签 = 6212 (to 3)FCP模板的长度1 或 23 or 4 to LrFCP 模板数据X响应的数据包含所选择文件的文件控制参数(FCP),其内容与所选择的文件有关。参见下表。终端可以忽略其不支持的标签数据。2.1.1.3.1 对于MF, DF 或 ADF的响应数据下表为对应于MF,DF,或者ADF的响应数据,表11.3:对于MF, DF 或 ADF的响应数据描述标签章节状态文件描述符8211.

17、1.1.4.3M文件标识符8311.1.1.4.4C1DF 名称(AID)8411.1.1.4.5C2专有信息A511.1.1.4.6C3生存周期8A11.1.1.4.9M安全特性86, 8B, 8C or AB11.1.1.4.7C4PIN状态模板DOC611.1.1.4.10M总文件大小8111.1.1.4.2OM:必须。O:可选。C1:对于DF或MF,必选。对于ADF,可选。C2:DF名称只对ADF是必须的。C3:对于MF,专有信息是必须的,对于DF/ADF,是可选的。C4:有,且只有一个标签必须有。2.1.1.3.2 对于EF的响应数据下表为对应于EF的响应数据,表11.4: 对于EF

18、的响应数据描述标签章节状态文件描述符8211.1.1.4.3M文件标识符8311.1.1.4.4M专有信息A511.1.1.4.6O身存周期8A11.1.1.4.9M安全特性86, 8B, 8C, or AB11.1.1.4.7C1文件大小8011.1.1.4.1M总文件大小8111.1.1.4.2O短标识符(SFI)8811.1.1.4.8OM:必须。O:可选。C1:有,且只有一个标签必须有。2.1.1.4 文件控制参数2.1.1.4.1 文件大小字节描述值长度1标签8012长度0213 to 4文件中数据字节的长度,除去结构信息2文件的大小介于0000 和FFFF 之间。对于二进制文件,其

19、是文件数据体的长度。对于线性定长文件线形定长文件或循环文件,其是记录长度乘以记录的个数。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数据编

20、码M2115 到6记录长度C0001 到 00FF27记录个数C01 到 FE1M: 必须C: 对于线形文件和循环文件是必须的,对其它不适用。- 文件描述符 内容:参见下表表11.5:文件描述字节b8b7b6b5b4b3b2b1含义0X-文件访问属性00-非共享文件01-共享文件0-XXX-文件类型0-000-工作EF0-001-内部EF0-010-RFU0-011-0-100-0-101-0-110-0-111-DF 或 ADF0-XXXEF结构0-000无参考信息0-001透明文件(二进制)0-010线性定长文件线形定长文件0-011RFU0-1000-1010-110循环文件0-111R

21、FU1XXXXXXXRFU- 数据编码:编码方式:参见ISO/IEC 7816-4。移动终端应该不检查及使用该字节。- 记录长度: 内容:记录的长度。编码:记录的长度用两个字节表示。- 记录的个数: 内容:表示记录的个数编码:用一个字节标识2.1.1.4.4 文件标识符字节描述值长度1标签8312长度0213 to 4文件标识符22.1.1.4.5 DF名称字节描述值长度1标签8412长度1 X 1613 to 2+XDF名称XDF名称是一个字节串,即AID,用来唯一标识归属应用的文件。2.1.1.4.6 专有信息字节描述长度1专有信息标签 = A5 12长度13 to 2+X专有信息,格式化

22、的X专有信息的描述参见下表。描述标签状态章节UICC 特性80C111.1.1.4.6.1应用电源损耗81C211.1.1.4.6.2最小应用时钟频率82C311.1.1.4.6.3可以内存大小83C411.1.1.4.6.4C1:UICC属性对于MF是必须的。C2:对于ADF是可选的。并且不适用于MF,EF和DF。C3:对于ADF是可选的。并且不适用于MF,EF和DF。C4:对于ADF,MF,DF是可选的。并且不适用于EF。一个应用可以提供一个或多个电源损耗数据,或一个或多个最小时钟频率数据。11.1.1.4.6.1UICC 特性字节描述值长度1标签8012长度0113UICC 特性字节,见

23、下表1表 11.6: UICC 特性字节b8b7b6b5b4b3b2b1含义-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-支持电压级别CX-X-RFU (应该被设置为 0)如果b1为 1,则允许时钟停止在高级别或者低级别,在这种情况下,b3 和b4用来标识优先的级别。如果b1为0,时钟值允许停止在由b3=1 (就是说可以停止在高级别) 或者b4=1 (就是说可以停止在低级别)满足条件的情况

24、下。如果所有的这三位都设置为0,那么时钟不允许停止。所支持的电压级别见上表,如果不支持某电压级别,则编码为0。 11.1.1.4.6.2应用电源损耗应用的电源损耗由标签为81 的TLV结构说明。第一个字节表示进行电源损耗测量时所处的支持电压。该字节的编码与其在ATR中的编码相同。第二个字节指定了电源损耗,以mA为单位。第三个字节为进行损耗测量时的时钟频率。字节描述值长度1标签8112长度0313电源损耗测量时所处的电压级别14应用电源损耗01-3C15参考频率0A-FF1参考频率的分辨率为0,1 MHz,就是说0A 是1MHz ,FE 为25,4 MHz。值FF表示没有参考频率。 11.1.1

25、.4.6.3最小应用时钟频率应用的最小时钟频率由标签为82的TLV结构指定。该结构指定了应用所需的最小时钟频率。如果需要的话,应用可以指定一个到多个最小时钟频率。字节描述值长度1标签8212长度0113应用最小时钟频率0A-FF1参考频率的分辨率为0,1 MHz,就是说0A 是1MHz ,FE 为25,4 MHz。值FF表示没有参考频率。11.1.1.4.6.4 剩余内存在所选择的DF(及在MF下的ADF)下的可以用于创建DF或EF的内存大小。字节描述值长度1标签8312长度X, X=213 to 2+X大小X2.1.1.4.7 安全特性2.1.1.4.7.1 紧凑模式字节描述值长度1标签8C

26、12长度X13 AM字节1X-1SC 字节X+2参见ISO/IEC 7816-9。2.1.1.4.7.2 扩展模式字节描述值长度注释1标签AB12长度X-213 AM DO 标签8X (参见注释1)1安全规则 #14 长度X15+XAM_DO(参见注释2)X6+XSC_DO 标签(参见注释2)17+X长度Y18+X+YSC_DO(参见注释2)Y3 AM DO标签8X (参见注释1)1安全规则 #N4 长度W15+WAM_DO(参见注释2)W6+WSC_DO标签(参见注释2)17+W长度Z18+W+ZSC_DO(参见注释2)Z注释1:X的值依赖于AM_DO 的用法,参见7816-9。注释2:参见

27、ISO/IEC 7816-9。2.1.1.4.7.3 索引到扩展模式如果标签tag8B的数据长度等于03,参见下表:字节描述值长度1标签8B12长度313-4EFARR 的文件标识符25 EFARR 中对应的记录数1如果标签tag8B的数据长度等于02 + X x 02,参见下表:字节描述值长度1标签8B12长度02 + X x 0213 4EFARR 文件标识符2X+4SEID1X+5EFARR 中对应的记录数注释::SEID和EFARR 中对应的记录数 是成对出现的。2.1.1.4.8 短标识符字节描述值长度1标签8812长度00 or 0113短标识符字节0 或 1如果该TLV结构不存在

28、,那么文件的短标识符就是文件标识符的最低5位。如果该TLV结构存在,但是为空(就是说长度为0),那么该文件不支持SFI。如果该TLV结构存在,并且长度为1,那么SFI用短标识符字节的最高5位表示,最低3位应该设置为0。2.1.1.4.9 生存周期字节描述值长度1标签8A12长度113生存周期,见下表1表 11.7: 生存周期编码b8b7B6b5b4b3b2b1含义00000000无参考信息00000001创建状态00000011初始化状态000001-1操作状态 激活000001-0操作状态 去活000011-终止状态 0XXXX专有任何其它值RFU2.1.1.4.10 PIN状态模板DO该T

29、LV结构包含了DF/ADF的状态信息,访问DF/ADF及子文件所使用的PIN等信息。参见ISO/IEC 7816-4。字节描述值长度1标签C612长度13 PS_DO标签9014长度X1X+4PS_DOXX+5使用限定 DO标签,参见注释2 951X+6长度011X+7使用限定,参见ETSI 102.2211X+8密钥索引标签831X+9长度011X+10密钥索引(PIN)参见EFSI102.2211注释1:可能有一个或多个密钥索引标签在PS_DO之后。注释2:该TLV结构对于密钥索引为11(通用PIN)是必须的,否则则为可选的。2.1.2 STATUS2.1.2.1 功能描述该命令返回当前目录和应用的相关信息。 也可以用来指示应用的激活过程或终止过程被成功执行。输入:- 无输出:- 以下之一: 当前目录的FCP。 当前选择应用的DFNAME TLV数据结构

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号