Online Store

Программное обеспечение консоли MIFARE DESFire ® C

Исходный код SDK для программирования карт DESFire ® на устройствах серии μFR

Docs & Software Download

Пошаговый обзор примера консольного программного обеспечения MIFARE DESFire ® C.

1. Обзор программного обеспечения

Ссылка: /code/nfc-rfid-reader-sdk/ufr-ds-examples-c.git

При запуске программного обеспечения оно выглядит следующим образом:

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 1

Ключ для аутентификации, AID, номер ключа AID для аутентификации, идентификатор файла и индекс внутреннего ключа извлекаются из файла конфигурации.txt.

 

1.1. Объяснение конфигурационного файла (config.txt)

Конфигурационный файл config.txt загружается при запуске программного обеспечения. Он включает в себя ключ аутентификации, порядковый номер ключей в AID для аутентификации, идентификатор файла и индекс внутреннего ключа (когда ключ хранится в считывателе).

Структура файла:
Ключ DES: 0000000000000000000000000000000000000000000000000000000000
AID 3 байта шестнадцатеричный: 000000
Номер ключа AID для проверки подлинности: 0
Идентификатор файла: 1
Номер внутреннего ключа: 0

В первой строке указывается тип ключа и его шестнадцатеричное значение.

Если тип ключа DES (8 байт), то необходимо ввести 16 символов (ключ DES: 0102030405060708)
Если тип ключа 2K3DES (16 байт), то необходимо ввести 32 символа (ключ 2K3DES: 01020304050607080910111213141516)
Если тип ключа 3K3DES (24 байта), то необходимо ввести 48 символов (ключ 3K3DES: 010203040506070809101112131415161718192021222324)
Если тип ключа AES (16 байт), то необходимо ввести 32 символа (ключ AES: 01020304050607080910111213141516)

Вторая строка содержит AID, необходимо ввести 6 символов (AID 3 байта hex: 010203)

Третья строка содержит порядковый номер в приложении для аутентификации (0 к максимальному количеству ключей приложения — 1)

Четвертая строка содержит индекс идентификатора файла в приложении. Если функция не использует этот параметр, то это значение игнорируется.

Пятая строка содержит порядковое число ключей для аутентификации, хранящихся в считывателе.

Конфигурационный файл может быть изменен из приложения при нажатии 't' (Изменить параметры конфигурации).
Во-первых, вы увидите текущий файл конфигурации.txt с опциями 1 — 5 для изменения и ESC для возврата в главное меню.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 2

Для смены клавиш нажмите '1'. Существует четыре типа ключей для аутентификации.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 3

Например, нажмите '3' для клавиши 3K3DES. Введите 24 байта в шестнадцатеричном формате (48 символов).

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 4

Когда изменение закончится, нажмите кнопку ESC для возврата в главном меню, а затем нажмите 't' для проверки изменений.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 5

Тип и значение ключа проверки подлинности были изменены.

 

1.2. Изменение режима аутентификации (0)

Для переключения между внутренней аутентификацией или аутентификацией с предоставленным ключом нажмите «0» на клавиатуре.
Выглядит это так (вот '0' нажато дважды):

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 6

 

1.3. Аутентификация с помощью главного ключа (1)

Для переключения между аутентификацией с помощью главного ключа нажмите «1» на клавиатуре.
Это выглядит так (вот «1», нажатый дважды):

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 7

Требуется ли аутентификация или нет, зависит от главного ключа карты или настроек приложения.

 

1.4. Получить UID карты (2)

Для UID карты (7 байт) нажмите '2'. Требуется действительная проверка подлинности с помощью главного или прикладного ключа.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 8

 

1.5. Формат карты (3)

Нажатие цифры «3» на клавиатуре вызовет форматирование карты (удаление всех приложений и файлов, кроме AID с номером: 000000).
В зависимости от того, какой режим аутентификации вы выбрали, он будет искать ключ AES в считывателе (INTERNAL KEY) или в файле конфигурации.txt (PROVIDED KEY).

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 9

 

1.6. DES в AES (4)

Замена главного ключа карты с заводского ключа DES 0x0000000000000000 на 0x00000000000000000000000000000000 ключей AES.

 

1.7. AES в DES (5)

Замена главного ключа карты с 0x00000000000000000000000000000000 ключа AES на 0x0000000000000000 ключа DES.

 

1.8. Получите свободную память (6)

Считайте количество доступной памяти на карте.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 10

 

1.9. Установка случайного идентификатора (7)

Активация параметров случайной ID-карты с помощью кнопки Set Random ID. Обязательная аутентификация с использованием главного ключа карты.
Карта возвращает 4 байта случайного идентификатора вместо 7 байт уникального идентификатора.
Предупреждение: эта операция необратима.
Когда эта опция активирована, UID может быть прочитан специальной командой, требующей аутентификации с использованием допустимого ключа.

 

1.10. Внутренний ключевой замок (8)

Вы должны ввести пароль (длиной 8 символов) для регистрации ключа блокировки. Заводской пароль — «11111111».

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 11

 

