Защита программного обеспечения с использованием Sentinel LDK API (HASP API)

Sentinel LDK API (HASP API) - наиболее серьезный и более гибкий метод построения защиты программного обеспечения по сравнению с методом автоматической защиты ПО посредством использования Sentinel LDK Envelope (HASP Envelope).

Реализация защиты с применением данного метода зависит лишь от фантазии и квалификации разработчика программного приложения - степень защищенности программного продукта будет напрямую зависеть от изощренности применения разработчиком функций Sentinel Licensing API.

Перед началом построения защиты программного приложения рекомендуется ознакомиться с возможностями данного метода - для создания представления о его функциональности и построения, на основе полученных знаний, своего нестандартного решения по защите.

Для знакомства с Sentinel LDK API (HASP API) вы можете воспользоваться документацией, входящей в комплект разработчика Sentinel LDK (HASP SDK), либо обратиться к системе помощи компонента Sentinel LDK ToolBox, входящего в состав пакета Sentinel Vendor Suite (доступен после установки комплекта разработчика).

Sentinel LDK Toolbox

Построение защиты программного приложения с использованием Sentinel LDK API основывается на вставках в исходный код программы обращений к электронному ключу Sentinel (HASP). Соответственно (в отличии от защиты ПО с использованием Sentinel LDK Envelope) необходимо наличие доступа к исходному коду программного продукта.

В качестве примера можно привести популярный метод проверки наличия электронного ключа и тем самым удостовериться, что программный продукт используется легально - при своем выполнении программное приложение осуществляет такую проверку и, в зависимости от ее результатов, производит те или иные действия: например, выводит сообщение об отсутствии электронного ключа и прекращает свою работу, либо переходит в демонстрационный режим работы. Такой метод часто используется производителями ПО для выпуска демо-версии своего программного продукта, для перевода в рабочий режим которого достаточно приобрести у производителя электронный ключ защиты Sentinel (HASP), содержащий лицензию на использование программного продукта или его модулей.

Еще одна замечательная возможность Sentinel LKD API - работа с данными в памяти электронных ключей Sentinel (HASP). Иначе говоря, во время работы приложения имеется возможность размещать в памяти электронного ключа какие-либо переменные, осуществлять проверку их наличия, производить над ними различные преобразования (в том числе и кодирование/декодирование этих переменных). Стоит отметить, что данная возможность реализуема только с ключами Sentinel HL (HASP HL) и Sentinel SL (HASP SL), имеющими встроенную память (для примера, с процедурой выбора аппаратных ключей Sentinel HL вы можете ознакомиться в этой статье).

Для облегчения знакомства с функционалом Sentinel Licensing API еще раз рекомендуем обратиться к, упомянутому выше, приложению Sentinel LDK ToolBox с помощью которого вы сможете провести тестирование определенных API функций и наглядно оценить их работу. Кроме того, после установки комплекта разработчика вам также будут доступны примеры по реализации тех или иных функций Sentinel Licensing API.

Дополнительные материалы: