После компиляции кода и получения Bin-файла разработчику необходимо передать бинарный код в GrdUtil.exe для его обработки и записи в ключ. Для этого служит диалог Настройки загружаемого кода.
Диалог позволяет:
Кроме того, диалог предоставляет дополнительные сервисы, упрощающие работу с загружаемым кодом.
По нажатию кнопки Импортировать код из Bin-файла, находящейся в правой верхней части страницы Настройки загружаемого кода, появляется диалог выбора Bin-файла из нужного проекта.
При импорте GrdUtil.exe считывает из файла имя_проекта.bmap настройки, описывающие использование памяти ключа загружаемым кодом. После этого в диалоге отображаются:
Индикатор состояния | Назначение |
Используемая RAM | Индикация выделенной для загружаемого кода оперативной памяти ключа, ее начального и конечного адреса |
Используемая Flash | Индикация выделенной для загружаемого кода Flash-памяти ключа, ее начального и конечного адреса, а также номера ячейки, хранящей дескриптор загружаемого кода |
Свободная память обозначается зеленым цветом, используемая – синим. Адресация дается в шестнадцатеричном формате.
По соображениям конфиденциальности загружаемый код не должен передаваться «наружу» в открытом виде.
Поэтому в GrdUtil.exe реализована эффективная схема подготовки кода для записи в электронный ключ и безопасной передачи обновлений загружаемого кода конечным пользователям.
GrdUtil.exe автоматически преобразует бинарный код в файл формата GCEXE, содержащий:
При этом в дескрипторе (ячейке) загружаемого кода хранится «ответная часть» ключей ECC, используемых при преобразовании бинарного кода:
Что позволяет электронному ключу при обращении к загруженному коду успешно его проверять, расшифровывать и выполнять.
Важно! |
По нажатию кнопки Настройки шифрования загружаемого кода появляется диалог для работы с ключевыми парами:
Диалог предназначен для генерации, импорта и экспорта ключевых пар асимметричного алгоритма ECC160, которые используются при преобразовании бинарного кода в формат GCEXE (см. предыдущий пункт).
В верхней части диалога отображаются закрытый (слева) и открытый (справа) ключи ECC160 №#2 для цифровой подписи зашифрованного кода.
В нижней части диалога находится ключевая пара (закрытый ключ – слева, открытый – справа) ECC160 №#1 для шифрования бинарного кода.
Кроме того, диалог дополнен кнопками, позволяющими генерировать новые ключевые пары, экспортировать их во внешний файл для использования в приложении и импортировать ключевые файлы из других проектов.
Экспорт GCEXE во внешний файл может потребоваться в случае, когда разработчику необходимо обновить загружаемый код в электронном ключе, находящемся у конечного пользователя.
В такой ситуации разработчику следует придерживаться следующей схемы действий:
После выполнения настроек загружаемого кода остается завершить диалог и выполнить команду меню Ключ | (Операции с ключом) Записать образ в ключ. При этом будут сформированы и записаны в ключ: