Защита программного обеспечения от пиратства с помощью драйверов HASP работает следующим образом: 14
- Аппаратный ключ HASP присоединяется к определённому порту компьютера. 1
- Защищённая программа через специальный драйвер отправляет ему информацию. 1 Она обрабатывается в соответствии с заданным алгоритмом и возвращается обратно. 1
- Когда пользователь запускает защищённую программу, она проверяет наличие подключённого HASP-ключа. 4 Если ключ обнаружен и его данные совпадают с ожидаемыми, программа продолжает работу. 4 Если же ключ отсутствует или данные неверны, доступ блокируется. 4
Есть два механизма защиты в системе HASP: 1
- HASP Envelope. 1 Применяется для уже готовых программ. 1 Нужно запустить специальную утилиту HASP Envelope, выбрать нужные исполняемые файлы, настроить параметры защиты и нажать на кнопку Protect. 1 После этого утилита обработает указанные файлы, закодирует их и встроит специальные антиотладочные и антитрассировочные средства. 1 Если во время запуска приложения к компьютеру подключён нужный ключ, расшифровка файлов происходит автоматически. 1
- HASP API. 1 Разработчики в любом месте своего приложения могут обращаться к ключу с помощью специальных функций API. 1 Результаты этих обращений маскируются в теле программы или библиотеке DLL. 1 Таким образом можно реализовать полный цикл работы с ключом — например, проверить его наличие, прочитать или изменить содержимое памяти EEPROM, получить его ID-номер и так далее. 1 Использование этого механизма защиты требует внесения изменений в исходный код программы. 1
Надёжность защиты во многом зависит от качества работы разработчиков приложения. 1