安装后将 Javacard 小程序标记为隐式可选(默认小程序)
Posted
技术标签:
【中文标题】安装后将 Javacard 小程序标记为隐式可选(默认小程序)【英文标题】:Mark Javacard applet as implicit selectable (default applet) after install 【发布时间】:2014-04-08 10:44:14 【问题描述】:我正在寻找一种方法来将一个小程序标记为隐式可选/“默认选择”小程序,因为它已经上传并安装在 Global Platform/JCOP 2.4.2 R1 系统上(适用于 NXP JCOP 中的初学者工具 Java 卡模拟)。
已在 JCOP shell 中安装了没有 -d
参数的小程序:
cm> install -i a000100201100001 -q C9#() a000100201100000 a000100201100001
=> 80 E6 [...]
90 00
之后状态是
Card Manager AID : A000000003000000
Card Manager state : OP_READY
Application: SELECTABLE (--------) A000100201100001
Load File : LOADED (--------) A0000000035350 (Security Domain)
Module : A000000003535041
Load File : LOADED (--------) A000100201100000
Module : A000100201100001
想要的结果是
Card Manager AID : A000000003000000
Card Manager state : OP_READY
Application: SELECTABLE (-----D--) A000100201100001
Load File : LOADED (--------) A0000000035350
[...]
这是使用-d|--default
参数安装小程序时的输出。
我怀疑更改此属性是通过卡管理器小程序中的 STORE-DATA 命令以某种方式完成的,但无法找到准确、详细的命令(结构)——甚至找不到需要修改的标签。
【问题讨论】:
我已经解决了一个临时的解决方法,它拦截 jcop shell 输出,查找安装命令并将它们保存在单独的列表中,以便在按钮被点击。 Patchy,Buggy&Ugly 可以,但目前就足够了.... 我不明白我猜的问题。您可以简单地指示 JCOP 发出 -d。转到运行配置,然后包上传,双击小程序并更改权限。哈,拼写为“特权,-d 也是如此:P. 【参考方案1】:这取决于卡 - 并非所有卡似乎都支持在安装后将小程序设为默认值。但是您可以使用具有--make-default <AID>
选项的Java 开源GlobalPlatform 工具:
java -jar gp.jar --make-default A000100201100001
IIRC JCOP 是实际支持它的卡之一。
【讨论】:
嗯?哇。我站得更正了。请注意,Applet 的编程方式应使文件系统(如果有)在设置为默认值(之后)时处于正确状态。以上是关于安装后将 Javacard 小程序标记为隐式可选(默认小程序)的主要内容,如果未能解决你的问题,请参考以下文章
当用户从另一个应用程序(如文件管理器应用程序)单击 pdf 文件时,如何将我的 pdf 阅读器应用程序添加为隐式意图?
Visual Studio 2012 JavaScript Intellisense 参考组恢复为隐式 (Windows)