我有一个关于T= 1智能卡通信协议的问题。假设终端发送具有期望从卡返回的Ne数据的I-block (所谓的情况2S),并且卡有更少的数据要发送。这是否意味着终端应该等到超时,然后检查最后两个字节(应该是SW1和SW2状态)接收到的内容?或者,是否存在与该问题相关的其他场景?对于T= 0协议,这个问题是通过过程字节来解决的,但是在T= 1中,我只看到了上面的方式。
谢谢
发布于 2017-10-06 06:56:52
guidot可能声称他不是专家,但我不会相信他。
Ne值(使用Le编码)实际上只指示要返回的最大字节数。您可能只有一个特定最大值的缓冲区大小,或者具有禁止使用更高值的开销(安全消息传递)。但是,您可以使用APDU命令,其中Ne用于指示应发送的字节数(如果可用),例如READ BINARY。
(响应) APDU的大小由底层数据链路层(在帧内的块中使用的链接位和LEN字节)确定。T=1不是像T=0那样的面向字节的协议。对于T=1和实际上的T=CL,数据链路层确定命令和响应APDU的大小,而不是具有Nc和Ne字节的应用层。
https://stackoverflow.com/questions/46467445
复制相似问题