Describes about the MIFARE DUOX Application Management commands. More...

Modules | |
| Defines | |
| Macro Definitions for Application Management commands. | |
Functions | |
| phStatus_t | phalMfDuoX_CreateApplication (void *pDataParams, uint8_t bOption, uint8_t *pAid, uint8_t bKeySettings1, uint8_t bKeySettings2, uint8_t bKeySettings3, uint8_t *pKeySetValues, uint8_t bKeySetValuesLen, uint8_t *pISOFileId, uint8_t *pISODFName, uint8_t bISODFNameLen) |
| Creates a New Application on the PICC. More... | |
| phStatus_t | phalMfDuoX_DeleteApplication (void *pDataParams, uint8_t *pAid, uint8_t *pDAMMAC, uint8_t bDAMMAC_Len) |
| Permanently deletes the applications on the PICC. More... | |
| phStatus_t | phalMfDuoX_CreateDelegatedApplication (void *pDataParams, uint8_t bOption, uint8_t *pAid, uint8_t *pDamParams, uint8_t bDamParamsLen, uint8_t bKeySettings1, uint8_t bKeySettings2, uint8_t bKeySettings3, uint8_t *pKeySetValues, uint8_t bKeySetValuesLen, uint8_t *pISOFileId, uint8_t *pISODFName, uint8_t bISODFNameLen, uint8_t *pEncK, uint8_t bEncKLen, uint8_t *pDAMMAC, uint8_t bDAMMACLen, uint8_t *pInitK, uint8_t bInitKLen) |
| Creates delegated applications on the PICC with limited memory consumption. More... | |
| phStatus_t | phalMfDuoX_SelectApplication (void *pDataParams, uint8_t bOption, uint8_t *pAid1, uint8_t *pAid2) |
| Selects one particular application on the PICC for further access. More... | |
| phStatus_t | phalMfDuoX_GetApplicationIDs (void *pDataParams, uint8_t bOption, uint8_t **ppAidBuff, uint16_t *pAidLen) |
| Returns application identifiers of all applications on the PICC. More... | |
| phStatus_t | phalMfDuoX_GetDFNames (void *pDataParams, uint8_t bOption, uint8_t **ppDFBuffer, uint16_t *pDFBufLen) |
| Returns the Application IDentifiers together with a File ID and (optionally) a DF Name of all active applications with ISO/IEC 7816-4 support. More... | |
| phStatus_t | phalMfDuoX_GetDelegatedInfo (void *pDataParams, uint8_t *pDAMSlot, uint8_t *pDamSlotVer, uint8_t *pQuotaLimit, uint8_t *pFreeBlocks, uint8_t *pAid) |
| Returns the DAMSlotVersion and QuotaLimit of a target DAM slot on the card. More... | |
Describes about the MIFARE DUOX Application Management commands.
| phStatus_t phalMfDuoX_CreateApplication | ( | void * | pDataParams, |
| uint8_t | bOption, | ||
| uint8_t * | pAid, | ||
| uint8_t | bKeySettings1, | ||
| uint8_t | bKeySettings2, | ||
| uint8_t | bKeySettings3, | ||
| uint8_t * | pKeySetValues, | ||
| uint8_t | bKeySetValuesLen, | ||
| uint8_t * | pISOFileId, | ||
| uint8_t * | pISODFName, | ||
| uint8_t | bISODFNameLen | ||
| ) |
Creates a New Application on the PICC.
The application is initialized according to the given settings. The application key of the active key set are initialized with the Default Application Key.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER | If the buffers are null. |
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bOption | [In] Option to represent the present of ISO information. |
| [in] | pAid | [In] The application identifier to be used. Will be of 3 bytes with LSB first. If application 01 need to be created, then the Aid will be 01 00 00. |
| [in] | bKeySettings1 | [In] Application Key settings. Refer Application Key Settings from DataSheet. |
| [in] | bKeySettings2 | [In] Several other key settings.
|
| [in] | bKeySettings3 | [In] Additional optional key settings.
|
| [in] | pKeySetValues | [In] The Key set values for the application. Should as mentioned below.
|
| [in] | bKeySetValuesLen | [In] Length of bytes available in pKeySetValues buffer. |
| [in] | pISOFileId | [In] ISO File ID to be used. Will be two bytes. |
| [in] | pISODFName | [In] ISO DF Name to be used. Should one of the following
|
| [in] | bISODFNameLen | [In] Length of bytes available in pISODFName buffer. |
| phStatus_t phalMfDuoX_DeleteApplication | ( | void * | pDataParams, |
| uint8_t * | pAid, | ||
| uint8_t * | pDAMMAC, | ||
| uint8_t | bDAMMAC_Len | ||
| ) |
Permanently deletes the applications on the PICC.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER | If the buffers are null. |
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | pAid | [In] The application identifier to be used. Will be of 3 bytes with LSB first. If application 01 need to be deleted, then the Aid will be 01 00 00. |
| [in] | pDAMMAC | [In] [Optional, present if PICCDAMAuthKey or NXPDAMAuthKey is used for authentication]
|
| [in] | bDAMMAC_Len | [In] Length of bytes available in pDAMMAC buffer. |
| phStatus_t phalMfDuoX_CreateDelegatedApplication | ( | void * | pDataParams, |
| uint8_t | bOption, | ||
| uint8_t * | pAid, | ||
| uint8_t * | pDamParams, | ||
| uint8_t | bDamParamsLen, | ||
| uint8_t | bKeySettings1, | ||
| uint8_t | bKeySettings2, | ||
| uint8_t | bKeySettings3, | ||
| uint8_t * | pKeySetValues, | ||
| uint8_t | bKeySetValuesLen, | ||
| uint8_t * | pISOFileId, | ||
| uint8_t * | pISODFName, | ||
| uint8_t | bISODFNameLen, | ||
| uint8_t * | pEncK, | ||
| uint8_t | bEncKLen, | ||
| uint8_t * | pDAMMAC, | ||
| uint8_t | bDAMMACLen, | ||
| uint8_t * | pInitK, | ||
| uint8_t | bInitKLen | ||
| ) |
Creates delegated applications on the PICC with limited memory consumption.
The application is initialized according to the given settings. The application keys of the active key set are initialized with the provided Application DAM Default Key.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER | If the buffers are null. |
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bOption | [In] Option to represent the present of ISO information. |
| [in] | pAid | [In] The application identifier to be used. Will be of 3 bytes with LSB first. If application 01 need to be created, then the Aid will be 01 00 00. |
| [in] | pDamParams | [In] The DAM information. Should as mentioned below.
|
| [in] | bDamParamsLen | [In] Length of bytes available in pDamParams buffer. |
| [in] | bKeySettings1 | [In] Application Key settings. Refer Application Key Settings from DataSheet. |
| [in] | bKeySettings2 | [In] Several other key settings.
|
| [in] | bKeySettings3 | [In] Additional optional key settings.
|
| [in] | pKeySetValues | [In] The Key set values for the application. Should as mentioned below.
|
| [in] | bKeySetValuesLen | [In] Length of bytes available in pKeySetValues buffer. |
| [in] | pISOFileId | [In] ISO File ID to be used. Will be two bytes. |
| [in] | pISODFName | [In] ISO DF Name to be used. Should one of the following
|
| [in] | bISODFNameLen | [In] Length of bytes available in pISODFName buffer. |
| [in] | pEncK | [In] Encrypted initial application key for the DAM application. Should be 32 bytes long.
|
| [in] | bEncKLen | [In] Length of bytes available in pEncK buffer. |
| [in] | pDAMMAC | [In] The MAC calculated by the card issuer to allow delegated application creation. Should be 8 bytes long.
|
| [in] | bDAMMACLen | [In] Length of bytes available in pDAMMAC buffer. |
| [in] | pInitK | [In] The initial application key for the DAM application. Should be 25 bytes long.
|
| [in] | bInitKLen | [In] Length of bytes available in pInitK buffer. |
| phStatus_t phalMfDuoX_SelectApplication | ( | void * | pDataParams, |
| uint8_t | bOption, | ||
| uint8_t * | pAid1, | ||
| uint8_t * | pAid2 | ||
| ) |
Selects one particular application on the PICC for further access.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER | If the buffers are null. |
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bOption | [In] One of the below options. |
| [in] | pAid1 | [In] The primary application identifier to be used. Will be of 3 bytes with LSB first. If application 01 need to be selected, then the Aid will be 01 00 00. |
| [in] | pAid2 | [In] The secondary application identifier to be used. Will be of 3 bytes with LSB first. If application 01 need to be selected, then the Aid will be 01 00 00. |
| phStatus_t phalMfDuoX_GetApplicationIDs | ( | void * | pDataParams, |
| uint8_t | bOption, | ||
| uint8_t ** | ppAidBuff, | ||
| uint16_t * | pAidLen | ||
| ) |
Returns application identifiers of all applications on the PICC.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_SUCCESS_CHAINING | Operation successful with chaining response. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER |
|
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bOption | [In] One of the below options.
|
| [out] | ppAidBuff | [Out] The available identifiers of the application(s). |
| [out] | pAidLen | [Out] Length of bytes available in ppAidBuff buffer. |
| phStatus_t phalMfDuoX_GetDFNames | ( | void * | pDataParams, |
| uint8_t | bOption, | ||
| uint8_t ** | ppDFBuffer, | ||
| uint16_t * | pDFBufLen | ||
| ) |
Returns the Application IDentifiers together with a File ID and (optionally) a DF Name of all active applications with ISO/IEC 7816-4 support.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_SUCCESS_CHAINING | Operation successful with chaining response. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER |
|
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bOption | [In] One of the below options.
|
| [out] | ppDFBuffer | [Out] The ISO information about the application. |
| [out] | pDFBufLen | [Out] Length of bytes available in pDFBuffer buffer. |
| phStatus_t phalMfDuoX_GetDelegatedInfo | ( | void * | pDataParams, |
| uint8_t * | pDAMSlot, | ||
| uint8_t * | pDamSlotVer, | ||
| uint8_t * | pQuotaLimit, | ||
| uint8_t * | pFreeBlocks, | ||
| uint8_t * | pAid | ||
| ) |
Returns the DAMSlotVersion and QuotaLimit of a target DAM slot on the card.
| PH_ERR_SUCCESS | Operation successful. |
| PH_ERR_INVALID_DATA_PARAMS | If DataParams is null. |
| PH_ERR_INVALID_PARAMETER | If the buffers are null. |
| XXXX |
|
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | pDAMSlot | [In] Slot number associated with the memory space of the targeted delegated application. LSB first. |
| [out] | pDamSlotVer | [Out] Slot version associated with the memory space of the targeted delegated application. |
| [out] | pQuotaLimit | [Out] Maximal memory consumption of the targeted delegated application (in 32-byte blocks). |
| [out] | pFreeBlocks | [Out] Amount of unallocated memory of the targeted delegated application (in 32-byte blocks). |
| [out] | pAid | [Out] Application Identifier of the targeted DAM slot. This parameter is set to 0x000000 if the DAM slot targeted by DAMSlotNo exists on the card, but is currently not occupied with an application, i.e. the latest application has been deleted. |