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

UptoLike

23
4.3. Недостаток повторяющихся схем
Повторяющаяся в программном коде схема легко отслеживается. После
того, как вашу схему распознали, ее будет легко найти и взломать в любой
части программного кода.
Кроме того, если ваше приложение содержит большое количество
исполняемых файлов и библиотек, то следует использовать разные схемы
защиты для этих файлов.
Используйте
как можно больше сервисов HASP, вызывая каждый из
них повторно; применяйте различные схемы защиты при каждом вызове. Для
защиты исполняемых файлов используйте HASP Envelope. В HASP Envelope
применяется технология Multilayer Envelope, которая реализует сочетания
различных схем защиты для каждого исполняемого файла.
Отсутствие повторяющихся схем защиты осложнит попытку взлома.
Поиск и взлом вызова HASP должен представлять собой каждый раз
новую
задачу.
4.4. Разделение шагов вызова
Проверка HASP подразумевает выполнение трех шагов:
1. Вызов процедуры hasp().
2. Оценка значений, полученных от защитной процедуры.
3. Ответ в зависимости от полученных значений.
Для повышения безопасности можно поместить каждый из этих шагов
в различные места программного кода приложения. Разделенные шаги гораздо
сложнее отследить, чем последовательные. Последовательность действий на
то,
что HASP не присоединен, должна слегка задерживаться по времени, что будет
являться полной неожиданностью для взломщика.
Например, можно увязать проверку на наличие присоединенного ключа
HASP с выбором того или иного пункта меню. Позвольте пользователю
некоторое время осуществлять действия, даже если ключ не присоединен.
Сделайте так, чтобы сообщение «HASP не найден» появилось через
некоторое время после операции, т.е. чтобы связь между первоначальной
проверкой наличия HASP и реакцией на ее результаты была неочевидной.
4.5. Шифрование памяти HASP
В дополнение к защите, обеспечиваемой чипом ASIC, можно
обезопасить память HASP при помощи ее шифрования.
Например, для шифрования памяти ключа HASP в качестве ключа
шифрования можно использовать уникальный ID-номер устройства. Убедитесь
в
том, что в процессе работы память при помощи ID-номера расшифровывается.