接触式读卡器ISO7816协议T=1执行APDU指令

2018-11-29 17:07:04 诺塔斯智能科技 942

   前段时间有客户购买了我们L2-U双界面智能卡读写器,它是集ISO7816接触式和ISO14443非接触式于一体的多功能智能卡读写器。既可以读写非接触式智能卡也可以读写接触式智能卡,满足客户对不同智能卡的读写操作。由于之前我们没有处理T=1这种智能卡的读写APDU指令,客户的卡恰恰就是T=1的。还好,我们读写器具有在线升级固件的功能,我们这边技术及时响应了客户的需求,完善了ISO7816接触式读卡器T=1的APDU指令封装,让客户自己对读写器进行了升级就扩展了这一项功能。

字符协议(T=0)和字组协议(T=1)。IC卡必须支持T=0协议或T=1协议中的一种,但不是同时支持这两种协议。终端则必须同时支持T=0T=1的两种协议。在IC卡和终端间后续的通讯所用的协议在TD1中指明,必须是T=0T=1,如果在ATR(复位应答)中无TD1,则设定为T=0。在复位应答后立即使用IC卡使用的协议,因为这里没有协议类型选择(PTS)过程。

B.1  情况1

命令APDU被映射到Ⅰ块的信息字段,而没有任何变化。

命令APDU

CLA  INS   P1  P2

 

信息字段

CLA  INS   P1  P2

 

在响应中收到的Ⅰ块的信息字段被映射到响应APDU,而没有任何变化。

信息字段

SW1    SW2

 

命令APDU

SW1    SW2

 

 B.2  情况2(短的和扩充的)

命令APDU被映射到Ⅰ块的信息字段,而没有任何变化。

C-APDU

CLA  INS   P1  P2

Le字段

 

信息字段

CLA  INS   P1  P2

Le字段

 

响应APDU由:

——在响应中收到的Ⅰ块的信息字段组成,

——或者在响应中收到的连续Ⅰ块的顺序连接的信息字段组成。这些块应予以链接。

 

信息字段

数据字段

SW1-SW2

 

或者顺序连接的信息字段

字段数据  ……    ……

 

 ……     ……    ……

 

   ……     字段

 SW1-SW2

 

R-APDU

数据字段

SW1-SW2

 

B3  情况3(短的和扩充的)

命令APDU没有任何变化地被映射到:

——某一Ⅰ块的信息字段,

——或应链接的连续Ⅰ块的顺序连接的信息字段。

C-APDU

CLA  INS   P1  P2

Lc字段

数据字段

 

信息字段

CLA  INS   P1  P2

Lc字段

数据字段

 

或者顺序连接的信息字段

CLA  INS  P1 P2

Lc字段

数据…

 

……    ……    ……

 

……    ……    字段

 

在响应中收到的Ⅰ块的信息字段被映射到响应APDU,而没有任何变化。

信息字段

SW1     SW2

 

R-APDU

SW1     SW2

 

B.4  情况4(短的和扩充的)

命令APDU没有任何变化地被映射到:

——某一Ⅰ块的信息字段,

——或者应链接的连续Ⅰ块的顺序连接的信息字段。

 

C-APDU

CLA  INS  P1 P2

Lc字段

数据字段

Le字段

 

信息字段

CLA  INS  P1 P2

Lc字段

数据字段

Le字段

 

或者顺序连接的并置的信息字段

CLA  INS  P1 P2

Lc字段

数据

 

  ……           ……         ……

 

    ……           字段        Le字段

 

响应APDU由

——在响应中收到的Ⅰ块的信息字段组成,

——或者在响应中收到的连续Ⅰ块的顺序连接的信息字段组成。这些块应予以链接。

信息字段

数据字段

SW1-SW2

 

或者并置的信息字段

数据       ……        ……

 

……       ……        ……

 

 ……       字段  

SW1-SW2

 

R-APDU

数据字段

SW1-SW2


   

T=1字组协议
        协议包含IC卡和TTL间的字组传送,以传达命令和R-APDU及控制信息(例如,确认)。数据链路层的字组帧结构,协议的时序和INF,以及协议的运用规定如下。
        1)字组帧结构
        前面所规定的字符帧仍是适用的,字组的结构如下表所示:       

 强制性的组头字段       

 可选性的信息字段

 强制性的组尾字段
 
                                             字组的结构

                            组头字段

信息字段

组尾字段

结点地址

NAD

协议控制字节

PCB

     

LEN

APDU或控制信息(INF

错误检测

EDC

1字节

1字节

1字节

0—254字节

1字节