Ambimat GroupAmbimatAmbiSecureSIMAuthAmbiAutomationEngineering BlogAhmedabad · India · Est. 1982
NXP DESFire

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.