ACR1281U-C1 – Application Programming Interface
Version 1.08
www.acs.com.hk
Page 59 of 96
Example1
:
Load a key {
FF FF FF FF FF FFh
} into the non-volatile memory location 05h.
APDU = {FF 82 20 05 06
FF FF FF FF FF FFh
}
Load a key {
FF FF FF FF FF FFh
} into the volatile memory location 20h.
APDU = {FF 82 00 20 06
FF FF FF FF FF FFh
}
Notes:
1. The application should know all the keys being used. It is recommended to store all the
required keys to the non-volatile memory for security reasons. The contents of both volatile
and non-volatile memories are not readable by any application.
2. The content of the volatile memory “Session Key 20h” will remain valid until the reader is
reset or powered-off. The session key is useful for storing any key value that is changing from
time to time. The session key is stored in the “Internal RAM”, while the non-volatile keys are
stored in “EEPROM” that is relatively slower than the “Internal RAM”.
3. It is not recommended to use the “non-volatile key locations 00-1Fh” to store any “temporary
key” that will be changed frequently. The “non-volatile keys” are supposed to be used for
storing any “key value” that will not change frequently. If the ”key value” is supposed to be
changed from time to time, store the “key value” to the “volatile key location 20h” instead.
5.2.4.3.1. Authentication for MIFARE 1K/4K
This command is used to authenticate the MIFARE 1K/4K card (PICC) using the keys stored in the
reader. Two types of authentication keys are used: Type_A and Type_B.
Command
Command
Class INS
P1
P2
P3
Data In
Authentication
6 bytes (Obsolete)
FFh
88h 00h
Block Number
Key Type
Key Number
Command
Class INS
P1
P2
Lc
Data In
Authentication
10 bytes
FFh
86h 00h
00h
05h
Authenticate Data Bytes
Where:
Authenticate Data Bytes
(5 bytes)
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Version
01h
00h
Block Number
Key Type
Key Number
Where:
Block Number
(1 byte)
The memory block to be authenticated.