Традиционно считается, что защита программ — удел матерых профессионалов: мол, новичку в этой области компьютерного творчества делать нечего. Разобраться со всеми тонкостями он не сможет, а посему, все его попытки сделать что-то стоящее — обречены. Основными критериями качества защиты являются ее алгоритмическая сложность и уникальность, и кто, как не человек, обладающий многолетним опытом «антихакинга», способен создать шедевр, не похожий ни на что другое?
Важно, чтобы это творение по достоинству оценили те, кто попытается его сломать. Тут уж, как ни крути, а чем больше плача и стенаний мы увидим на хакерских форумах, тем круче и защита, а, стало быть, и круче программист. Однако при нынешних объемах производства ПО профессионалов на всех не хватает. Многие из тех, кто позиционирует себя, как гуру защиты, в конечном итоге дают результат, ничуть не лучший, чем у новичка, использовавшего автоматические средства. Почему так?
Во-первых, потому что количество надежных приемов защиты не так уж велико. Все они хорошо известны хакерам, как и способы борьбы с ними. Большинство средств защиты используют как раз эти приемы, и со временем появляются универсальные средства их нейтрализации.
Во-вторых: фантазия программиста небезгранична. Встраивание надежной защиты в программу — процесс сугубо творческий, трудоемкий и дорогой. Создавать уникальные шедевры в промышленных количествах, требуемых современному рынку ПО, не под силу даже гениям.
Возникает вопрос: что делать тем, кому не хватило талантливых специалистов? Ответ: обратить внимание на автоматические средства. Инструменты, создаваемые в компании «Актив» в последнее время, становятся все более доступными для понимания широкому кругу людей. Наряду с разработчиками, ими смогут пользоваться и менеджеры, для которых важнее лицензионная политика, а не тонкости процесса защиты.
В новых утилитах достаточно будет только указать желаемый уровень защищенности и определить лицензионные ограничения, налагаемые на программу. Далее автоматика сама позаботится о расстановке опций для каждого модуля.
Помимо экономии времени и нервов, пользователь получит возможность ясно увидеть структуру выпускаемого продукта. Сложный многомодульный пакет или самостоятельные утилиты, всевозможные комплектации для разных клиентов, все это будет защищено одним щелчком мыши, после чего будет готово к распространению. Понадобится несколько минут, чтобы адаптировать продукт под текущие требования рынка в целом или капризы отдельного заказчика.
Кроме того, четкое представление конечного результата всеми участниками проекта поможет избежать некоторых производственных конфликтов, нередко возникающих между маркетологами и разработчиками.