Changes between 0.3.1 and 0.3.2 [XX xxx XXXX] *) New API functions mifare_desfire_create_application_3k3des() and mifare_desfire_create_application_aes(). Changes between 0.3.0 and 0.3.1 [23 feb 2011] *) Fix mifare_classic_transfer() for devices returning a 1 byte response on success. *) New API function mifare_desfire_last_pcd_error(). Changes between 0.2.3 and 0.3.0 [23 dec 2010] *) Add support for ISO and AES authentication through mifare_desfire_authenticate_iso() and mifare_desfire_authenticate_aes(). *) Add support for 3K3DES and AES cryptographic operations and add new functions mifare_desfire_3k3des_key_new(), mifare_desfire_3k3des_key_new_with_version(), mifare_desfire_aes_key_new() and mifare_desfire_aes_key_new_with_version() for generating keys. *) New functions mifare_desfire_free_mem(), mifare_desfire_set_configuration(), mifare_desfire_set_default_key(), mifare_desfire_set_ats(), mifare_desfire_get_card_uid(), for Mifare DESFire EV1 targets manipulation. *) Deprecate authentication information when deleting the currently selected application Changes between 0.2.2 and 0.2.3 [23 dec 2010] *) Fix a buffer overflow in mifare_desfire_get_file_settings(). Changes between 0.2.1 and 0.2.2 [23 nov 2010] *) Fix build when cutter is not available or is disabled. Changes between 0.2.0 and 0.2.1 [23 nov 2010] *) The mifare_desfire_error_lookup() and mifare_desfire_get_last_error() functions were removed and replaced by the freefare_strerror(), freefare_strerror_r() and freefare_perror() functions. *) The library reports errors other that the ones returned by the PICC. *) The MDAD_KEYx macro where renamed MDAR_KEYx for consistency. *) The MDCM_MACING macro was renamed MDCM_MACED. *) The MDCM_FULLDES macro was renamed MDCM_ENCIPHERED. *) New function mifare_desfire_last_picc_error(). *) New function mifare_desfire_aid_get_aid(). Changes between 0.1.0 and 0.2.0 [07 sep 2010] *) New function freefare_free_tag() to free individual tags from a MifareTag list. *) The mifare_application_alloc() size parameter is now expressed in bytes and not in sectors. *) New API function mad_sector_reserved(). *) The mifare_classic_format_sector() functions now require a sector number instead of a block number. *) New API functions mifare_classic_block_sector(), mifare_classic_sector_first_block(), mifare_classic_sector_block_count() and mifare_classic_sector_last_block(). *) New API functions mifare_application_read(), mifare_application_write().