SDK Readers 1.0.1
SDK для связи со считывателями Iron logic
Mifare Plus

Смарт-карты Mifare Plus - улучшенная версия Mifare Classic, призваны повысить существующий уровень безопасности при использовании бесконтактных смарт-карт карт в различных прикладных системах (оплата на транспорте, системы доступа, электронный сбор платы, парковки, интернет-кафе, программы лояльности и т.п.).

Карты Mifare Plus могут легко интегрироваться в существующие системы, где уже используются карты Mifare Classic. Уровень защищенности карт Mifare Plus может быть повышен в любой момент по мере развития системы путем активизации алгоритма AES-128 (Advanced Encryption Standard), обеспечивающего высокий уровень безопасности, целостности данных, аутентификации и шифрования.

Mifare Plus основана на глобальных открытых стандартах как по интерфейсу, так и по криптографии. Mifare Plus имеет две версии:

  • Mifare Plus S – это "Slim" версия, для быстрого перехода от Mifare Classis (может переключаться в режим SL1, SL3);
  • Mifare Plus X – это "eXpert" версия, обеспечивающая большую гибкость, защищенность и функциональность (может переключаться в режим SL1, SL2, SL3).

Основные возможности

  • 2 или 4 килобайта памяти (EEPROM);
  • Простая структура фиксированной памяти, совместимая с Mifare Classic 1K и Mifare Classic 4K;
  • Структура памяти идентична Mifare Classic 4K (сектора, блоки);
  • Условия доступа свободно конфигурируемые;
  • Поддержка ISO/IEC 14443-31 UID (4-байтовый UID, 4-байтовый NUID, 7-байтовый UID), опциональная поддержка случайных идентификаторов;
  • Многосекторная аутентификация, многоблочное чтение и запись;
  • AES-128 используется для обеспечения аутентификации и целостности;
  • Анти-разрушающий механизм для записи ключей AES;
  • Ключи могут храниться как ключи MIFARE CRYPTO1 (2 x 48 бит на сектор), так и как AES ключи (2 x 128 бит на сектор);
  • Полная поддержка концепции виртуальной карты;
  • Проверка близости (Proximity check);
  • Скорость связи до 848 кбит/с;
  • Количество операций одиночной записи: 200000 циклов (типичный);
  • Сертификация по общим критериям: EAL4+ (Common Criteria Certification: EAL4+).

Уровни безопасности (Security level)

Карты, работающие на одном уровне безопасности, могут быть в любой момент переведены на более высокий уровень безопасности.

В прикладной системе карты Mifare Plus могут находиться только на одном конкретном уровне безопасности: SL1, SL2 или SL3. С завода-изготовителя чипы Mifare Plus (в картах, метках, браслетах и т.п.) поступают на уровне безопасности SL0.

Использовать в прикладной системе карты на уровне SL0 нельзя, чип Mifare Plus должен быть проинициализирован, т.е. переведен на уровень SL1, SL2 или SL3.

В прикладной системе можно последовательно повышать уровень безопасности, т.е. из SL1 переводить в SL2, а из SL2 переводит в SL3. Обратный перевод, с более высокого на более низкий уровень защиты, невозможен.

Уровень безопасности SL0

Начальный уровень. В этом состоянии чип Mifare Plus не хранит в себе никаких ключей. Из состояния SL-0 чип MIFARE Plus должен быть переведен на любой из трех более высоких уровней SL-1, SL-2 млм SL-3. На уровне SL-0 чипы предварительно персонализируются по ключам, соответствующим Mifare Classic с использованием крипто-алгоритма CRYPTO1, и по ключам AES для работы с памятью.

Уровень безопасности SL1

На этом уровне карты Mifare Plus имеют полную совместимость с Mifare Classic.

Уровень безопасности SL2

Аутентификация по AES является обязательной. Для защиты данных используется CRYPTO1.

Уровень безопасности SL3

Для аутентификации, обмена и щифрования данных, для работы с памятью, а также для выявления удаленных атак по радиоканалу используется крипто-алгоритм AES.

Работа с памятью

В основном структура памяти Mifare Plus SL3 идентична Mifare Classic (сектора, блоки), отличается структура прицепов (trailer), способ установки ключа авторизации и других ключей.

Распределение памяти

Trailer Mifare Classic 1(4)K, Mifare Plus SL1(SL2):

Байт 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Key A 69 Key B

Trailer Mifare Plus SL3:

Байт 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
En

где En - биты доступа (по умолчанию = 0x0F всё открыто):

Биты En Блоки младших секторов Блоки старших секторов Описание
7 Invert (block 3) Invert (block 15) Если 0: Открытая передача данных.
6 Invert (block 2) Invert (block 10–14)
5 Invert (block 1) Invert (block 5-9)
4 Invert (block 0) Invert (block 0-4)
3 Block 3 Block 15 Если 1: Открытая передача данных.
2 Block 2 Block 10–14
1 Block 1 Block 5-9
0 Block 0 Block 0-4

En =0x0F всё открыто.

En = 0xF0 все закрыто.

Режиме SL3 ключ A,B в трейлер секторе не используется, а 6-ой(байт 5) байт ключа A(который не используется) является флагом(4 флага) так же как и биты доступа нужно шифровать данные при записи и дешифровать при чтении.

При переходе в режим SL3 байт из configuration block копируется во все трейлер блоки(байт 5 от нуля) всех секторов. Уже в режиме SL3 их можно менять отдельно.

Вся память Mifare Plus

Название Адрес Описание
1 Данные 0000 – 007F Секторы 0 - 31
2 Данные 0080 – 00FF Секторы 32 - 39
3 MP Configuration block B000
4 Installation identifier B001
5 ATS information B002 Заполнен правильно. Не менять.
6 Field Configuration block B003
7 AES Sector Keys 4000 – 404F Ключи авторизации секторов:
В четном адресе ключ A(4000, 4002,.,.).
В нечетном адресе ключ B(4001, 4003,.,.)
8 Originality Key 8000
9 Card Master Key 9000
10 Card Configuration Key 9001
11 Level 2 Switch Key 9002 Ключ для перевода карты на уровень SL2. Для S карт нет. Для L3 нет
12 Level 3 Switch Key 9003 Ключ для перевода карты на уровень SL3. Для L3 нет
13 Sl1 Card Authentication Key 9004 Для L3 нет
14 Select VC Key A000
15 Proximity Check Key A001
16 VC Polling ENC Key A080 Фиксированный – записывается но без разнообразия(diversification)
17 VC Polling MAC Key A081 Фиксированный

Подробности выдаются NXP Semiconductors под NDA.