2017-06-20 101 views
4

通常,當您啓動JavaCard智能卡並希望與applet通信時,必須先使用其AID選擇applet。直接訪問applet不需要AID選擇

有什麼辦法可以讓卡片上電時選擇「默認小程序」?

我真正想要做的是能夠在選擇卡片後立即發送我的應用程序級別的APDU,而不需要通過應用程序選擇過程。

這可能嗎?如果是這樣,怎麼樣?

+0

呵呵,這就是所謂的「默認選擇」,所以你已經指定了文字:) –

回答

6

如果您的Java Card智能卡實現了全球平臺卡規範,它通常將允許您定義在重置時在基本邏輯通道上隱式選擇的小應用程序。因此,在上電(重置)卡時,該applet將被默認選中,並立即接收所有命令(運行時環境處理的命令除外,例如選擇其他applet,邏輯通道管理等)。

您可以通過爲其指定「默認選定」(GP 2.1.1術語)或「卡重置」(GP 2.2術語)特權,將小程序設置爲默認選定小程序。這由(第一)特權字節中的位3設置。只有一個應用程序可以擁有此特權。

如果您使用(例如)GlobalPlatformPro,則可以使用選項--default(在安裝期間)或--make-default <AID>(對於現有小程序)來設置此特權。


請注意,您可以通過Applet#process method內捕獲SELECT APDU選擇和AID選擇默認存在區別。最好的方法是致電Applet.selectingApplet檢查是否發生了AID的明確選擇。

+2

男人,我很高興我問甲骨文使Java卡文檔可用:) –

+0

@MaartenBodewes感謝您的編輯:-) –