首页 文章

直接访问applet而无需选择AID

提问于
浏览
4

通常,当您启动JavaCard智能卡并希望与applet通信时,必须首先使用其AID选择applet .

卡上电时是否有任何方法可以选择“默认小程序”?

我真正想做的是能够在选择卡后立即发送我的应用程序级APDU,而不需要完成应用程序选择过程 .

这可能吗?如果是这样,怎么样?

1 回答

  • 6

    如果您的Java Card智能卡实现了Global Platform Card规范,它通常允许您定义在重置时在基本逻辑通道上隐式选择的applet . 因此,在加电(重置)卡时,默认情况下将选择小程序并立即接收所有命令(运行时环境处理的那些命令除外,例如选择其他小程序,逻辑信道管理等) .

    您可以通过为小程序提供“默认选定”(GP 2.1.1术语)或“卡重置”(GP 2.2术语)权限,将小程序设置为默认选定小程序 . 这由(第一个)特权字节中的第3位设置 . 只有一个应用程序可以拥有此权限 .

    例如,如果使用GlobalPlatformPro,则可以使用选项 --default (在安装期间)或 --make-default <AID> (对于现有小程序)来设置此权限 .


    请注意,您可以通过捕获Applet#process method中的SELECT APDU来区分AID的默认选择和选择 . 最好的方法是调用Applet.selectingApplet来检查AID是否进行了显式选择 .

相关问题