我想将验证密钥加载到我的ACR1252阅读器中(可能类似于ACR122阅读器),但它失败了,响应代码为63 00
。
我试图为ISO / IEC 14443卡(特别是荷兰语电子护照)执行此操作。首先我发送命令:
00 04 04 0C 07 A0 00 00 02 47 10 01
,回复90 00
00 84 00 00 08
,回复[ramdom 8 bytes] 90 00
FF 82 00 00 06 FF FF FF FF FF FF
,回复63 00 (Operation Failed)
最后密钥的长度将是40个字节而不是6个,但这仅用于测试目的(40字节密钥也给出了63 00
)。
我也尝试过:
FF 82 00 00 06 A0 A1 A2 A3 A4 A5
FF 82 20 00 06 FF FF FF FF FF FF
FF 82 20 01 06 FF FF FF FF FF FF
没有成功,有没有人有任何想法? 我也偶然发现了这个Stackoverflow线程:ACR1222L FF 82 Load Authentication Keys fails with 63 00 Operation Failed这可能与我的情况类似。任何人都有改变安全级别的经验/成功吗?
如果还有其他想法如何解决这个问题,也许我错过了一些重要的步骤或事情,请告诉我!谢谢!
答案 0 :(得分:1)
我认为在这篇文章中有多个主题的混合;我不知道我是否能够给你正确的解决方案,但至少我会给你一些线索。
安全级别:本主题仅涉及MIFARE Plus卡,这是一种恩智浦专有卡技术(基于ISO14443协议),与您的问题无关。
关于您发送的命令:
“选择应用程序”:您正在选择带有AID的应用程序:A0 00 00 02 47 10 01,然后您就可以“90 00”了。在此命令之后,您发送的所有命令都将发送到目标应用程序。 (读取文件,写入文件...)根据应用程序文件权限,您可以编写/读取它们,或者您需要先进行身份验证才能执行此操作。
“获取挑战”:当您使用3-Pass muthual Authentication开始使用目标应用程序进行身份验证时,将发送此命令,在此命令之后,您应继续执行ISO7816协议中所述的身份验证(如果您知道的话)应用程序密钥),但不是继续进行身份验证,而是发送“加载密钥”,这似乎是在阅读器上存储MIFARE密钥的命令。
“加载密钥”此命令格式似乎是一个命令,通常发送到ISO14443读卡器(通常是PC / SC读卡器),以便将Mifare Classic密钥存储在读卡器内存中。我不认为这个命令与你的期望无关。如果“荷兰电子护照”中有MIFARE卡,您只需要阅读它。
我希望它有所帮助。