Desfire.Authenticate
This command authenticates a card with the reader. All authentication modes of DESFire cards are supported. Subsequent commands, such as Desfire.ExecCommand, take the authentication mode into account when communicating with a card.
The key used for authentication is specified in the Device / CryptoKey key of the reader's configuration.
Properties
- Command code: 0x1B01
- Command timeout: 2000 ms
- Possible status codes: General status codes, Desfire.ErrIso14NoTag, Desfire.ErrBreak, Desfire.ErrIso14Hf, Desfire.ErrIso14CardInvalid, Desfire.ErrReaderChipCommunication, Desfire.ErrIso14ApduCmd, Desfire.ErrIso14InvalidResponse, Desfire.ErrPcdAuthentication, Desfire.ErrPcdKey, Desfire.ErrPcdParam, Desfire.ErrFirmwareNotSupported, Desfire.ErrSamCommunication, Desfire.ErrSamUnlock, Desfire.ErrHardwareNotSupported, Desfire.ErrLength, Desfire.ErrPermissionDenied, Desfire.ErrParameter, Desfire.ErrAuthentication, Desfire.ErrPiccIntegrity, Desfire.ErrCommandAborted, Desfire.ErrPiccDisabled, Desfire.ErrNoSuchKey, Desfire.ErrIllegalCmd, Desfire.ErrIllegalCmdLegacy
Parameters (request frame)
| Name | Type/Size | Description | ||
|---|---|---|---|---|
| SecureMessaging | Enumeration (8 bits) |
Sets the secure messaging mode. Values:
|
||
| DesKeynr | Integer (8 bits) | DESFire key number. | ||
| KeyId | Integer (8 bits) | ID of authentication key in the reader's configuration (0x00-0xBF). | ||
| - | Bit mask (8 bits) | - | ||
| RFU | Integer (bit mask area 0xE0) |
Zero padding |
||
| KeyHasDivData | Boolean (bit 0x10) | Specifies external diversification data ( KeyDivData parameter) if set. | ||
| KeyDivMode | Enumeration (bit mask area 0x0E) |
Specifies diversification algorithm. Values:
|
||
| KeyHasExtIdx | Boolean (bit 0x01) | Set this flag if extended crypto memory is used (using KeyExtIdx parameter). | ||
| Optional field, condition: KeyHasDivData | ||||
| Length of KeyDivData | Integer (8 bits) |
Length of KeyDivData in bytes |
||
| KeyDivData | Raw data | Diversification data (8 byte for DES / 16 for AES key). | ||
| Optional field, condition: KeyHasExtIdx | ||||
| KeyExtIdx | Integer (8 bits) |
Crypto Memory Index (SAM or CryptoMemory) of authentication key
|
||
Returned values (response frame)
None