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

上传人:夺命阿水 文档编号:18363 上传时间:2022-07-04 格式:DOC 页数:38 大小:728.50KB
返回 下载 相关 举报
学习笔记-USIM卡与终端命令详解.doc_第1页
第1页 / 共38页
学习笔记-USIM卡与终端命令详解.doc_第2页
第2页 / 共38页
学习笔记-USIM卡与终端命令详解.doc_第3页
第3页 / 共38页
学习笔记-USIM卡与终端命令详解.doc_第4页
第4页 / 共38页
学习笔记-USIM卡与终端命令详解.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《学习笔记-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-支持电压级

26、别CX-X-RFU 如果 b1 为 1,则允许时钟停止在高级别或者低级别,在这种情况下,b3 和 b4 用来标识优先的级别.如果 b1 为0,时钟值允许停止在由 b3 = 1 或者 b4 = 1 满足条件的情况下.如果所有的这三位都设置为 0,那么时钟不允许停止.所支持的电压级别见上表,如果不支持某电压级别,则编码为 0.11.1.1.4.6.211.1.1.4.6.2应用电源损耗应用电源损耗应用的电源损耗由标签为81 的 TLV 结构说明.第一个字节表示进行电源损耗测量时所处的支持电压.该字节的编码与其在 ATR 中的编码相同.第二个字节指定了电源损耗,以mA 为单位.第三个字节为进行损耗测

27、量时的时钟频率.字节字节描述描述值值长度长度1标签8112长度0313电源损耗测量时所处的电压级别14应用电源损耗01-3C15参考频率0A-FF1参考频率的分辨率为 0,1 MHz,就是说0A 是 1 MHz ,FE 为 25,4 MHz.值FF表示没有参考频率.14 / 3811.1.1.4.6.311.1.1.4.6.3最小应用时钟频率最小应用时钟频率应用的最小时钟频率由标签为82的 TLV 结构指定.该结构指定了应用所需的最小时钟频率.如果需要的话,应用可以指定一个到多个最小时钟频率.字节字节描述描述值值长度长度1标签8212长度0113应用最小时钟频率0A-FF1参考频率的分辨率为

28、0,1 MHz,就是说0A 是 1 MHz ,FE 为 25,4 MHz.值FF表示没有参考频率.11.1.1.4.6.411.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标签8C12长度X13 AM 字节1X-1SC 字节X+2参见 ISO/IEC 7816-9.2.1.1.4.7.2 扩展模式扩展模式字节字节描述描述值值长度长度注

29、释注释1标签AB12长度X-213 AM DO 标签8X 14 长度X15+XAM_DOX6+XSC_DO 标签17+X长度Y18+X+YSC_DOY安全规则 #13 AM DO 标签8X 1安全规则 #N15 / 384 长度W15+WAM_DOW6+WSC_DO 标签17+W长度Z18+W+ZSC_DOZ注释 1: X的值依赖于 AM_DO 的用法,参见 7816-9.注释 2:参见 ISO/IEC 7816-9.2.1.1.4.7.3 索引到扩展模式索引到扩展模式如果标签 tag8B的数据长度等于03,参见下表:字节字节描述描述值值长度长度1标签8B12长度313-4EFARR的文件标识

30、符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 结构不存在,那么文件的短标识符就是文件标识符的最低 5 位.如果该 TLV 结构存在,但是为空就是说长度为 0,那么该文件不支持 SFI.如果该 TL

31、V 结构存在,并且长度为 1,那么 SFI 用短标识符字节的最高 5 位表示,最低 3位应该设置为 0.2.1.1.4.9 生存周期生存周期字节字节描述描述值值长度长度1标签8A12长度113生存周期,见下表116 / 38表表 11.711.7:生存周期编码:生存周期编码b8b8b7b7B6B6b5b5b4b4b3b3b2b2b1b1含义含义00000000无参考信息00000001创建状态00000011初始化状态000001-1操作状态 激活000001-0操作状态 去活000011-终止状态 0XXXX专有任何其它值RFU2.1.1.4.10 PINPIN状态模板状态模板DODO该 T

32、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 STAT

