[英]JCRE Behavior after receiving an SELECT APDU command
据我所知,当JCRE接收SELECT APDU命令时,首先,它在其注册表中搜索命令指示的AID 。 如果未在其注册表中找到AID,则返回6A82
。 但是如果JCRE找到它,它将调用所选applet的deselect()
方法,并且在收到True
,它将调用所请求的applet的select()
方法。 如果从该方法接收到True
,则将该applet标记为已选中。
我的问题:
1-当JCRE调用deselect()
方法时,如果第一个小程序(当前选定的小程序)返回False
会发生什么? applet是否仍然是Selected
?
2-如果第二个applet(请求的Applet)在JCRE调用其select()
方法时返回False
会发生什么?在这种情况下将选择哪个applet? 安全域默认为?
如果第一个小程序(当前选定的小程序)在JCRE调用其deselect()
方法时返回false
,会发生什么? 小程序是否仍处于选中状态?
不,一旦调用并返回Applet.deselect()
方法,将取消选择applet。 applet无法阻止这种情况发生。 Applet.deselect()
没有返回值。 即使在此方法中抛出异常仍然不会阻止取消选择applet。
如果第二个applet(请求的Applet)在JCRE调用其select()
方法时返回false
,会发生什么? 在这种情况下,将选择哪个小程序?
由于之前的applet已被取消选择且新的applet被拒绝被选中,因此不会选择任何 applet。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.