无论我使用什么命令(APDU)(甚至是VERIFY),我都得到SW1 = 69 SW2 = 99响应! 我特意抄袭所有内容(更改默认PIN,使用Gemalto MiniDriver Manager添加证书)
有谁知道该怎么办? 到目前为止,我只需要简单的事情 - 在卡片上的某处写入2个字节的数据,然后再读取它们。我无法相信它是如此复杂!
Info:
Reader Name: Gemplus USB Smart Card Reader 0
Card Name: Axalto Cryptoflex .NET
Card ATR: 3B1696417374726964
答案 0 :(得分:1)
6999错误有几种可能的原因。以下是我能想到的两个原因: 1. CLA字节错误(特别是逻辑通道) 2.尚未选择应用程序(尚未执行选择命令)
当然也可能有其他原因。发布您的日志真的很有帮助。
答案 1 :(得分:0)
在我看来,您最好使用简单的存储卡或至少使用ISO 7816-4文件系统的卡。使用像你一样的java卡,你需要编写一个了解你的读写命令的applet,将它下载到卡中,最后发送实现的命令。
具有文件系统的卡可以理解一组命令,如创建文件,更新二进制文件,从头开始读取二进制文件,从而降低复杂性。
更新:状态69 99不在标准中,因为SW2的值都标记为保留供将来使用必须被视为不符合它。