NXP Reader Library  v17.1.0.2535
Commands_SecureMessaging

Describes about the MIFARE DUOX Secure Messaging related commands. More...

Collaboration diagram for Commands_SecureMessaging:

Modules

 Defines
 Macro Definitions for Secure Messaging commands.
 

Functions

phStatus_t phalMfDuoX_ISOInternalAuthenticate (void *pDataParams, uint8_t bPrivKeyNo, uint8_t bCurveID, uint8_t *pPubBKey, uint16_t wPubBKeyLen, uint8_t *pOptsA, uint8_t bOptsALen, uint8_t *pExpRspLen, uint8_t bExpRspLen)
 Performs Asymmetric Card-Unilateral Authentication. More...
 

Detailed Description

Describes about the MIFARE DUOX Secure Messaging related commands.

Function Documentation

◆ phalMfDuoX_ISOInternalAuthenticate()

phStatus_t phalMfDuoX_ISOInternalAuthenticate ( void *  pDataParams,
uint8_t  bPrivKeyNo,
uint8_t  bCurveID,
uint8_t pPubBKey,
uint16_t  wPubBKeyLen,
uint8_t pOptsA,
uint8_t  bOptsALen,
uint8_t pExpRspLen,
uint8_t  bExpRspLen 
)

Performs Asymmetric Card-Unilateral Authentication.

The following operations are performed using this interface.

  • Ephemeral Key Pair (E.Pub.A) is generated by the Library.
  • The Signature (Sig.B) received as part of response is verified using the Key Number provided in wKeyNo_PubKeyB parameter.
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORIf Tag information is not proper for AuthDOHdr, RndB and Signature.
PH_ERR_VERIFICATION_FAILEDVerification of Message / Signature combination failed.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.
[in]bPrivKeyNo[In] Private Key number for signing the response.
  • At PICC level, two keys are supported.
  • At Application level, up to five keys are supported.
[in]bCurveID[In] The targeted curve for the public key provided in pPubBKey parameter. Should be one of the below values.
[in]pPubBKey[In] Public Key (Pub.B) to be used for verification.
[in]wPubBKeyLen[In] Length of bytes available in pPubBKey buffer.
[in]pOptsA[In] Complete PCD Options in TLV format. NULL in case of Optional scenario
[in]bOptsALen[In] Length of bytes available in pOptsA buffer. Zero in case of Optional scenario.
[in]pExpRspLen[In] Length of expected response from Device.
  • This parameter is for exchanging the LE information.
  • If NULL is provided, then the expected Response length will be taken as 0x00 (1 byte) by default or 2 bytes based on LC.
  • Possible values are NULL, Array consisting of 1 byte or 2 bytes.
[in]bExpRspLen[In] Length of bytes available in pExpRspLen buffer.