PUT DATA的命令介绍
定义和范围
设置数据(PUT DATA) 命令用来修改卡片中的一些基本数据对象的值。只有有标签的数据才能使用这条命令修改。
此命令不能用来修改结构数据对象。
可以用设置数据命令修改的数据
表B.16列出的数据可以使用此命令修改。
表B.16 使用设置数据(PUT DATA)命令修改的数据
命令报文
设置数据(PUT DATA)命令报文根据表B.17编码。
表B.17 设置数据(PUT DATA)命令报文
编码 值
CLA ‘04’
INS ‘DA’
P1 P2 要修改的数据对象的标签
Lc 数据域字节数
数据域 数据对象的新值(不包括标签和长度 )和MAC 数据
Le 不存在
命令报文的数据域
命令数据域中包括的是要修改的数据对象的值,后面加一个4到8字节的MAC。MAC的计算见附录C中描述。
响应报文的数据域
响应报文没有数据域。
响应报文返回的处理状态
“9000”编码表示命令成功执行。
表 B.18 设置数据(PUT DATA)命令的警告响应码
SW1 SW2 含义
62 0 没有信息返回
62 81 数据可能被破坏
表B.19 设置数据(PUT DATA)命令的错误响应码
SW1 SW2 含义
64 0 没有准确诊断
65 81 内存失败
67 0 长度错误
68 82 不支持安全报文
69 82 安全状态不满足
69 86 命令不允许
69 87 安全报文数据对象丢失
69 88 安全报文数据对象不正确 6988的含义是MAC校验出错
6A 80 错误的参数
6A 81 功能不支持
6A 84 文件中没有足够空间
6A 85 Lc 和TLV 结构不一致