Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Модель лицензирования может быть реализована при помощи нескольких утилит автоматической защиты. Выбор конкретной утилиты или набора утилит зависит от типа приложения (native или .Net) и его разрядности (х86 или х64). На вкладках с названиями утилит описаны действия, которые нужно выполнить чтобы реализовать защиту своего приложения и установить нужные условия лицензирования:

  • LicenseWizard.exe — графическое приложение (оболочка), для удобной защиты и лицензирования как native, так и .Net приложений. Режимы работы перечислены на странице как сделать.
  • grdarmor.exe — современная консольная утилита автоматической защиты х86 и х64 native приложений
  • CodeObfuscator.exe —  консольная утилита обфускации кода .Net приложений
  • CodeProtect.exe — консольная утилита защиты и шифрования кода .Net приложений
  • nwkey32.exe — консольная утилита "прошлого поколения" для защиты только х86 native приложений
UI Text Box
typewarning

Важно!

Схема защиты базируется на проверке номера версии хранящегося в памяти электронного ключа. Механизм проверки позволяет работать с новой версией приложения только если в ключе будет записано соответствующее значение. При этом младшие версии будут работать с этим же ключом (т.е. приложение v.1 будет работать с ключом для приложения v.1.1).


AUI Tab Group
persistencetrue


trueLicenseWizard.exe

Полностью автоматический режим

info

Внимание!

В этом режиме настройка лицензионных ограничений, программирование памяти ключа и защита выполняются только при помощи GUI-утилиты LicenseWizard.exe («Мастер лицензирования и автоматической защиты»)

small

Запустить LicenseWizard.exe

Нажать [Пустой проект]

Настройка параметров нового проекта:

  • «Способ программирования ключей» оставить «Алгоритмы и данные в ключе генерируются автоматически мастером»
  • «Средство лицензирования (как защищаться от копирования)» в выпадающем списке «Использовать аппаратный ключ модели:» указать модель ключа
  • Нажать [Продолжить]

Создание нового проекта:

  • Указать имя проекта и каталог, в котором сохраняться файлы проекта
  • Нажать [Продолжить]

Выбор ключа:

