ACR1252负载认证FF 82失败,63 00

时间:2017-05-03 11:02:58

标签: android rfid mifare apdu acr122

我想将验证密钥加载到我的ACR1252阅读器中(可能类似于ACR122阅读器),但它失败了,响应代码为63 00

我试图为ISO / IEC 14443卡(特别是荷兰语电子护照)执行此操作。首先我发送命令:

  1. 选择应用:00 04 04 0C 07 A0 00 00 02 47 10 01,回复90 00
  2. 获得挑战:00 84 00 00 08,回复[ramdom 8 bytes] 90 00
  3. 加载密钥:FF 82 00 00 06 FF FF FF FF FF FF,回复63 00 (Operation Failed)
  4. 最后密钥的长度将是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这可能与我的情况类似。任何人都有改变安全级别的经验/成功吗?

    如果还有其他想法如何解决这个问题,也许我错过了一些重要的步骤或事情,请告诉我!谢谢!

1 个答案:

答案 0 :(得分:1)

我认为在这篇文章中有多个主题的混合;我不知道我是否能够给你正确的解决方案,但至少我会给你一些线索。

  • 安全级别:本主题仅涉及MIFARE Plus卡,这是一种恩智浦专有卡技术(基于ISO14443协议),与您的问题无关。

  • 关于您发送的命令:

    1. “选择应用程序”:您正在选择带有AID的应用程序:A0 00 00 02 47 10 01,然后您就可以“90 00”了。在此命令之后,您发送的所有命令都将发送到目标应用程序。 (读取文件,写入文件...)根据应用程序文件权限,您可以编写/读取它们,或者您需要先进行身份验证才能执行此操作。

    2. “获取挑战”:当您使用3-Pass muthual Authentication开始使用目标应用程序进行身份验证时,将发送此命令,在此命令之后,您应继续执行ISO7816协议中所述的身份验证(如果您知道的话)应用程序密钥),但不是继续进行身份验证,而是发送“加载密钥”,这似乎是在阅读器上存储MIFARE密钥的命令。

    3. “加载密钥”此命令格式似乎是一个命令,通常发送到ISO14443读卡器(通常是PC / SC读卡器),以便将Mifare Classic密钥存储在读卡器内存中。我不认为这个命令与你的期望无关。如果“荷兰电子护照”中有MIFARE卡,您只需要阅读它。

我希望它有所帮助。