智能卡应用协议数据单元

维基百科,自由的百科全书

智能卡领域, 应用协议数据单元 (APDU) 是主机端和智能卡之间的通信单元。APDU的结构由ISO/IEC 7816-4 定义。 Organization, security and commands for interchange .[1]

APDU命令-响应消息对[编辑]

有两种类别的APDU:命令APDU和响应APDU。命令APDU由读卡器发送到智能卡-它包含了一个必选的4字节的头部(CLA,INS,P1,P2)和0到255字节的数据。响应APDU由智能卡发送到读卡器-它包含了必选的2字节的状态和0到256字节的数据。

命令APDU
字段名 长度(字节) 说明
CLA 1 指令类型 - 指示命令的类型,例如行业间命令或者专有命令
INS 1 指令代码 - 表示特定的命令,如“写数据”
P1-P2 2 该命令APDU的指令参数,如指明文件偏移地址以在偏移地址处写入数据
Lc 0, 1 或 3 指明命令APDU中携带的数据(Command data)字节数(Nc)
Command data Nc Nc字节的数据
Le 0,1,2或3个 指明预期响应数据的最大字节数(Ne)
响应APDU
Response data Nr(最大为Ne) 响应数据
SW1-SW2
(响应后缀)
2 命令处理状态,如90 00(十六进制)表示成功

参考文献:[编辑]

外部链接[编辑]