T = 1智能卡协议

时间:2017-09-28 10:56:27

标签: smartcard

我有关于T = 1智能卡通信协议的问题。假设终端发送I-block,其中预期的Ne数据将从卡返回(所谓的情况2S),并且卡发送的数据较少。这是否意味着终端应该等到超时,然后检查收到的最后两个字节(应该是SW1和SW2状态)?或者是否存在与该问题相关的其他方案? 对于T = 0协议,该问题由过程字节解决,但是在T = 1中我只看到上述方式。

由于

1 个答案:

答案 0 :(得分:0)

guidot可能声称他不是专家,但我不相信他。

Ne值(使用Le编码)实际上仅表示要返回的最大字节数。您可能只是具有特定最大值的缓冲区大小,或者具有禁止使用更高值的开销(安全消息传递)。但是,您可以使用APDU命令,其中Ne用于指示可用时应发送的字节数,例如READ BINARY。

(响应)APDU的大小由底层数据链路层(帧内的块中使用的链接位和LEN字节)确定。 T = 1不是面向字节的协议,例如T = 0。对于T = 1且实际上T = CL,数据链路层确定命令和响应APDU的大小,而不是具有Nc和Ne字节的应用层。