CCID RDR_to_PC_DataBlock错误问题0xFE ICC_MUTE-Java智能卡读取

时间:2018-11-29 11:41:17

标签: java android smartcard apdu smartcard-reader

我是一名初学者,遇到关于通过Android移动设备上的USB主机将CCID命令发送到智能卡的问题。这次我发送了PC_to_RDR_IccPowerOn CCID命令PC_to_RDR_IccPowerOn来激活卡并收到了ATR响应。

下一步,我将PC_to_RDR_XfrBlock CCID命令发送到用于选择Applet的卡,但是却收到错误响应。

CCID响应:80 00 00 00 00 00 00 40 FE 00-0xFE含义与ICC对话时的CCID超时有关错误代码的信息,请参见文档DWG设备“智能卡集成电路设备”部分6.2.6。

我找到解决此问题的信息,但未找到解决方法。如何解决此问题并使APDU响应返回到90 00?

更多信息
#1 This Byte array is the ATR value (answer to reset) that I get from RDR_to_PC_DataBlock answer is
ATR response: 3B 68 00 00 54 48 20 4E 49 44 20 36
Reference ATR value at https://smartcard-atr.appspot.com/
#2 This Byte array is APDU command that I combine with PC_to_RDR_XfrBlock CCID command to select Applet.
6F 0D000000 00 01 00 0000 00A4040008A000000054480001

Applet used to select Thailand Personal DF name of the APDU command line from this link.
https://github.com/chakphanu/ThaiNationalIDCard/blob/master/APDU.md

为得到答复,我英语不好,但如果您愿意,我会尽量发送信息,谢谢您的帮助。


通常我使用2条这些命令

1个PC_to_RDR_IccPowerOn

Command (byte) 0x62, (byte) 0x00000000, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x0000

1个RDR​​_to_PC_DataBlock

Response 80  0C  00  00  00  00  00  00  00  00  3B  68  00  00  54  48  20  4E  49  44  20  36

2个PC_to_RDR_XfrBlock(带有APDU插入小程序)

Command (byte) 0x6f, (byte) 0x0000000c, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x0000, (byte) 0x00, (byte) 0xa4, (byte) 0x04, (byte) 0x00, (byte) 0x08, (byte) 0xa0, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x54, (byte) 0x48, (byte) 0x00, (byte) 0x01

2个RDR_to_PC_DataBlock

Response 80  00  00  00  00  00  00  40  FE  00  

此链接的参考 Communicate with smartcard reader through Android USB host

0 个答案:

没有答案