[英]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.