You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 46
Next »
Схема защиты базируется на проверке номера версии хранящегося в памяти электронного ключа. Механизм проверки позволяет работать с новой версией приложения только если в ключе будет записано соответствующее значение. При этом младшие версии будут работать с этим же ключом (т.е. приложение v.1 будет работать с ключом для приложения v.1.1).
Полностью автоматический режим
Внимание!
При реализации этой схемы лицензирования не рекомендуется использовать полностью автоматический режим.
Ключ программируется самостоятельно
Внимание!
В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant» (grdutil.exe), а защита выполняется GUI-утилитой LicenseWizard.exe («Мастер лицензирования и автоматической защиты»)
Запустить «Guardant Интегратор»
Нажать [Программирование электронных ключей]
При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant» (grdutil.exe) создать новый образ нажав [Ctrl+N], или:
Указать нужное значение версии:
- Двойным кликом на поле «Версия» открыть его свойства
- В открывшемся диалоговом окне ввести нужное значение в специальное текстовое поле
- Нажать [OK]
Внимание!
При создании новой маски значение версии автоматически устанавливается как 1
Создать поле с аппаратным алгоритмом симметричного шифрования AES128:
для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160
Двойным кликом на поле открыть его свойства
Вкладка «Ключ ECC60»
Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа
Записать образ в ключ нажав [Ctrl+W], или:
Запустить LicenseWizard.exe
Настройка параметров нового проекта:
Выбор защищаемых приложений:
Нажать [Добавить] и в проводнике Windows выбрать защищаемые файлы
На вкладке «Лицензирование» указать размер вопроса алгоритма (16, 32 или 64 для AES128) и номер (числовое имя) (узнать номер алгоритма можно в grdutil.exe, посмотрев столбец [Тип] — например, если для нужного алгоритма в столбце [Тип] указанно Алгоритм 00 (AES128), то номер будет 0)
Для усиления защиты лучше включить опцию «Использовать алгоритм ЭЦП», нажать […] и в проводнике Windows выбрать ранее сохраненный (п. 4) *.bin-файл открытого ключа
- Нажать [Дополнительные настройки]
- Активировать опцию «Проверять поле версия» и задать нужный номер версии в соответствующем текстовом поле
- Нажать [<< Вернуться]
Включить нужные опции защиты на вкладке «Защита»
Включить нужные сервисные опции на вкладке «Сервис»
Нажать [Продолжить]
После завершения работы мастера защищенное приложение и дополнительные файлы будут в каталоге указанном на шаге №4, в подкаталоге «Result»
Выпуск новой версии приложения
Внимание!
Для защиты новой версии приложения необходимо использовать тот же образ (маску) ключа, который применялся при защите предыдущей версии. Нужно только записать большее значение в поле «Версия» и выполнить защиту как описано выше, с указанием нового значения версии в дополнительных настройках лицензирования. Записать новую версию в ключ клиента нужно при помощи удаленного обновления.
Запустить «Guardant Интегратор»
Нажать [Программирование электронных ключей]
При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant» (grdutil.exe) найти и открыть созданный на этапе защиты или выпуска предыдущей версии образ нажав [Ctrl+F], или:
- Меню «База данных»
- Нажать [Поиск записанных образов]
Указать новое значение версии:
- Двойным кликом на поле «Версия» открыть его свойства
- В открывшемся диалоговом окне ввести нужное значение в специальное текстовое поле
- Нажать [OK]
Записать образ в ключ нажав [Ctrl+W], или:
Запустить LicenseWizard.exe
В области «Последние проекты» выбрать имя нужного проекта защиты (имя проекта задается на этапе защиты)
Внимание!
В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant» (grdutil.exe), а защита выполняется консольной утилитой grdarmor.exe («Guardant Armor»)
Запустить «Guardant Интегратор»
Нажать [Программирование электронных ключей]
При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant» (grdutil.exe) создать новый образ нажав [Ctrl+N], или:
Создать поле с аппаратным алгоритмом симметричного шифрования AES128:
Для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160
Двойным кликом на поле открыть его свойства
Вкладка «Ключ ECC60»
Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа
Добавить нужное значение в поле «Версия»:
- Выделить поле в редакторе
- Меню «Образ ключа»
- Нажать [Свойства поля]
- В текстовом поле задать нужное значение и нажать [ОК]
Свойства поля можно также открыть двойным щелчком мыши
Записать образ в ключ нажав [Ctrl+W], или:
Подготовить защищаемое приложение — выполнить его сборку с генерацией MAP-файла сопоставления
Подготовить файл (*.prc или *.ini) c перечислением защищаемых функций
Запустить стандартное Windows-приложение «Командная строка» и перейти в папку «Bin», установленного Guardant SDK («по умолчанию» C:\Program Files (x86)\Guardant\SDK7\Bin)
Запустить grdarmor.exe c параметрами привязки, защиты и нужным файлом защищаемых функций (*.prc или *.ini)
grdarmor.exe -ENVELOPE_MODE=H:5:8 -GS3S -uv=1 -OUT=./PrcProtect -PRC=app.prc -MAP=app.map app.exe | grdarmor.exe -ENVELOPE_MODE=S -GS3S -uv=1 -OUT=./IniProtect -INI=app.ini -MAP=app.map app.exe |
Используется *.prc-файл, аппаратный режим работы конверта и USB-ключ Guardant Sign. Защищенное приложение запуститься если в ключе записано значение версии >=1 | Используется *.ini-файл, программный режим работы конверта и USB-ключ Guardant Sign. Защищенное приложение запуститься если в ключе записано значение версии >=1 |
Выпуск новой версии приложения
Для защиты новой версии приложения необходимо использовать тот же образ (маску) ключа, который применялся при защите предыдущей версии. Нужно только записать большее значение в поле «Версия» и выполнить защиту как описано выше, с указанием нового значения версии (например, -uv=2). Записать новую версию в ключ клиента нужно при помощи удаленного обновления.
Внимание!
В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant» (grdutil.exe), а обфускация кода .Net-приложения выполняется консольной утилитой CodeObfuscator.exe
Важно!
Если совместно с обфускацией кода .Net-приложения будет производится и его защита с переносом кода в защищенное хранилище, то должна соблюдаться следующая последовательность использования утилит:
- Утилита обфускации CodeObfuscator.exe
- Утилита защиты кода CodeProtect.exe
Запустить «Guardant Интегратор»
Нажать [Программирование электронных ключей]
При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant» (grdutil.exe) создать новый образ нажав [Ctrl+N], или:
Создать поле с аппаратным алгоритмом симметричного шифрования AES128:
для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160
Двойным кликом на поле открыть его свойства
Вкладка «Ключ ECC60»
Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа
Добавить нужное значение в поле «Версия»:
- Выделить поле в редакторе
- Меню «Образ ключа»
- Нажать [Свойства поля]
- В текстовом поле задать нужное значение и нажать [ОК]
Свойства поля можно также открыть двойным щелчком мыши
Записать образ в ключ нажав [Ctrl+W], или:
Запустить стандартное Windows-приложение «Командная строка» и перейти в папку «Bin», установленного Guardant SDK («по умолчанию» C:\Program Files (x86)\Guardant\SDK7\Bin)
Запустить CodeObfuscator.exe c параметрами привязки и защиты
CodeObfuscator.exe /GS3S=0:16::1:app.exe.bin /INIT /SO /SE /ATR=1 /UV=1 /OUT=./Result /MAP=app.map app.exe |
.Net-приложение обфусцируется с применением шифрования строковых констант при помощи аппаратного электронного USB-ключа Guardant Sign. Защищенное приложение запуститься если в ключе записано значение версии >=1 |
Внимание!
В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant» (grdutil.exe), а защита кода .Net-приложения выполняется консольной утилитой CodeProtect.exe
Важно!
Если совместно с защитой кода .Net-приложения будет производится и его обфускация, то должна соблюдаться следующая последовательность использования утилит:
- Утилита обфускации CodeObfuscator.exe
- Утилита защиты кода CodeProtect.exe
Запустить «Guardant Интегратор»
Нажать [Программирование электронных ключей]
При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant» (grdutil.exe) создать новый образ нажав [Ctrl+N], или:
Создать поле с аппаратным алгоритмом симметричного шифрования AES128:
для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160
Двойным кликом на поле открыть его свойства
Вкладка «Ключ ECC60»
Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа
Добавить нужное значение в поле «Версия»:
- Выделить поле в редакторе
- Меню «Образ ключа»
- Нажать [Свойства поля]
- В текстовом поле задать нужное значение и нажать [ОК]
Свойства поля можно также открыть двойным щелчком мыши
Записать образ в ключ нажав [Ctrl+W], или:
Запустить стандартное Windows-приложение «Командная строка» и перейти в папку «Bin», установленного Guardant SDK («по умолчанию» C:\Program Files (x86)\Guardant\SDK7\Bin)
Запустить CodeProtect.exe c параметрами привязки и защиты
CodeProtect.exe /GS3S=0:16::1:app.exe.bin /PER=10 /ATR=1 /UV=1 /OUT=./Result /MAP=app.map app.exe |
10 процентов методов .Net-приложения будут зашифрованы при помощи аппаратного электронного USB-ключа Guardant Sign и размещены в защищенном контейнере. Защищенное приложение запуститься если в ключе записано значение версии >=1 |
Внимание!
В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant» (grdutil.exe), а защита выполняется консольной утилитой nwkey32.exe
Запустить «Guardant Интегратор»
Нажать [Программирование электронных ключей]
При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant» (grdutil.exe) создать новый образ нажав [Ctrl+N], или:
Создать поле с аппаратным алгоритмом симметричного шифрования AES128:
для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160
Двойным кликом на поле открыть его свойства
Вкладка «Ключ ECC60»
Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа
Добавить нужное значение в поле «Версия»:
- Выделить поле в редакторе
- Меню «Образ ключа»
- Нажать [Свойства поля]
- В текстовом поле задать нужное значение и нажать [ОК]
Свойства поля можно также открыть двойным щелчком мыши
Записать образ в ключ нажав [Ctrl+W], или:
Запустить стандартное Windows-приложение «Командная строка» и перейти в папку «Bin», установленного Guardant SDK («по умолчанию» C:\Program Files (x86)\Guardant\SDK7\Bin)
Запустить nwkey32.exe c параметрами привязки и защиты
nwkey32.exe /GS3S=0:16::1:app.exe.bin /IMPORT_HOOK=30:5 /RIP_CODE=10 /T=5 /ATR=1 /UV=1 /OUT=./Result /MAP=app.map app.exe |
Приложение будет защищено с использованием аппаратного электронного USB-ключа Guardant Sign. При этом будет защищено 30 процентов импортируемых функций по 5 инструкций из каждой функции, а также для инструкций в теле приложения существует 10-процентная вероятность переноса в виртуальную машину. Защищенное приложение запуститься если в ключе записано значение версии >=1 |