Выбрать нужный ключ из списка подсоединенных и, если нужно, включить опцию «Использовать ключ в »

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

  • Нажать [Продолжить]

  • Выбор защищаемых приложений:

    Нажать [Добавить] ив проводнике Windows выбрать защищаемые файлы
  • На вкладке «Лицензирование» нажать [Дополнительные настройки]
  • Активировать опцию «Проверять поле версия» и задать нужный номер версии в соответствующем текстовом поле
  • Нажать [<< Вернуться]
  • Включить нужные опции защиты на вкладке «Защита»
  • Настроить сервисные опции на вкладке «Сервис»
  • Нажать [Продолжить]
  • После завершения работы мастера защищенное приложение и дополнительные файлы будут в каталоге указанном на шаге №4, в подкаталоге «Result»

    Ключ программируется самостоятельно

    info

    Внимание!

    В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant»(grdutil.exe), а защита выполняется GUI-утилитой LicenseWizard.exe («Мастер лицензирования и автоматической защиты»)


    small


    Запустить «Guardant Интегратор»

    Info-Circlewhite#305F7AINLINE

    Оболочка для быстрого доступа к часто используемым утилитам Guardant SDK.

    Запускается ярлыком на рабочем столе «Guardant SDK #Update #» (вместо # указан номер версии и обновления).



    Нажать рограммирование электронных ключей]

    Info-Circlewhite#305F7AINLINE

    «Редактор памяти ключей Guardant»(grdutil.exe)— это утилита, предназначенная для подготовки образов (масок) с данными и записи их в память электронных ключей.



    При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant»(grdutil.exe) создать новый образ нажав [Ctrl+N], или:

    • Меню «Файл»
    • [Создать образ…]


    info

    Внимание!

    В диалоговом окне создания нового образа нужно выбрать тип ключа из нижней области «Создание пустого образа»


    Указать нужное значение версии:

    • Двойным кликом на поле «Версия» открыть его свойства
    • В открывшемся диалоговом окне ввести нужное значение в специальное текстовое поле
    • Нажать [OK]


    info

    Внимание!

    При создании образа значение версии автоматически устанавливается как 1


    поле с аппаратным алгоритмом симметричного шифрования AES128:

    • для Для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160

    • Двойным кликом на поле открыть его свойства

    • Вкладка «Ключ ECC60ECC160»

    • Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа


    Записать образ в ключ нажав [Ctrl+W], или:

    • Меню «Ключ»
    • Если нужно, включить опцию «Записывать ключи как HID»
    • Нажать


    Запустить LicenseWizard.exe


    Нажать [Пустой проект]


    Настройка параметров нового проекта:

    • «Способ программирования ключей» выбрать «Ключ программируется разработчиком самостоятельно»
    • «Средство лицензирования (как защищаться от копирования)» в выпадающем списке «Использовать аппаратный ключ модели:» указать модель ключа

    • Нажать [Продолжить]


    Создание нового проекта:

    • Указать имя проекта и каталог, в котором сохраняться файлы проекта

    • Нажать [Продолжить]


    Выбор ключа:

    • Выбрать нужный ключ из списка подсоединенных

    • Нажать [Продолжить]


    Выбор защищаемых приложений:

    • Нажать [Добавить] и в проводнике Windows выбрать защищаемые файлы

    • На вкладке «Лицензирование» указать размер вопроса алгоритма (16, 32 или 64 для AES128) и номер (числовое имя) (узнать номер алгоритма можно в grdutil.exe, посмотрев столбец [Тип] — например, если для нужного алгоритма в столбце [Тип]указанно Алгоритм 00 (AES128), то номер будет 0)

    • Для усиления защиты лучше включить опцию «Использовать алгоритм ЭЦП», нажать […] и в проводнике Windows выбрать ранее сохраненный (п. 45) *.bin-файл открытого ключа

    • Нажать [Дополнительные настройки]
    • Активировать опцию «Проверять поле версия» и задать нужный номер версии в соответствующем текстовом поле
    • Нажать [<< Вернуться]
    • Включить нужные опции защиты на вкладке «Защита»

    • Включить нужные сервисные опции на вкладке «Сервис»

    • Нажать [Продолжить]


    После завершения работы мастера защищенное приложение и дополнительные файлы будут в каталоге указанном на шаге

    №4, в подкаталоге «Result»

    12345465677

    №10, в подкаталоге «Result»


    Выпуск новой версии приложения

    info

    Внимание!

    Для защиты новой версии приложения необходимо ключа, который применялся при защите предыдущей версии. Нужно только записать большее значение в поле «Версия» и выполнить защиту как описано выше, с указанием нового значения версии в дополнительных настройках лицензирования. Записать новую версию в ключ клиента нужно при помощи .


    small


    Запустить «Guardant Интегратор»

    Info-Circlewhite#305F7AINLINE

    Оболочка для быстрого доступа к часто используемым утилитам Guardant SDK.

    Запускается ярлыком на рабочем столе «Guardant SDK #Update #» (вместо # указан номер версии и обновления).



    Нажать рограммирование электронных ключей]

    Info-Circlewhite#305F7AINLINE

    «Редактор памяти ключей Guardant»(grdutil.exe)— это утилита, предназначенная для подготовки образов (масок) с данными и записи их в память электронных ключей.



    При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant»(grdutil.exe) найти и открыть созданный на этапе защиты или выпуска предыдущей версии образ нажав [Ctrl+F], или:

    • Меню «База данных»
    • Нажать [Поиск записанных образов]


    Указать новое значение версии:

    • Двойным кликом на поле «Версия» открыть его свойства
    • В открывшемся диалоговом окне ввести нужное значение в специальное текстовое поле
    • Нажать [OK]


    Записать образ в ключ нажав [Ctrl+W], или:

    • Меню «Ключ»
    • Если нужно, включить опцию «Записывать ключи как HID»
    • Нажать [Записать образ в ключ]


    Запустить LicenseWizard.exe


    В области «Последние проекты» выбрать имя нужного проекта защиты (имя проекта задается на этапе защиты) и нажать на него


    Несколько раз подряд нажать продолжить и дойти до диалогового окна выбора приложений:

    • В области «Приложения:» нажать [удалить] в строке с указанием старой версии приложения

    • Нажать [Добавить] и в проводнике Windows выбрать защищаемые файлы новой версии приложения

    • Нажать [Дополнительные настройки]

    • Задать нужный номер версии в соответствующем текстовом поле
    • Нажать [<< Вернуться]
    • Если нужно то перенастроить опции защиты на вкладке «Защита»

    • Если нужно то перенастроить сервисные опции на вкладке «Сервис»

    • Нажать [Продолжить]


    После завершения работы мастера защищенное приложение и дополнительные файлы будут в каталоге с проектом защиты, в подкаталоге «Result»


    warning

    Важно!

    Защищенное приложение и дополнительные файлы в «Result», сформированные на этапе защиты или выпуска предыдущей версии, будут удалены и заменены новыми. При необходимости нужно выполнить сохранение этих файлов до начала защиты новой версии.




    grdarmor.exegrdarmor.exe


    info

    Внимание!

    В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant»(grdutil.exe), а защита выполняется консольной утилитой grdarmor.exe («Guardant Armor»)


    small


    Запустить «Guardant Интегратор»

    Info-Circlewhite#305F7AINLINE

    Оболочка для быстрого доступа к часто используемым утилитам Guardant SDK.

    Запускается ярлыком на рабочем столе «Guardant SDK #Update #» (вместо # указан номер версии и обновления).



    Нажать рограммирование электронных ключей]

    Info-Circlewhite#305F7AINLINE

    «Редактор памяти ключей Guardant»(grdutil.exe)— это утилита, предназначенная для подготовки образов (масок) с данными и записи их в память электронных ключей.



    При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant»(grdutil.exe) создать новый образ нажав [Ctrl+N], или:

    • Меню «Файл»
    • [Создать образ…]


    info

    Внимание!

    В диалоговом окне создания нового образа нужно выбрать тип ключа из нижней области «Создание пустого образа»


    поле с аппаратным алгоритмом симметричного шифрования AES128:

    • Для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160

    • Двойным кликом на поле открыть его свойства

    • Вкладка «Ключ ECC60ECC160»

    • Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа


    Добавить нужное значение в поле «Версия»:

    • Выделить поле в редакторе
    • Меню «Образ ключа»
    • Нажать [Свойства поля]
    • В текстовом поле задать нужное значение и нажать [ОК]

    Свойства поля можно также открыть двойным щелчком мыши


    Записать образ в ключ нажав [Ctrl+W], или:

    • Меню «Ключ»
    • Если нужно, включить опцию «Записывать ключи как HID»
    • Нажать


    Подготовить защищаемое приложение — выполнить его сборку с генерацией MAP-файла сопоставления


    Подготовить файл (*.prcили ) c перечислением защищаемых функций


    Запустить стандартное Windows-приложение «Командная строка» и перейти в папку «Bin», установленного Guardant SDK («по умолчанию»C:\Program Files (x86)\Guardant\SDK7\Bin)

    info

    Внимание!

    Для выполнения защиты 64-битных приложений необходимо перейти в папку «х64», установленного Guardant SDK («по умолчанию»C:\Program Files (x86)\Guardant\SDK7\Bin\х64)



    Запустить grdarmor.exe c параметрами привязки, защиты и нужным файлом защищаемых функций (*.prcили )

    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). Записать новую версию в ключ клиента нужно при помощи .


    CodeObfuscator.exe


    info

    Внимание!

    В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant»(grdutil.exe), а обфускация кода .Net-приложения выполняется консольной утилитой CodeObfuscator.exe


    warning

    Важно!

    Если совместно с кода .Net-приложения будет производится и его с переносом кода в защищенное хранилище, то должна соблюдаться следующая последовательность использования утилит:

    1. Утилита обфускации CodeObfuscator.exe
    2. Утилита защиты кода CodeProtect.exe


    small


    Запустить «Guardant

    Интегратор» 

    Интегратор»

    Info-Circlewhite#305F7AINLINE

    Оболочка для быстрого доступа к часто используемым утилитам Guardant SDK.

    Запускается ярлыком на рабочем столе «Guardant SDK #Update #» (вместо # указан номер версии и обновления).



    Нажать рограммирование электронных ключей]

    Info-Circlewhite#305F7AINLINE

    «Редактор памяти ключей Guardant»(grdutil.exe)— это утилита, предназначенная для подготовки образов (масок) с данными и записи их в память электронных ключей.



    При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant»(grdutil.exe) создать новый образ нажав [Ctrl+N], или:

    • Меню «Файл»
    • [Создать образ…]


    info

    Внимание!

    В диалоговом окне создания нового образа нужно выбрать тип ключа из нижней области «Создание пустого образа»


    поле с аппаратным алгоритмом симметричного шифрования AES128:

    • для Для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160

    • Двойным кликом на поле открыть его свойства

    • Вкладка «Ключ ECC60ECC160»

    • Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа


    Добавить нужное значение в поле «Версия»:

    • Выделить поле в редакторе
    • Меню «Образ ключа»
    • Нажать [Свойства поля]
    • В текстовом поле задать нужное значение и нажать [ОК]

    Свойства поля можно также открыть двойным щелчком мыши


    Записать образ в ключ нажав [Ctrl+W], или:

    • Меню «Ключ»
    • Если нужно, включить опцию «Записывать ключи как HID»
    • Нажать


    Запустить стандартное 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



    Выпуск новой версии приложения

    Для защиты новой версии приложения необходимо ключа, который применялся при защите предыдущей версии. Нужно только записать большее значение в поле «Версия» и выполнить защиту как описано выше, с указанием нового значения версии (например, /UV=2). Записать новую версию в ключ клиента нужно при помощи .


    CodeProtect.exe


    info

    Внимание!

    В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant»(grdutil.exe), а защита кода .Net-приложения выполняется консольной утилитой CodeProtect.exe


    warning

    Важно!

    Если совместно с .Net-приложения будет производится и его , то должна соблюдаться следующая последовательность использования утилит:

    1. Утилита обфускации CodeObfuscator.exe
    2. Утилита защиты кода CodeProtect.exe


    small


    Запустить 

    «Guardant Интегратор» 

    «Guardant Интегратор»

    Info-Circlewhite#305F7AINLINE

    Оболочка для быстрого доступа к часто используемым утилитам Guardant SDK.

    Запускается ярлыком на рабочем столе «Guardant SDK #Update #» (вместо # указан номер версии и обновления).



    Нажать рограммирование электронных ключей]

    Info-Circlewhite#305F7AINLINE

    «Редактор памяти ключей Guardant»(grdutil.exe)— это утилита, предназначенная для подготовки образов (масок) с данными и записи их в память электронных ключей.



    При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant»(grdutil.exe) создать новый образ нажав [Ctrl+N], или:

    • Меню «Файл»
    • [Создать образ…]


    info

    Внимание!

    В диалоговом окне создания нового образа нужно выбрать тип ключа из нижней области «Создание пустого образа»


    поле с аппаратным алгоритмом симметричного шифрования AES128:

    • для Для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160

    • Двойным кликом на поле открыть его свойства

    • Вкладка «Ключ ECC60ECC160»

    • Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа


    Добавить нужное значение в поле «Версия»:

    • Выделить поле в редакторе
    • Меню «Образ ключа»
    • Нажать [Свойства поля]
    • В текстовом поле задать нужное значение и нажать [ОК]

    Свойства поля можно также открыть двойным щелчком мыши


    Записать образ в ключ нажав [Ctrl+W], или:

    • Меню «Ключ»
    • Если нужно, включить опцию «Записывать ключи как HID»
    • Нажать


    Запустить стандартное 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



    Выпуск новой версии приложения

    Для защиты новой версии приложения необходимо ключа, который применялся при защите предыдущей версии. Нужно только записать большее значение в поле «Версия» и выполнить защиту как описано выше, с указанием нового значения версии (например, /UV=2). Записать новую версию в ключ клиента нужно при помощи .


    nwkey32.exe


    info

    Внимание!

    В этом режиме настройка лицензионных ограничений производится при программировании памяти ключа через утилиту «Редактор памяти ключей Guardant»(grdutil.exe), а защита выполняется консольной утилитой


    small


    Запустить «Guardant

    Интегратор» 

    Интегратор»

    Info-Circlewhite#305F7AINLINE

    Оболочка для быстрого доступа к часто используемым утилитам Guardant SDK.

    Запускается ярлыком на рабочем столе «Guardant SDK #Update #» (вместо # указан номер версии и обновления).



    Нажать рограммирование электронных ключей]

    Info-Circlewhite#305F7AINLINE

    «Редактор памяти ключей Guardant»(grdutil.exe)— это утилита, предназначенная для подготовки образов (масок) с данными и записи их в память электронных ключей.



    При помощи утилиты программирования электронных ключей «Редактор памяти ключей Guardant»(grdutil.exe) создать новый образ нажав [Ctrl+N], или:

    • Меню «Файл»
    • [Создать образ…]


    info

    Внимание!

    В диалоговом окне создания нового образа нужно выбрать тип ключа из нижней области «Создание пустого образа»


    поле с аппаратным алгоритмом симметричного шифрования AES128:

    • для Для усиления защиты лучше еще создать поле с аппаратным алгоритмом выработки ЭЦП ECC160

    • Двойным кликом на поле открыть его свойства

    • Вкладка «Ключ ECC60ECC160»

    • Нажать [Экспорт в bin-файл автозащиты] и выполнить сохранение *.bin-файла открытого ключа


    Добавить нужное значение в поле «Версия»:

    • Выделить поле в редакторе
    • Меню «Образ ключа»
    • Нажать [Свойства поля]
    • В текстовом поле задать нужное значение и нажать [ОК]

    Свойства поля можно также открыть двойным щелчком мыши


    Записать образ в ключ нажав [Ctrl+W], или:

    • Меню «Ключ»
    • Если нужно, включить опцию «Записывать ключи как HID»
    • Нажать


    Запустить стандартное 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 30 процентов импортируемых функций по 5 инструкций из каждой функции, а также для инструкций в теле приложения существует 10-процентная вероятность переноса в виртуальную машину. Защищенное приложение запуститься запустится если в ключе записано значение версии >=1



    Выпуск новой версии приложения

    Для защиты новой версии приложения необходимо ключа, который применялся при защите предыдущей версии. Нужно только записать большее значение в поле «Версия» и выполнить защиту как описано выше, с указанием нового значения версии (например, /UV=2). Записать новую версию в ключ клиента нужно при помощи .