T-n-T: Верификация ID устройства

Материал из CANNY Wiki
Перейти к: навигация, поиск

Задача[править]

Запретить запуск диаграммы на неавторизованных устройствах.

Решение[править]

Одним из вариантов решения данной задачи является реализация алгоритма защиты диаграммы PIN-кодом, привязанным к уникальному идентификатору устройства, с применением SFX-файла.

Для реализации данного решения нужно:

  • Добавить в диаграмму фрагмент, вычисляющий уникальный PIN-код по серийному идентификационному номеру контроллера (ID устройства). Алгоритм может быть любой, например такой:

Example11.png

где "пароль1" и "пароль2" - постоянные значения, задаваемые автором диаграммы произвольно, являющиеся ключевыми для генерирования PIN-кода.

  • Создать SFX-файл, содержащий используемый алгоритм и параметр пользовательской конфигурации и передать его пользователю.

Порядок работы с данным решением:

  • Пользователь запускает полученный SFX-файл, подключает контроллер к ПК, сообщает идентификационный номер устройства автору диаграммы.
  • Автор диаграммы, зная заложенный в контроллер алгоритм авторизации и используя полученное значение идентификатора, генерирует PIN-код, например с использованием симулятора CannyLab, и передает его пользователю.
  • Пользователь вводит полученный PIN-код в поле параметра пользовательской конфигурации и записывает программу в контроллер.

Сгенерированный таким образом PIN-код подходит только для контроллера с указанным идентификационным номером и не сможет быть успешно использован для контроллера с другим ID.

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

Преимущество такой защиты состоит в том, что файл автономной загрузки ПО в контролер (SFX-файл) может быть один и может находиться при этом в свободном доступе.