Для защиты разных типов приложений применяются разные автоматические средства:
.NET | Native | |||
x86 | x64 | x86 | x64 | |
Консольная утилита | codeobfuscator.exe + codeprotect.exe | Guardant Armor или nwkey32.exe | Guardant Armor | |
GUI-утилита | Мастер автозащиты | - |
Автоматическая защита Guardant поддерживает 32-разрядные Windows-приложения и предназначена для обработки исполняемых файлов Native-приложений (.exe), а также .NET-сборок (.exe, *.dll).
|
Автоматическая защита Guardant предоставляет широкие возможности для защиты приложений. Она несколько режимов, позволяющих настроить процесс защиты, а также способ привязки защищаемого приложения к электронному ключу, частоту и характер производимых проверок и возвращаемых сообщений в случае неудачного завершения проверок. Конечной целью является ограничение числа запусков или времени работы защищенного приложения и защита приложения от анализа и отладки.
Возможности автоматической защиты, в общем случае, можно классифицировать следующим образом:
Ограничение работы защищенного приложения:
Способы привязки приложения к ключу:
Защита приложения использует:
Режимы работы автоматической защиты приложений:
Последний режим предполагает, что привязка к ключу полностью реализуется при помощи Guardant API и необходимость дублирования вызовов ключа отсутствует.
Основные возможности автоматической защиты в зависимости от типа Win-32 приложения приведены в таблице:
Возможности автозащиты
| Тип Win32-приложения | ||
---|---|---|---|
Исполняемые Native-приложения (.exe)* | .NET-сборки (.exe, .dll) | ||
Поддержка локальных ключей, включая SP | + | + | |
Поддержка сетевых ключей | + | + | |
Использование для защиты произвольных алгоритмов типа GSII64 и AES | + | + | |
Защита без привязки к ключу | + | + | |
Привязка к уникальному параметру ключа (ID) | + | + | |
Привязка к серийному номеру и версии ключа | + | + | |
Защита нескольких продуктов или разных версий одного продукта | + | + | |
Защита многомодульных комплексов | + | + | |
Ограничение времени работы приложения | + | + | |
Ограничения числа запусков приложения | + | + (начиная с SDK 7.0) | |
Проверка ключа через заданный промежуток | + | - | |
Контроль присутствия USB-ключа в порту | + | - | |
Защита импортируемых функций | + | - | |
Кодирование и упаковка приложения | + | - | |
Шифрование строк .NET-сборки | - | + | |
Обфускация .NET-сборки | - | + | |
Защита кода .NET-сборки | - | + |
Инструментарий автоматической защиты Guardant состоит из нескольких консольных утилит (утилита для защиты Native-приложений, и две отдельные утилиты для обфускации и защиты кода .NET-сборок), а также утилит с графическим интерфейсом:
Утилиты автозащиты
| Назначение
| |
Название | Тип | |
Консольные
| Защита обычных (Native) exe-файлов | |
Обфускация и шифрование строк .NET-сборок | ||
Защита кода .NET-сборок | ||
GUI
| Графическая оболочка для лицензирования и защиты исполняемых Native-файлов и .NET-сборок | |
NativeProfilerGUI.exe | Native-профилировщик | |
DotNetProfilerGUI.exe | .NET-профилировщик |
Механизмы защиты Native-приложений и .NET-сборок имеют существенные отличия, поэтому далее рассматриваются отдельно: