当我向SmartCard发送命令时,6E 00的含义是什么?

时间:2011-07-07 10:48:50

标签: c++ smartcard error-code smartcard-reader apdu

我尝试通过C ++访问SmartCard。 我已经获得了Connection和CardHandle。

但是当我通过SCardTransmit发送APDU命令时,我将从卡中获得6E 00作为答案。 无论我发送哪个APDU命令。 每次6E 00。

例如:

  • FF CA FA 00 00(卡的ATR - 应答重置)或
  • FF CA FF 82 00(ASCII格式的产品名称)

当我发送带有PC / SC Testtootl的命令时,就像“PC / SC Diag”一样。

有没有人知道这个错误代码的含义以及如何解决问题?

请帮帮我!!!! ; - )

3 个答案:

答案 0 :(得分:6)

根据ISO 7816-4 0x6E00表示“不支持类”。

您是否在APDU中使用了正确的CLA值?

类(CLA)字节通常为0x00,0xA0,0xC0或0xF0,有时用0x0C屏蔽,表示某些卡上的安全消息。 AFAIK,唯一无效的CLA值是0xFF。

但是这种卡从一张卡到另一张卡各不相同,您是否有供应商提供的卡规格?

答案 1 :(得分:1)

这意味着“错误的指令类”。也许这只是错误的卡片类型?

http://tools.ietf.org/html/draft-urien-eap-smartcard-05

答案 2 :(得分:0)

BasicCard PDF手册有一个错误代码列表,第152-153页。

你得到的那个被描述为“无法识别命令的CLA字节”。

“6A 86”可能是对卡片特定命令的响应,我在BasicCard列表中看不到它。