Forum › MIFARE and NFC Reader IC`s › Mifare Plus X switch from SL1 to SL3 › Reply To: Mifare Plus X switch from SL1 to SL3
@Kevin and @Christian
Hi,
About the ACS ACR readers;
I do not know if you solve your problems, but following information may be useful for everyone who use ACS readers.
I also got the same problem with the ACS reader ACR 1252U. Lots of solutions could be there. But it works for me.
In SL1 I got errors on two different processes;
1. AES authentication for SL0/SL1
2. Switch to SL1 to SL3.
The reason of errors is failure to activate correct protocol 14443-3 or 14443-4.
Due to the datasheet of ACR 1252U reader (90% same as ACR122U) there two type of process.
1. APDU Flow. => The reader understand your command then acts as it have to do. We use generally this flow for communicating with the cards.
2. Escape Command Flow. => The reader can not identify some APDU commands or sometimes you need to communicate with the reader. In these cases we use that.
APDU flow is;
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardTransmit
5. SCardDisconnect
Escape Command Flow is:
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardControl
5. SCardDisconnect.
For first authentication of Mifare SL1 or switching from SL1 to SL3, you have to choose 14443-3 or 14443-4 protocols.
If you need to communicate due to 14443-3; activate it using escape commands as follow;
1. Start a transparent session between reader and your controller (not the reader may be a PC)
2. Activate 14443-3 protocol.
3. End transparent session.
Full command list for activating 14443-3;
COMMAND_START_TRANSPARENT_SESSION = FF C2 00 00 02 81 00
COMMAND_END_TRANSPARENT_SESSION = FF C2 00 00 02 82 00
ACTIVATE_14443_3_COMMAND = FF C2 00 02 04 8F 02 00 03
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardControl(COMMAND_START_TRANSPARENT_SESSION)
5. SCardControl(ACTIVATE_14443_3_COMMAND)
6. SCardControl(COMMAND_END_TRANSPARENT_SESSION )
...
x. SCardDisconnect
Full command list for activating 14443-4;
COMMAND_START_TRANSPARENT_SESSION = FF C2 00 00 02 81 00
COMMAND_END_TRANSPARENT_SESSION = FF C2 00 00 02 82 00
ACTIVATE_14443_4_COMMAND = FF C2 00 02 04 8F 02 00 04
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardControl(COMMAND_START_TRANSPARENT_SESSION)
5. SCardControl(ACTIVATE_14443_4_COMMAND)
6. SCardControl(COMMAND_END_TRANSPARENT_SESSION )
...
x. SCardDisconnect
For Kevin's "However, I am unable to begin authentication with Level 3 Switch Key and so am unable to switch the card to SL3."
and Christian's problem "We are using the ACR1222L from ACS. Can anyone give a hint on how to active Layer 4?"
Use Escape command flow and activate 14443-4 first. It could solve the problem.
Hi,
About the ACS ACR readers;
I do not know if you solve your problems, but following information may be useful for everyone who use ACS readers.
I also got the same problem with the ACS reader ACR 1252U. Lots of solutions could be there. But it works for me.
In SL1 I got errors on two different processes;
1. AES authentication for SL0/SL1
2. Switch to SL1 to SL3.
The reason of errors is failure to activate correct protocol 14443-3 or 14443-4.
Due to the datasheet of ACR 1252U reader (90% same as ACR122U) there two type of process.
1. APDU Flow. => The reader understand your command then acts as it have to do. We use generally this flow for communicating with the cards.
2. Escape Command Flow. => The reader can not identify some APDU commands or sometimes you need to communicate with the reader. In these cases we use that.
APDU flow is;
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardTransmit
5. SCardDisconnect
Escape Command Flow is:
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardControl
5. SCardDisconnect.
For first authentication of Mifare SL1 or switching from SL1 to SL3, you have to choose 14443-3 or 14443-4 protocols.
If you need to communicate due to 14443-3; activate it using escape commands as follow;
1. Start a transparent session between reader and your controller (not the reader may be a PC)
2. Activate 14443-3 protocol.
3. End transparent session.
Full command list for activating 14443-3;
COMMAND_START_TRANSPARENT_SESSION = FF C2 00 00 02 81 00
COMMAND_END_TRANSPARENT_SESSION = FF C2 00 00 02 82 00
ACTIVATE_14443_3_COMMAND = FF C2 00 02 04 8F 02 00 03
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardControl(COMMAND_START_TRANSPARENT_SESSION)
5. SCardControl(ACTIVATE_14443_3_COMMAND)
6. SCardControl(COMMAND_END_TRANSPARENT_SESSION )
...
x. SCardDisconnect
Full command list for activating 14443-4;
COMMAND_START_TRANSPARENT_SESSION = FF C2 00 00 02 81 00
COMMAND_END_TRANSPARENT_SESSION = FF C2 00 00 02 82 00
ACTIVATE_14443_4_COMMAND = FF C2 00 02 04 8F 02 00 04
1. SCardEstablishContext
2. SCardListReaders
3. SCardConnect
4. SCardControl(COMMAND_START_TRANSPARENT_SESSION)
5. SCardControl(ACTIVATE_14443_4_COMMAND)
6. SCardControl(COMMAND_END_TRANSPARENT_SESSION )
...
x. SCardDisconnect
For Kevin's "However, I am unable to begin authentication with Level 3 Switch Key and so am unable to switch the card to SL3."
and Christian's problem "We are using the ACR1222L from ACS. Can anyone give a hint on how to active Layer 4?"
Use Escape command flow and activate 14443-4 first. It could solve the problem.
+ 0
|
- 0