1、命令功能描述
该命令用于恢复当前应用。
当本命令成功执行以后,执行APPLICATION BLOCK命令临时锁定的应用各种使用限制将被解除。
2、命令报文格式
命令的APDU内容如下所示:
代码 值 CLA 0x84
INS 0x18
P1 0x00
P2 0x00
Lc 0x04
Data MAC
Le 不存在
其中:
* 本命令数据域不包含任何数据。
* 在数据域中包含有报文鉴别码MAC,MAC的计算通常用应用DF的主控密钥或者专用的密钥计算得到。
3、响应报文数据
响应报文数据域不存在。
4、响应报文状态码
此命令执行成功的状态码为0x9000。
对于异常情况,IC卡可能回送的错误码如下所示:
SW1 SW2 含义 0x64 0x00 标志状态位没有改变
0x65 0x81 存储空间错误
0x67 0x00 Lc错误
0x69 0x82 安全条件不满足
0x69 0x87 MAC丢失
0x69 0x88 MAC错误
0x6A 0x86 P1、P2不正确
0x6D 0x00 INS错误
0x6E 0x00 CLA错误
0x93 0x03 应用已经被永久锁定
5、命令实现的其他要求
如果实现了APPLICATION BLOCK命令对应用执行临时锁定操作的话,必须相对应的实现本命令。
在本命令中计算MAC所采用的密钥和APPLICATION BLOCK命令中计算MAC的密钥一般选用同一密钥。
6、命令实现设计
在本命令执行之前,需要验证MAC的有效性。
在执行应用解锁操作时,要检查DF文件描述块中的状态字。
* 如果不为临时锁定,将不进行任何操作,返回相应的状态码;
* 如果为临时锁定的话,将其改为支持状态,并且同时修改当前应用的状态标志,后续命令的执行操作马上生效。
7、命令使用示例
(1)预设环境
假设已经选定的应用为
应用锁定示例中被临时锁定的应用。
(2)命令报文
解锁当前应用的APDU:
84 18 00 00 04 11 22 33 44
其中:
* 84 表示APPLICATION UNBLOCK命令的CLA。
* 18 表示APPLICATION UNBLOCK命令的INS。
* 00 表示APPLICATION UNBLOCK命令的P1。
* 00 表示APPLICATION UNBLOCK命令的P2。
* 04 表示APPLICATION UNBLOCK命令的Lc,即数据域的长度。
* 11223344 表示APPLICATION UNBLOCK命令的MAC。
(3)APPLICATION UNBLOCK 响应报文
卡片处理以后,APPLICATION UNBLOCK 没有响应报文。
文章评论(0条评论)
登录后参与讨论