Link to this headingISO 14443 Protocol

  • Opperates at 13.56 MHz ± 7 kHz
  • Data Rate: 106, 212, 424, 848 kbit/s
  • Modulation: ASK (Amplitude Shift Keying) by modulating the impedance
  • Readers have timeouts in between commands

Link to this headingCommands

Common Commands:

REQA: 26h // WUPA: 52h // SELECT: 93h 20h // HLTA: 50h 00h //

Mifare Classic Commands:

AUTH_A: 60h [block] AUTH_B: 61h [block] READ: 30h [block] WRITE: A0h [block] [16 bytes]

ISO 14443-4 Commands:

RATS: E0h [FSDI:CID] APDU: [CLA INS P1 P2 Lc Data Le]

Link to this headingISO 14443-A

Frame:

packet +1: "Start" +64: "Data Bits (8n)" +8: "Parity (n)" +1: "End"

Link to this headingUnique Commands

REQA
WUPA
SELECT
ANTICOLLISION

Link to this headingReading the UID

sequenceDiagram Reader->>Card: REQA (26h) Card->>Reader: ATQA (2 bytes) Reader->>Card: SEL (93h 20h) Card->>Reader: UID + BCC (5 bytes) Reader->>Card: SEL + UID + BCC (93h 70h) Card->>Reader: SAK (1 byte)

Link to this headingType B (ISO 14443-3B)

  • Uses ASK with NRZ coding
    • CRC-16 for frame integrity
    • Instead of reducing the signal to zero it just reduces it slightly
  • Message Contains a [Start + data + CRC + end]
  • Used with Calypso, some government IDs

Frame:

packet +1: "Start" +64: "Data Bytes (n)" +16: "CRC-16" +1: "End"

Link to this headingReading the UID

sequenceDiagram Reader->>Card: REQB (05h 00h 08h 39h 73h) Note right of Card: ATQB (12 bytes)<br/>PUPI: 4 bytes<br/>App Data: 4 bytes<br/>Protocol: 3 bytes<br/>CRC: 2 bytes Card->>Reader: ATQB (12 bytes) Reader->>Card: ATTRIB Card->>Reader: Confirmation

Link to this headingOther Commands