Android M4M-Mifare-DESFire EV1:需要将哪些Mifare-AID添加到NFC路由表中,以便将非主机路由到UICC上的Mifare-DESFire虚拟卡?
在一些Android设备上,Mifare DESFire通信路由到HCE,而不是脱离主机(UICC) 从基于OMAPI与非主机安全元素的通信中,我已经学会了如何向Android非主机路由表中添加辅助工具,以便我可以在UICC上选择它们。(感谢@MichaelRoland) 我目前的问题是:我的UICC上确实有一个虚拟Mifare DESfire卡。现在,有些设备没有将本机包装的Mifare命令路由到UICC,而且我仍然没有更改默认路由的交换机。因此,我想在我的脱离主机路由表中有另一个条目,但我不知道该使用哪个辅助工具 我们的MIFARE DESFire测试应用程序Android M4M-Mifare-DESFire EV1:需要将哪些Mifare-AID添加到NFC路由表中,以便将非主机路由到UICC上的Mifare-DESFire虚拟卡?,android,nfc,mifare,contactless-smartcard,secure-element,Android,Nfc,Mifare,Contactless Smartcard,Secure Element,在一些Android设备上,Mifare DESFire通信路由到HCE,而不是脱离主机(UICC) 从基于OMAPI与非主机安全元素的通信中,我已经学会了如何向Android非主机路由表中添加辅助工具,以便我可以在UICC上选择它们。(感谢@MichaelRoland) 我目前的问题是:我的UICC上确实有一个虚拟Mifare DESfire卡。现在,有些设备没有将本机包装的Mifare命令路由到UICC,而且我仍然没有更改默认路由的交换机。因此,我想在我的脱离主机路由表中有另一个条目,但我不
F01010
有一个PICC应用程序帮助。这是用于在CLT界面上选择应用程序的辅助工具,但无法输入到Android脱离主机路由表中。此外,我们还有两个与MIFARE DESFire应用程序相关的辅助工具。这是虚拟卡管理器辅助工具(A000003964D344D14000000000000000
)和服务管理器辅助工具(A000003964D344D2400000000000
)
但是,我必须在路由表中插入哪些辅助工具?如果您想以广泛的方式部署应用程序,以避免使用相同辅助工具的应用程序之间发生冲突,则必须遵循ISO7816-5。第二种方法是使用一个始终以0x0F开头的专有非注册辅助 示例:0x0F、0x11、0x22、0x33、0x44Android(可能还有NFC控制器本身)目前仅支持基于ISO/IEC 7816-4 AIDs/DF名称的路由配置。您不能为本机DESFire辅助(即3字节辅助)或所有本机包装的通信添加路由 您可以做什么:
- 在应用程序创建期间,为您的DESFire应用程序指定ISO/IEC 716-4 DF名称。此DF名称是可以在Android脱离主机路由配置中指定的辅助工具。但是,您需要使用DESFire ISO命令集(特别是发出SELECT FILE(by DF name)命令来选择您的DESFire应用程序)来触发基于AID的路由
- DESFire EV1本身具有AID/DF名称
。如果您的读卡器选择此辅助(使用选择文件(按DF名称)命令),则DESFire卡将切换到ISO框架(允许使用ISO命令和包装的本机命令)并选择其主文件。您可以向Android注册此帮助,将所有DESFire通信路由到UICC。但是,每个读卡器都需要通过发送SELECT FILE命令来启动DESFire通信D2 76 00 00 85 01 00