33、USSTATUS2.1.2.1 功能描述功能描述该命令返回当前目录和应用的相关信息.也可以用来指示应用的激活过程或终止过程被成功执行.输入:-无输出:-以下之一:当前目录的FCP.当前选择应用的DFNAME TLV数据结构17 / 38无数据返回2.1.2.2 命令参数命令参数代码代码值值CLA参见第 10 章INS参见第 10 章P1应用状态的指示,见下表P2见下表Le空, 00,或最大的期望数据长度表表 11.811.8:P1P1参数配置参数配置b8b8b7b7b6b6b5b5b4b4b3b3B2B2B1B1含义含义00000000无指示00000001当前的应用正在被初始化0000001

34、0终端将要终止当前应用表表 11.9:11.9: P2P2参数配置参数配置b8b8b7b7b6b6b5b5b4b4b3b3b2b2b1b1含义含义00000000与SELECT 命令相同00000001返回当前选择应用的DFNAME TLV 00001100无数据返回.任意其它值RFU.2.1.3 READREAD BINARYBINARY2.1.3.1 功能描述功能描述该命令用于读取一个二进制文件的内容.只有在对文件有 READ 权限时,才能执行该命令.输入:-地址和长度输出:-数据输出2.1.3.2 命令参数命令参数代码代码值值CLA参见第 10 章INS参见第 10 章P1见下表P2偏移

35、量低字节Lc无Data无Le读取数据长度表 11.10: P1 参数配置18 / 38b8b8B7B7B6B6b5b5b4b4b3b3b2b2b1b1含义含义0XXXXXXXb7-b1 是要读取数据的偏移量 P2 是该偏移量的低字节100XXXXX使用了SFI ,b1-b5既是SFI .P2 是偏移量.响应数据:字节字节描述描述长度长度1 Le数据Le2.1.4 UPDATEUPDATE BINARYBINARY2.1.4.1 功能描述功能描述该命令用字节串更新一个二进制文件.只有在对文件有 UPDATE 权限时,才能执行该操作.输入:地址和数据长度数据输出:无2.1.4.2 命令参数和数据命

36、令参数和数据代码代码值值CLA参见第 10 章INS参见第 10 章P1参见表P2偏移量低字节Lc数据长度Data更新数据Le无参数 P1 和 P2 与 READ BINARY 命令相同.2.1.5 READREAD RECORDRECORD2.1.5.1 功能描述功能描述该命令从一个线性定长文件线形定长文件或循环文件中读取一个完整的记录.只有对该文件有 READ 权限的时候才能进行该操作.如果读取操作失败,记录的指针不应该改变.有四种文件的读取模式:CURRENT: 读取当前记录,记录指针没有改变.ABSOLUTE: 记录的绝对位置记录的绝对位置,记录的指针没有改变记录的指针没有改变.NEX

37、T:在执行在执行READ RECORD命令之前命令之前,先增加记录指针先增加记录指针,然后再读取该记录然后再读取该记录.如如果该指针在以前没果该指针在以前没有被设置过,则在执行该命令时,读取第一个记录,并将指针设置为当前记录.如果指针已经是文件线性定长文件线形定长文件的最后一条记录,则该命令不能改变指针,而且无数据返回.19 / 38如果指针已经是文件循环文件的最后一条记录,则该命令设置第一条记录为当前记录,并读取该记录.PREVIOUS:PREVIOUS:在执行READ RECORD命令之前,先将记录指针减一,然后再读取该记录.如果该指针在以前没有被设置过,则在执行该命令时,读取最后一个记录

38、,并将指针设置为当前记录.如果指针已经是文件线性定长文件线形定长文件的第一条记录,则该命令不能改变指针,而且无数据返回.如果指针已经是文件循环文件的第一条记录,则该命令设置最后一条记录为当前记录,并读取该记录.输入:-读取模式,记录数只对于绝对模式适用,以与数据的长度.输出:-记录的数据2.1.5.2 命令参数命令参数代码代码值值CLA参见第 10 章INS参见第 10 章P1记录号P2读取模式,见下表Lc无Data无Le所要读取的数据长度表 11.11:P2 参数配置b8b8b7b7B6B6b5b5b4b4b3b3b2b2b1b1含义含义00000-当前选择的 EFXXXXX-简短文件标识符

