Mif.VirtualCardSelect

Command is only supported by MIFARE Plus EV1 cards. Selected in ISO14443-3 mode the VCSupportLastISOL3 command is executed. Selected in ISO14443-4 mode the IsoSelect command is executed If the card answers in the latter case with a Payload (UID does not match or authentication with VCSelection is mandatory) the reader executes an additional ISOExternalAuthentication command

Properties

Parameters (request frame)

Name Type/Size Description
- Bit mask (8 bits) -
RFU Integer (bit mask area 0xC0) Zero padding
ForceVcsAuthentication Boolean (bit 0x20) Forces authentication to a virtual card. A card without encryption returns Mif.VcsAndProxCheckError
UseExtVcSelectKeys Boolean (bit 0x10) Authenticates to a virtual card. A MAC and an encryption key have to be specified. Use (external) Virtual Card keys given as command parameter.
DiversifyMacKey Integer (bit mask area 0x0C) Diversifies VC Mac key.

Remarks for use of divinput:

VC-UID is obtained by decryption of the card response. If VC-UID is concatenated with divinput the input wil be limited to 31 bytes.
DiversifyEncKey Boolean (bit 0x02) Diversifies VC Encryption key
UseVcSelectKeys Boolean (bit 0x01) Authenticates to a virtual card. A MAC and a encryption key has to be specified. Use keys stored in CryptoMemory or SAM.
Length of IID Integer (8 bits) Length of IID in byte
IID Raw data Virtual Card Identifier.
Optional field, condition: UseVcSelectKeys
EncKeyIdx Integer (16 bits)

Crypto Memory Index (SAM or CryptoMemory) of virtual card select key

  • SAM: MSByte: Key version / LSByte: KeyIdx
  • Crypto Memory: MSByte: Page (0..15) / LSByte: KeyIdx (0x80-0xBF)
MacKeyIdx Integer (16 bits)

Crypto Memory Index (SAM or CryptoMemory) of MAC key

  • SAM: MSByte: Key version / LSByte: KeyIdx
  • Crypto Memory: MSByte: Page (0..15) / LSByte: KeyIdx (0x80-0xBF)
Optional field, condition: (DiversifyMacKey == 1) or (DiversifyMacKey == 2) or (DiversifyMacKey == 3) or DiversifyEncKey
Length of DivData Integer (8 bits) Length of DivData in byte
DivData Raw data Key diversification according to NXP AN10922.
Optional field, condition: UseExtVcSelectKeys
Length of EncKey Integer (8 bits) Length of EncKey in byte
EncKey Raw data VC encryption key
Length of MacKey Integer (8 bits) Length of MacKey in byte
MacKey Raw data VC MAC key

Returned values (response frame)

Name Type/Size Description
FciType Integer (8 bits) 0: raw data 1: uid_len(1) and card type(1) 2: uid_len(1), card type(1) and memory size(1)
Length of Fci Integer (8 bits) Length of Fci in byte
Fci Raw data File control information