15693协议命令格式汇总

协议基于一个交换

一、从VCD to VICC的一次请求;

请求格式:

1.1 请求标志位

1.2 命令编码

二、从VICC to VCD的一次响应;

响应格式:

2.1响应标志位

当上表中错误标志被VICC置位,将包含错误码域,并提示出现的错误信息错误码在表 7 中定义。假如 VICC 不支持表 7 中列出的规定错误码, VICC 将以错误码 '0F' 应答( "不给出错误信息")。

三、命令格式说明+示例;

1、清卡指令

VCD TO VICC

标志(1B)+命令编码(1B)+可选AFI(1B)+MASK长度(1B)+mask值(1B)+CRC16(2B)

17 01 00 00 82 32  (带AFI的清卡指令)

07 01 00 11 53

VICC TO VCD

标志(1B)+DSFID(1B)+UID(8B)+CRC16(2B)

00 00 5F 02 1F 9E 50 01 04 E0 C8 F4

00 11 AA 9C 37 59 50 01 04 E0 3D F8

2、读单个块指令

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+数据(块数量1B)+CRC16(2B)

63 20 1D 9F 37 59 50 01 04 E0 0A 08 99

 

VICC TO VCD

标志(1B)+块状态(1B)+数据(4B)+CRC16(2B)

00 00 00 00 00 00 8F F7

00 00 11 22 33 44 FC 06

3、写单个块指令

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+块数量(1B)+数据(块长度4B)+CRC16(2B)

(块被锁定之后写指令返回错误状态)

23 21 1D 9F 37 59 50 01 04 E0 0A 11 22 33 44 4A 18

23 21 1D 9F 37 59 50 01 04 E0 0B 55 66 77 88 24 3F

23 21 1D 9F 37 59 50 01 04 E0 0C 99 AA BB CC 06 6B

VICC TO VCD

标志(1B)+ CRC16(2B)

00 78 F0

4、锁定块

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+块序号(1Byte)+CRC16(2Byte)

(锁定之后为永久锁定,能读不能写,二次锁定返回错误状态)

 

23 22 AA 9C 37 59 50 01 04 E0 0A 0B A3

VICC TO VCD

标志(1B)+ CRC16(2B)

00 78 F0

5、读多个快

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+数据(首块序号+块数量)(2B)+CRC16(2B)

(块数量为0表示读单个块)

63 23 1D 9F 37 59 50 01 04 E0 0A 01 93 93

63 23 1D 9F 37 59 50 01 04 E0 0A 02 08 A1

 

VICC TO VCD

标志(1Byte)+[块状态(1Byte)+数据(4Byte)]*(块数量+1)+CRC16(2Byte)

 

00 00 11 22 33 44 00 55 66 77 88 22 B1

00 00 11 22 33 44 00 55 66 77 88 00 99 AA BB CC 00 00

6、写多个块

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+首块序号(1B)+块数量(1B)+数据(块长度NB)+CRC16(2B)

(一直返回error未找到原因)

 

23 24 1D 9F 37 59 50 01 04 E0 09 05 01 01 01 01 02 02 02 02 03 03 03 03 04 04 04 04 05 05 05 05 B3 81

VICC TO VCD

数据(块长度NByte)+CRC16(2Byte)

01 0F 68 EE

7、选择

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+CRC16(2Byte)

23 25 1D 9F 37 59 50 01 04 E0 A3 05

VICC TO VCD

标志(1Byte)+CRC16(2Byte)

 

00 78 F0

8、复位准备

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+CRC16(2Byte)

23 26 1D 9F 37 59 50 01 04 E0 A4 D3

VICC TO VCD

标志(1Byte)+CRC16(2Byte)

 

00 78 F0

9、写AFI

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+AFI值(1Byte)+CRC16(2Byte)

(AFI被锁定后二次写入返回错误状态)

23 27 1D 9F 37 59 50 01 04 E0 00 A2 3F

VICC TO VCD

标志(1Byte)+CRC16(2Byte)

 

00 78 F0

10、锁定AFI

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+CRC16(2Byte)

(AFI被锁定后二次锁定返回错误状态)

23 28 1D 9F 37 59 50 01 04 E0 71 08

VICC TO VCD

标志(1Byte)+CRC16(2Byte)

 

00 78 F0

11、写DSFID命令

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+DSFID值(1Byte)+CRC16(2Byte)

(DSFID被锁定后二次写入返回错误状态)

23 29 1D 9F 37 59 50 01 04 E0 11 51 BF

VICC TO VCD

标志(1Byte)+CRC16(2Byte)

 

00 78 F0

12、锁定DSFID命令

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+CRC16(2Byte)

(DSFID被锁定后二次锁定返回错误状态)

23 2A 1D 9F 37 59 50 01 04 E0 8B 93

VICC TO VCD

标志(1Byte)+CRC16(2Byte)

00 78 F0

13、获取系统信息

VCD TO VICC

标志(1Byte)+命令编码(1Byte)+UID(8Byte)+CRC16(2Byte)

23 2B 1D 9F 37 59 50 01 04 E0 76 DE

VICC TO VCD

标志(1B)+信息标志(1B)+UID(8B)+DSFID(1B)+afi(1B)+信息域(2B)+CRC16(2B)

 

00 0F 1D 9F 37 59 50 01 04 E0 11 00 1B 03 01 51 00

00 0F C7 C2 37 59 50 01 04 E0 00 00 1B 03 01 33 00

14、获取多个块安全状态

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+首块序号(1B)+块数量(1B)+CRC16(2B)

(返回状态数量等于块数量加一)

23 2C 1D 9F 37 59 50 01 04 E0 09 06 68 86

VICC TO VCD

标志(1Byte)+块安全状态(NByte)+CRC16(2Byte)

 

00 00 00 00 00 00 00 00 73 83

15、静默

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B) +CRC16(2B)

23 02 AA 9C 37 59 50 01 04 E0 72 09

VICC TO VCD

 

猜你喜欢

转载自www.cnblogs.com/smy87/p/9166460.html