39、从 1 到 30-010下一个记录-011前一个记录-100绝对/当前 , 记录数见 P1,如果P1=00 则指当前记录对于下一个记录和前一个记录模式,P1 没有意义,由终端设置为00 .响应数据:字节字节描述描述长度长度1 Le读取的数据Le2.1.6 UPDATEUPDATE RECORDRECORD2.1.6.1 功能描述功能描述该命令在一个线性定长文件线形定长文件或循环文件中更新一个完整的记录.只有对该文件有 UPDATE 权限的时候才能进行该操作.如果更新操作失败,记录的指针不应该改变.有四种20 / 38文件的更新模式循环文件只允许 PREVIOUS 模式:CURRENT:CURR

40、ENT:更新当前记录,记录指针没有改变.ABSOLUTE:ABSOLUTE:记录的绝对位置,记录的指针没有改变.NEXT:NEXT:在执行UPDATE RECORD命令之前,先增加记录指针,然后该记录.如果该指针在以前没有被设置过,则在执行该命令时,更新第一个记录,并将指针设置为当前记录.如果指针已经是文件线性定长文件线形定长文件的最后一条记录,则该命令不能改变指针,而且无数据返回.如果指针已经是文件循环文件的最后一条记录,则该命令设置第一条记录为当前记录,并读取该记录.PREVIOUS:PREVIOUS:在执行UPDATE RECORD命令之前,先将记录指针减一,然后该指针的记录.如果该指针

41、在以前没有被设置过,则在执行该命令时,更新最后一个记录,并将指针设置为当前记录.如果指针已经是文件线性定长文件线形定长文件的第一条记录,则该命令不能改变指针,而且无数据返回.如果指针已经是文件循环文件的第一条记录,则该命令设置最后一条记录为当前记录,并更新该记录.对于循环文件种最旧的记录的更新,指针设置为当前记录,并为1.输入:-模式,记录数仅对据对模式适用,和记录的长度.-更新数据输出:-无2.1.6.2 命令参数和数据命令参数和数据代码代码值值CLA参见第 10 章INS参见第 10 章P1记录号P2模式,参见表Lc数据的长度Data数据Le无参数 P2 与 READ RECORD 命令中

42、的相同.对于下一个记录和前一个记录模式,P1 没有意义,由终端设置为00 .为保证向后兼容,UICC 不应该解释 P1 的值.21 / 382.1.7 SEARCHSEARCH RECORDRECORD2.1.7.1 功能描述功能描述该功能在一个线性定长文件线形定长文件或循环文件中,搜索一个特定的内容.只有在对该文件有 READ 权限的时候,才能执行该操作.搜索的方式有:-在记录的第一个字节简单搜索-从给定的记录偏移量开始-从记录中第一次找到的特定字节开始响应数据中要么为空,要么包含不超过 Le 指定数量的符合搜索条件的记录数.如果找到多个符合条件的记录,那么记录的指针设置为第一个符合条件的记

43、录指针.输入:-搜索模式简单/增强-偏移量-搜索目标.输出:-为空,如果Le为空,或者没有找到符合条件的记录-不超过有Le指定的符合条件的记录数.2.1.7.2 命令参数和数据命令参数和数据代码代码值值CLA参见第 10 章INS参见第 10 章P1记录数00 指当前记录P2见下表Lc数据长度Data-简单搜索:搜索字串-增强搜索:搜索指示2 个字节和搜索字串-专有搜索:专有数据Le空或最大长度数据表表11.1211.12: P2P2参数配置参数配置b b8 8b b7 7B B6 6b b5 5B B4 4b b3 3b b2 2b b1 1含义含义00000-当前算则的 EFXXXXX-简

44、短文件标识11111-RFU-0XXRFU 参见注释-10X简短搜索.P1 为记录数22 / 38-100从 P1 指定的记录向前搜索.-101从 P1 指定的记录向后搜索.-110增前搜索 见下表-111专有搜索注释:ISO/IEC 7816-9 保留表表 11.13:11.13: 增强搜索中的搜索指示的编码增强搜索中的搜索指示的编码b b8 8b7b7b6b6b5b5b4b4b3b3b2b2B1B1含义含义00000-搜索从由搜索指示的第2个字节指明的记录数开始00001-搜索从第一次找到的由搜索指示的第2个字节指定的字节的记录开始-0XXRFU 参见注释-1XXP1为记录数-100从P1

