Общая информация
Меню Программы предназначено для задания настроек, которые применяются к конкретному файлу программы и определяют поведение программы.
Пока в проекте защиты нет программ, меню представляет собой серое поле с сообщением Проект не содержит ни одной программы (Project contains no programs) и кнопкой Добавить программу (Add program).
Общие настройки
Исходный файл (Input file)
Определяет файл программы, предназначенной для защиты.
Выходная папка (Result directory)
Позволяет выбрать папку, в которую будет сохранен защищенный файл программы.
Привязка к лицензии (License binding)
Номер Компонента (Feature number)
Номер компонента определяет, какие ключи шифрования используются в процессе защиты.
Задать используемый компонент можно с помощью выпадающего списка или редактированием содержимого текстового поля.
Защита от реверс-инжиниринга (Reverse engineering protection)
Проверка при запуске (Check on startup)
Эта настройка не позволяет запустить защищенную программу без подходящей лицензии.
В некоторых случаях может понадобиться отключить эту настройку. Например, если защищается файл библиотеки, то может оказаться полезным загрузить библиотеку при отсутствии лицензии, но выдавать сообщение об ошибке лицензирования только при попытке обращения к некоторым функциям.
Секции для шифрования (Section to be encrypted)
Настройка секций позволяет избирательно применять шифрование к их содержимому. Некоторые секции, особенно содержащие ресурсы, могут шифроваться или исключаться из шифрования, .... Выбор происходит в отдельном окне.
Данная настройка доступна только для файлов нативных программ.
Проброс исключений (Forward exceptions)
Включение этой настройки позволяет выбрасывать исключения, а не выводить сообщения об ошибках или экстренно завершать работу защищенной программы. Это позволяет сделать обработку ошибок более гибкой и единообразной, но требует соответствующих изменений в коде программы, особенно если включена настройка Проверка при запуске.
Данная настройка доступна только для файлов программ .NET.
Файл *.map (File*.map)
В зависимости от того, какой toolchain использовался для сборки защищаемой нативной программы, может возникнуть необходимость задать map-файл. Этот файл содержит описание символов, имеющихся в программе, поэтому задание map-файла позволит Protection Studio обнаружить все функции и секции файла программы. С его помощью оказывается возможным выбрать функции для защиты среди всех non-inline функций файла программы (а не только среди экспортированных функций).
В MSVC этот файл называется файлом сопоставления.
Обычно для файлов программ, собранных с помощью MSVC, нужно задавать map-файл. А для файлов программ, собранных с помощью GCC, задавать map-файл не обязательно, т.к. в файле программы, если к нему не применялась утилита strip (или подобные ей), все необходимые данные сохраняются.
Данная настройка доступна только для файлов нативных программ.
Функции для защиты (Functions to be protected)
Эта настройка позволяет осуществить выбор функций нативной программы либо методов программы .NET, которые будут защищены. К защищенным функциям невозможно обратиться без наличия ключа Guardant с подходящей лицензией. Выбор функций для защиты происходит в отдельном окне.
При выборе функций для защиты необходимо иметь в виду, что важно соблюдать компромисс между защищенностью и производительностью. Если выбрать все функции либо методы, то производительность приложения существенно замедлится. Напротив, если не выбирать никакие функции либо методы, уровень защищенности может оказаться недостаточным.
Дополнительные параметры (Advanced parameters)
Номер продукта (Product number)
Указание номера продукта позволяет ограничить поиск подходящей лицензии. Таким образом, лицензию, выпущенную для другого продукта, даже если она подходит по всем остальным характеристикам, использовать будет невозможно.
Режим поиска (Search mode)
Указание режима поиска и типа ключа также позволяет ограничить поиск подходящей лицензии. Режим поиска позволяет выбирать между локальными и удаленными (сетевыми) ключами, а тип ключа - между программными ключами (лицензии DL) и аппаратными ключами.
Файл заставки (Splashscreen)
Для файлов нативных программ возможно настроить показ изображения-заставки при запуске защищенной программы.
Данная настройка доступна только для файлов нативных программ, представляющих приложения в формате PE (Windows, файлы *.exe).