Методическое пособие по изучению методов защиты программного обеспечения с использованием аппаратных ключей HASP4 по курсу "Программно-аппаратные средства защиты информации". Бабенко Л.К - 6 стр.

UptoLike

6
1. ОСНОВНЫЕ КОНЦЕПЦИИ ЗАЩИТЫ ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ С ИСПОЛЬЗОВАНИЕМ HASP4
Во время своей работы защищаемое программное обеспечение
запрашивает HASP, подключенный к компьютеру. Если HASP возвращает ответ
с использованием корректного алгоритма, то приложение исполняется. В
противном случае приложение не загружается, либо может переключиться в
демонстрационный режим, закрыть свои основные возможности и т.п.
Механизм защиты HASP
приведен на рис.1.
Такой тип защит основывается на присутствии корректного ключа
HASP в системе. Ключ HASP содержит информацию, специфичную для автора
программного обеспечения.
Присутствие корректного ключа может быть проверено следующими
методами:
1. С использованием механизма шифрования, основывающегося на
присутствии ключа.
2. Проверкой специфичного для ключа ID-номера.
3. С использованием функций памяти ключа.
Механизм
шифрования данных
При заказе ключей в компании Aladdin разработчик получает ключи со
встроенной информацией о нем. Эта информация используется для того, чтобы
отличать его ключи от ключей других разработчиков.
Код разработчикаэто уникальный код, который компания Aladdin
присваивает каждому разработчику ПО. Этот код прожигается на чипе ASIC,
чтобы не допустить декомпиляции. Таким образом, повышается степень
защищенности приложений. При заказе дополнительных партий ключей
используется тот же код разработчика, что и ранее.
Пароли HASPэто два целых числа, которые присваиваются каждому
разработчику. Пароль базируется на коде разработчика. Такой пароль позволяет
быть уверенным, что только разработчик сможет получить доступ к функциям
HASP.
Прежде чем метод шифрования данных может
быть применен,
необходимо сделать некоторые подготовительные шаги.
Сначала необходимо зашифровать данные, корректность
расшифрования которых будет проверяться. Данные могут быть зашифрованы
как с использованием утилиты HASP Edit, так и с использованием HASP API.
Зашифрованные данные являются функцией уникального кода разработчика и
данных защищаемого приложения. Таким образом, шифрование одной и той же
строки ключами разных разработчиков приведет
к разным результатам.
Затем в процессе работы защищаемого приложения эти зашифрованные
данные должны быть расшифрованы HASP с использованием сервиса