Search code examples
androidrfidapdumifareacr1252

ACR1252 Load Authentication FF 82 fails with 63 00


I want to Load Authentication Key into my ACR1252 reader (probably similar to ACR122 reader), but it fails with response code 63 00.

I'm trying to do this for ISO/IEC 14443 cards (specifically Dutch ePassports). First I send the commands:

  1. Select Application: 00 04 04 0C 07 A0 00 00 02 47 10 01 with response 90 00
  2. Get Challenge: 00 84 00 00 08 with response [ramdom 8 bytes] 90 00
  3. Load Key: FF 82 00 00 06 FF FF FF FF FF FF with response 63 00 (Operation Failed)

Eventually the length of the key will be 40 bytes in stead of 6, but this is just for testing purposes (the 40 byte key also gives 63 00).

I also tried:

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

No success, does anyone has any idea? I also stumbled upon this Stackoverflow thread: ACR1222L FF 82 Load Authentication Keys fails with 63 00 Operation Failed which could be similar to my case. Anyone has any experience/success with changing the Security Level?

If there are other ideas on how to fix this, maybe I'm missing some crucial steps or something, please let me know! Thanks!


Solution

  • I think in this post there is a mix of multiple topics; I do not know if I'll be able to give you the right solution, but at least I'll give you some clues.

    • Security Level: This topic concerns only MIFARE Plus Cards which is a NXP propietary card technology (based on ISO14443 protocol) and is not related with your problem.

    • Regarding the commands you send:

      1. "Select Application": you are selecting the application with AID: A0 00 00 02 47 10 01 and you get OK "90 00". After this command all the commands you send will be sent to the targeted application. (Read File, Write File... ) Depending on the application file rights you'll be able to write/read them or you'll need a previous authentication to do so.

      2. "Get Challenge": This command is sent when you start the authentication with the targeted application using the 3-Pass muthual Authentication, after this command you should continue with the authentication as described in ISO7816 protocol (if you know the application keys), but instead of continue with the authentication you send a "Load Key" which seems to be the command to store MIFARE keys on the reader.

      3. "Load Key" This command format seems to be a command which is normally sent to the ISO14443 readers (normally PC/SC readers) in order to store Mifare Classic keys in the reader memory. I do not think this command has nothing to do with your expectations. You'll only need it if there is a MIFARE Card in "Dutch ePassports" and you need to read it.

    I hope it helps.