【发布时间】:2017-05-06 16:49:45
【问题描述】:
在 T=0 协议的情况下,case 1 & case 2 APDU 的 TPDU 案例 3 和案例 4 APDU 是相同的, 因此,在来自智能卡的 T=0 协议的情况下 侧面无法区分情况1和2和 案例 3&4 APDU。 事实上,甚至无法区分 case 2 & 3 APDU,除非智能卡尝试读取数据字节,如果终端实际发送的 APDU 是 case 2 APDU,则会导致失败。
但是,由于在 T=1 协议中,TPDU 对应于 APDU 卡知道收到的 APDU 属于哪种情况。
问题是在 T=1 协议的情况下,Java Card API 是否提供任何方法来:
- 知道接收到的 APDU 是否是数据 APDU,因此可以安全地调用 setIncomingAndReceive();
- 从案例 4 APDU 中读取 Le 字节;
- 知道是否真的从终端接收到 Le 字节(在 APDU 缓冲区中的 P3 为 0x00 的模棱两可的情况下)。
【问题讨论】:
标签: javacard