Номер карты MIFARE — это её UID (уникальный идентификатор), который записан производителем в нулевом блоке чипа и не может быть изменён на обычных картах. Считать его можно за секунды: достаточно NFC-смартфона, USB-ридера или недорогого модуля PN532 для Arduino.

Важно различать UID чипа и данные, записанные в секторах карты (номер пропуска, баланс, имя владельца). UID доступен без ключей, а содержимое защищённых секторов — только после аутентификации ключами доступа. В этой статье разберём оба случая, начиная с самого простого.

Что такое UID и чем он отличается от данных на карте

UID — это серийный номер чипа, длиной 4, 7 или 10 байт в зависимости от типа карты. У карт MIFARE Classic 1K чаще встречается 4-байтовый UID, у MIFARE Ultralight и DESFire — 7-байтовый. Именно этот номер обычно имеют в виду, когда говорят «узнать номер карты» для привязки к СКУД, домофону или системе парковки.

Данные в секторах — отдельная история. Они защищены ключами A и B, и без них чтение невозможно. Заводские ключи по умолчанию — FF FF FF FF FF FF, но в реальных системах их почти всегда меняют.

  • 🪪 UID — читается любым ридером без ключей, менять нельзя (кроме карт с перезаписываемым нулевым блоком).
  • 🔑 Сектора данных — требуют аутентификации ключом.
  • 🏷️ Номер, напечатанный на корпусе карты — может совпадать с UID (в десятичном виде), а может быть внутренней нумерацией организации.
💡

UID карты MIFARE считывается без ключей и паролей — достаточно поднести карту к любому NFC-ридеру.