我应该使用哪个APDU命令取消当前正在执行的读取记录?

时间:2016-01-13 03:31:49

标签: smartcard javacard apdu

当主机向卡发送APDU命令(如读取命令)时,是否有另一个命令,主机可以在执行第一个命令时发送该命令以取消先前(正在进行的)命令执行?

例如,此处Command_2被Command_3中断:

     Host        <--->        Card     
----------------------------------------------------------
 Command_1        --->             \
                                   | Processing Command_1
                 <---   Response_1 /

 Command_2        --->             \
                                   | Processing Command_2
                                   |
 Command_3        --->             x Processing interrupted
                 <---   Response_3 /

1 个答案:

答案 0 :(得分:5)

根据ISO / IEC 7816-4:2013第5.2章:

  

两个命令APDU - 响应APDU对之间必须没有重叠   相同的接口,这意味着必须接收响应APDU   在发送下一个命令APDU之前。

(不是官方版本,上面的文字是我的英语翻译。)

简而言之,除了热重置之外,没有办法停止处理应用层上的当前APDU,这可能不是您想要的,因为它会重置整个卡(您的applet不再被选中,RAM是清除和持久的记忆保持不变)。