DESFire Command Set
MIFARE DESFire command names, command codes, and which generation supports each — EV1, EV2, and EV3. Search by command or code, or filter by class. Native application-layer commands and their ISO 7816-4 wrapped equivalents are both listed.
How to read this
DESFire exposes a native application-layer command set on top of ISO/IEC 14443-4. Each command has a one-byte code. The EV1 / EV2 / EV3 columns show whether a command exists on that generation — Yes, No, or Yes with a noted behavioural difference. A handful of commands gained their first support in EV2 (delegated applications, multiple key sets, Transaction MAC, Proximity Check), and EV3 mostly refines existing commands rather than adding many new ones.
Where two codes are shown (for example 0xBD / 0xAD), the command has more than one documented opcode form. The ISO 7816-4 class lists the standards-wrapped equivalents (SELECT, READ BINARY, READ RECORD, INTERNAL / EXTERNAL AUTHENTICATE) that let a DESFire card be driven by a generic ISO 7816-4 stack. This is an architecture-level interface reference: byte-level framing, secure-messaging payloads, and exploit-relevant detail are intentionally out of scope.
About this reference
Source
Summarised from public NXP MIFARE DESFire EV1 / EV2 / EV3 datasheets. Command names and codes are factual interface data; difference notes are our own wording.
Companion tools
DESFire status decoder · File settings parser · Access-rights decoder