Защита от взлома при активации лицензионных ключей работает на основе подтверждения подлинности ключа при установке и запуске программы. 4
Некоторые способы, как это происходит:
- Проверка генерации ключа. 1 Программа может проверять, что ключ был сгенерирован по специальному алгоритму, известному ей. 1 Если это не так, работа блокируется. 1 Однако такой способ ненадёжен, так как ключ может быть украден и использован на другом компьютере. 1
- Обратная связь с разработчиком. 1 Пользователь сообщает разработчику ключ и дополнительную информацию о себе, а разработчик на основе этих сведений решает, разрешить ли программе работать. 1 Такой способ лучше защищён от кражи ключа, так как разработчик может контролировать количество активаций. 1
- Использование сервера лицензий. 1 Программа регулярно обращается к серверу лицензий, чтобы получить от него свежий код активации. 1 На сервер передаётся ключ и идентификатор оборудования. 1 Если попытка была неудачной, то ничего не происходит. 1 В случае успеха свежий код активации записывается в постоянное хранилище. 1 Для злоумышленника он не представляет интереса, так как код активации зависит от идентификатора оборудования, который будет у злоумышленника другим. 1
- Шифрование кода. 4 Защита исходного кода от изменений препятствует созданию «ломанных» версий ПО. 4
Кроме того, для защиты от несанкционированного использования ПО могут использоваться аппаратные ключи. 3 Технология построена на реализации запросов из исполняемого файла или динамической библиотеки к ключу с последующим получением и, если предусмотрено, анализом ответа. 3