NFC Flipper File Formats
NFC-A (UID) + Header
Example
Filetype: Flipper NFC device
Version: 3
# Nfc device type can be UID, Mifare Ultralight, Mifare Classic, Bank card
Device type: UID
# UID, ATQA and SAK are common for all formats
UID: 04 85 92 8A A0 61 81
ATQA: 00 44
SAK: 00Description
This file format is used to store the UID, SAK and ATQA of a NFC-A device. It does not store any internal data, so it can be used for multiple different card types. Also used as a header for other formats.
Version differences:
Initial version, deprecated
LSB ATQA (e.g. 4400 instead of 0044)
MSB ATQA (current version)
UID can be either 4 or 7 bytes long. ATQA is 2 bytes long. SAK is 1 byte long.
Mifare Ultralight/NTAG
Example
Description
This file format is used to store the UID, SAK and ATQA of a Mifare Ultralight/NTAG device. It also stores the internal data of the card, the signature, the version, and the counters. The data is stored in pages, just like on the card itself.
The "Signature" field contains the reply of the tag to the READ_SIG command. More on that can be found here: https://www.nxp.com/docs/en/data-sheet/MF0ULX1.pdf (page 31)
The "Mifare version" field is not related to the file format version but to the Mifare Ultralight version. It contains the response of the tag to the GET_VERSION command. More on that can be found here: https://www.nxp.com/docs/en/data-sheet/MF0ULX1.pdf (page 21)
Other fields are the direct representation of the card's internal state. Learn more about them in the same datasheet.
Version differences:
Current version
Mifare Classic
Example
Description
This file format is used to store the NFC-A and Mifare Classic specific data of a Mifare Classic card. Aside from the NFC-A data, it stores the card type (1K/4K) and the internal data of the card. The data is stored in blocks, there is no sector grouping. If the block's data is unknown, it is represented by '??'. Otherwise, the data is represented as a hex string.
Version differences:
Initial version, has Key A and Key B masks instead of marking unknown data with '??'.
Example:
2. Current version
Mifare DESFire
Example
Description
This file format is used to store the NFC-A and Mifare DESFire specific data of a Mifare DESFire card. Aside from the NFC-A data, it stores the card type (DESFire) and the internal data of the card. The data is stored per-application, and per-file. Here, the card was written using those pm3 commands:
Version differences: None, there are no versions yet.
Mifare Classic Dictionary
Example
Description
This file contains a list of Mifare Classic keys. Each key is represented as a hex string. Lines starting with '#' are ignored as comments. Blank lines are ignored as well.
EMV resources
Example
Description
This file stores a list of EMV currency codes, country codes, or AIDs and their names. Each line contains a hex value and a name separated by a colon and a space.
Version differences:
Initial version
Last updated
Was this helpful?