1.11. Разблокировка внутреннего ключа (9)

Чтобы разблокировать возможность регистрации ключей в считывателе, необходимо ввести тот же пароль для разблокировки ключей, который вводится для блокировки регистрации ключей. Заводской пароль " 11111111"

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 12

 

1.12. Установленная скорость передачи данных (а)

После активации опции «Установить скорость передачи данных», нажав «a» на клавиатуре, вы увидите несколько вариантов на выбор для трансивирования и получения скорости передачи. Просто введите номер рядом с опцией, которую вы хотите выбрать.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 13

 

1.13. Получите скорость передачи данных (b)

Считывание значений передачи и приема скорости передачи считывателя.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 14

 

1.14. Хранение ключа в считывателе (c)

Первым выбором является тип ключа.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 15

Например, выберите клавишу 3K3DES. Ключевые 0x010203040506070809101112131415161718192021222324.
Индекс внутреннего ключа равен 0. Для клавиш 3K3DES будут заняты два ключевых поля в считывателе. В данном случае 0 и 1. Первый индекс свободного ключа равен 2. Для других типов ключей будет использоваться только одно ключевое поле.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 16

 

1.15. Изменить ключ (d)

Изменение ключей хозяина карты, хозяина приложения и пользователя. При изменении главного ключа, возможно, измените тип ключа и значение ключа. В приложении все ключи имеют одинаковый тип, и типы ключей не изменяются.
Например, измените главный ключ на тип 3K3DES, а значение 0x010203040506070809101112131415161718192021222324.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 17

 

1.16. Изменение настройки клавиши (e)

Для изменения ключевых настроек внимательно прочитайте доступные настройки и выберите один. Позаботьтесь о выбранных вами настройках, некоторые из них больше не могут быть изменяемыми. Если вы изменяете настройки для AID 000000 — ОН НЕ МОЖЕТ БЫТЬ ОТФОРМАТИРОВАН.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 18

 

1.17. Получить настройку клавиши (f)

Считывание настроек главного ключа карты или главного ключа приложения и максимальное количество ключей приложения. Например, считывание настроек главного ключа карты.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 19

 

1.18. Подать заявку (g)

Например, создайте приложение с ключами AES. AID = 0xA10000. Максимальный ключ No3.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 20

 

1.19. Удалить приложение (h)

Введите AID для удаления.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 21

 

1.20. Сделать файл (j)

В конфигурационном файле задайте AID и главный ключ приложения.
Например, сделать стандартный файл данных размером 100 байт, зашифрованную связь.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 22

Пример: создание файла значений. Нижний предел равен 0, верхний предел равен 200, а начальное значение равно 100. Зашифрованный режим связи.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 23

Пример: создание файла линейной записи. Размер записи составляет 100, а максимальное количество записей — 3, зашифрованный режим связи.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 24

 

1.21. Удалить файл (k)

В конфигурационном файле задайте AID и главный ключ приложения. Введите идентификатор файла для удаления.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 25

 

1.22. Запись std файла или записи (l)

В конфигурационном файле задайте AID, ключ приложения для доступа на запись или чтение и запись и идентификатор файла.
Например, запись текста в стандартный файл данных, зашифрованный режим связи. Текст считывается из файла записи.txt. Размер текста должен быть меньше или равен размеру файла.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 26

Пример: Запись файла записи.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 26

 

1.23. Чтение std-файла или записей (m)

В конфигурационном файле задайте AID, главный ключ приложения и идентификатор файла.
Например, чтение данных из стандартных файлов данных, зашифрованный режим связи. Прочитанные данные будут сохранены в файл чтения.txt.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 28

Пример: чтение двух записей.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 29

 

1.24. Чтение файла значений (n)

В конфигурационном файле задайте ключ аутентификации, AID, номер ключа AID для чтения и идентификатор файла.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 30

1.25. Увеличение файла значений (o)

В конфигурационном файле задайте ключ аутентификации, AID, номер ключа AID для доступа на чтение и запись и идентификатор файла.
Пример: увеличьте файл значений на 20.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 31

 

1.26. Уменьшение файла значений (p)

В конфигурационном файле задайте ключ аутентификации, AID, номер ключа AID для чтения, доступа на запись или чтение и запись и идентификатор файла.
Пример: уменьшите файл значений на 20.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 32

 

1.27. Очистить файл записи (r)

В конфигурационном файле задайте ключ аутентификации, AID, номер ключа AID для доступа на чтение и запись и идентификатор файла. Все записи в файле линейной или циклической записи будут удалены.

Пример программного обеспечения консоли MIFARE DESFire C - Цифровая логика 33

 

1.28. Получение AID приложений

В конфигурационном файле установите главный ключ аутентификации карты, AID = 0x000000.

Пример программного обеспечения консоли MIFARE DESFire C - Digital Logic 34

Дополнительные ссылки:

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

Загрузка программного обеспечения
Описание

Исполняемое программное обеспечение uFR Shell позволяет выполнять командную строку для устройств серии μFR в консольном режиме.