4.TTL数据结构:
• ISO/IEC 14443 / ISO/IEC 7816-3中定义的
TTL处理过程.
终端始终是主动方,卡片是被动方.所有的数据
交互由终端按照协议定义格式的命令发起.
卡片在接收到命令后做相应地响应.
5.应用协议数据单元( APDU)结构
• 命令-响应对,由终端发起的命令和卡片响
应构成。
• APDU-C:
命令头(CLA+INS+P1+P2)
命令体(Lc + 数据域+Le)
• APDU-R:
响应体(数据单元)
响应尾域(状态字节SWA+SWB)
6.终端命令数据结构
终端命令数据结构
struct APDU_REQ{
uchar cmd[4];/*命令头*/
ushort le; /*期望接收字节数*/
ushort lc /*待发送数据单元长度*/
uchar datas[ 256 ];/*待发送数据单元*/
};
7.卡片响应数据结构
• 卡片响应数据结构:
Struct APDU_RSP{
uchar length;/*响应数据单元长度*/
uchar swa;/*第一个状态字节*/
uchar swb;/*第二个状态字节*/
uchar datas[ 256 ];/*响应数据单元*/
};
8.命令类型
• 根据结构APDU_REQ中Le,Lc两个参数可以把命令
分为四种类型:
if Lc > 0 then
if Le > 0 then case4
else case3
endif;
else
if Le > 0 then case2
else case1
endif;
endif;
9.T=0协议下的命令处理过程
• 在此协议下,任何数据交互命令均由终端发送一个
5字节的命令头启动.
命令头封装:指令类别CLS,命令码INS, 命令参数
P1,P2,P3。
其中P3根据命令类型不同有不同的映射方式。
卡片在接收到命令头后,根据实际情况返回
1.过程字节,指示终端下一步动作
2.状态字节,指示终端本次通信完成
SWA=’90’ SWB=’00’表示命令执行成功.
|