О возможности использования программы Enigma Protector (http://www.enigmaprotector.com/ru) для защиты программ, торгующих на рынке Forex. Появилось несколько свободных минут от написания пособия по Forefront TMG и занятий с дочками, правда, пришлось для этого встать часа на полтора раньше, чем обычно. Но, это к делу не относится.
Регистрация с привязкой к аппаратной части при использовании Enigma Protector выполняется просто.
Расписываю по шагам:
1)Создаем новый проект. Я экспериментировал с файлом test.exe. Указываю исходный файл и имя защищаемого файла test_protected.exe
2)Указываю, что буду использовать аппаратную защиту и то, какие составляющие аппаратной части будут проверяться
3)Защищаю файл и передаю защищенный файл test_protected.exe покупателю.
4)Покупатель запускает файл на своем компьютере. У одного будет код 42AB-D7A9-1DE5-A6CD, а у другого совсем другой, т.к. аппаратная часть разная. Этот код пользователь пересылает мне для регистрации.
5)Использую мастер лицензий. Помещаю присланный код и задаю идентификатор покупателя (в примере AIV). Генерирую ответную последовательность-ключ. Отсылаю пару идентификатор покупателя (в примере AIV) и ключ покупателю.
6)Покупатель указывает пару и регистрирует программу.
Собственно, на этом все. Функционал программы позволяет сохранять информацию о выданных лицензиях в удобной форме и т.д. и т.п. Дополнительные возможности – число запусков, привязка к дате до которой работает и пр.
Результаты тестирования защиты с DLL вполне удовлетворительны. Библиотека защищается, защищенная программа работает. Ниже результат защиты реальной библиотеки. В качестве кролика для тестов взял файл Progressor_v12.dll от советника Progressor v12. Защита родная у него элементарная. Запрашивается у пользователя значение переменной extern int KEY, которое передается в функцию из библиотеки в месте с номером счета. От номера счета вычисляется некая последовательность, которая должна совпадать с key. Подход к установки защиты типовой, ломается элементарно и как всем известно, поэтому не буду останавливаться тут на этом. Так вот, защиту советника с dll можно усилить с помощью рассматриваемой программы (Enigma Protector). Ниже отчет с последовательностью действий.
Четыре скриншота пронумерованы.
Замечу, что, во-первых, если уже есть навесная защита (типа HASP Envelop), то вариант кокон в коконе лучше не использовать, а если используете то тестируйте тщательно, так как у покупателей с разными конфигурациями оборудования могут возникнуть проблемы и программа будет падать. Во-вторых, аппаратная система защиты типа HASP HL намного надежнее, хотя за аппаратный ключ надо выложить от $15-20, плюс расходы на доставку ключа пользователю. Что-то не вижу я на рынке программ для Форекс стабильно работающих советников, которые приносят прибыль, а потому спрос на аппаратную защиту для Форекс советников нулевой. Дальше программного ключа HASP SL продавцы не идут.
Достаточно интересен вариант организации защиты, основанный на использовании постоянно работающего в сети Интернет сервера лицензий и возможность задействовать в процессе обработки скрипты для Windows, но это тема отдельного достаточно большого разговора. Вероятно к ней вернусь через некоторое время, так как один из заказчиков хочет видеть защиту построенную именно на режиме онлайн контроля на подчиненном ему сервере (или серверах для большей надежности) в сети Интернет.