我有一个包含我的applet的双接口Java卡。对于来自不同接口的单个命令,我希望有两个不同的APDU响应。
例如,当从contact接口接收到命令时,我希望用"Contact“响应00 10 00 00 APDU命令,当从非接触式接口接收到该命令时,响应" contactless”。
那么,Java或中是否有任何方法来检测传入命令的接口?
发布于 2016-01-06 07:07:12
在getProtocol()类中有一个名为javacard.framework.APDU的方法:
public static byte getProtocol()返回ISO 7816传输协议类型,在低咬口处返回T=1或T=0,在使用中的上层返回传输介质。
接口是在返回字节的上一小段编码的:
final byte transportMedia = (byte) (APDU.getProtocol() & APDU.PROTOCOL_MEDIA_MASK);
final boolean isContactless = (transportMedia == APDU.PROTOCOL_MEDIA_CONTACTLESS_TYPE_A) ||
(transportMedia == APDU.PROTOCOL_MEDIA_CONTACTLESS_TYPE_B);https://stackoverflow.com/questions/34618848
复制相似问题