45、指定的记录向前搜索.-101从P1指定的记录向后搜索.-110从下一个记录向前搜索-111从前一个记录向后搜索任意其它值RFU注释:ISO/IEC 7816-9 保留响应数据:字节字节描述描述长度长度0 Le记录数Le注释:如果 Le 为空,则表示无记录数需返回.2.1.8 INCREASEINCREASE2.1.8.1 功能描述功能描述该命令将由终端设备提供的值与当前循环文件中最近增加/更新的记录中的值相加,并保存到最旧的记录中.只有在对该文件有 INCREASE 权限的时候,才能执行该操作.INCREASE 权限在访问条件中用 AM_DO 标签 84指明.输入:-要增加的值.输出:-增加后

46、的记录的值-已经增加的值2.1.8.2 命令参数和数据命令参数和数据代码代码值值CLA参见第 10 章INS参见第 10 章23 / 38P1见下表P200Lc数据长度Data要增加的值Le响应数据长度表表 11.14:11.14: P1P1参数配置参数配置b8b8b7b7b6b6b5b5b4b4b3b3b2b2b1b1含义含义00000000增加当前选择的 EF100XXXXX使用简短文件标识符注释:所有其它值保留在这个命令中,Lc 值应该 0 Lc .-在一次失败的校验之后,并且PIN并没有被阻塞的情况下,UICC返回的状态字中SW1, SW2 中63CX 中的X表示剩余的校验次数.2.1

47、.9.3 命令参数命令参数代码代码值值CLA参见第10章INS参见第10章P100.P2参见下表Lc数据长度= 00 或 08.DataPIN 值Le无表表11.1511.15:P2P2参数配置参数配置b8b8b7b7b6b6b5b5b4b4b3b3b2b2b1b1含义含义00000000不支持0-全局参考数据1-特定参考数据-XX-00 其它值保留-XXXXX参考数据号01 到 1F命令数据:字节字节描述描述长度长度1 - 8PIN 值82.1.10 CHANGECHANGE PINPIN2.1.10.1 功能描述功能描述该命令用于先进行用户输入 PIN 的校验,然后有条件的用新的 PIN

48、替换 UICC 中已经存在的 PIN.一旦在一个逻辑通道中成功的更改了 PIN 值,那么该新的 PIN 值在所有的逻辑通道中立即生效.该功能赋予一个新的 PIN 值,应以下列条件位前提:-PIN没有被禁止;-PIN没有被阻塞.如果旧的 PIN 值校验正确,那么剩余的 PIN 校验次数要被重置到初始值 3,新的 PIN 值变为合法值.如果旧的 PIN 值校验错误,那么剩余的 PIN 的校验次数要减一,PIN 值保持不变.如果连续三次校验都失败,那么该 PIN 值被阻塞.之后所有的文件访问都被禁止,直到正确执行 UNBLOCK PIN 命令后.输入:25 / 38-PIN的标识, 旧的PIN, 新

49、的PIN.输出:-无2.1.10.2 命令参数命令参数代码代码值值CLA参见第10章INS参见第10章P100.P2与命令VERIFY PIN相同Lc数据长度= 10.Data旧的 PIN 值 value,新的 PIN 值Le无注意:Change PIN在ISO/IEC 7816-8中叫做交换索引数据.字节字节描述描述长度长度1 8旧的PIN值89 16新的PIN 值82.1.11 DISABLEDISABLE PINPIN2.1.11.1 功能描述功能描述该命令用于禁止 PIN 的校验,该命令还可以用于是否使用别的全局密钥索引.在成功执行该命令后,UICC 应该对 SE 进行一次校验,因为当

50、前的 SE 可能已经改变.在成功执行该命令后,所有由 PIN 来保护的文件现在变成了就好像它们 的访问权限变成了总是,除非别的全局密钥索引替换了 PIN.如果 PIN 的校验是正确的,那么剩余的 PIN 校验次数应该被重置为初始值 3,接着 PIN被禁止.如果 PIN 的校验是错误的,那么剩余的 PIN 校验次数应该减一,并且 PIN 的状态保持不变.如果连续三次校验都失败,那么该 PIN 值被阻塞.之后所有的文件访问都被禁止,直到正确执行 UNBLOCK PIN 命令后.输入:-PIN.输出:26 / 38-无2.1.11.2 命令参数命令参数代码代码值值CLA参见第10章INS参见第10章

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

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号