Периодически получаю письма примерно такого содержания “Сможете обучить, как создать ключеделки и вскрывать dll.”. Получив несколько подобных обращений решил, что пришло время написать небольшой комментарий по теме.
В dll библиотеках находятся процедуры и функции, которые может вызывать основная программа, обращающаяся к dll. О том, как создать dll, например, на Delphi, я рассказываю, когда читаю курсы по программированию. Dll фактически часть программы и в dll могут размещаться функции отвечающие, в том числе, и за механизм обеспечения защиты. Например, есть функция xyz(acc,key), возвращающая 0 для определенной пары acc – номер счета, а key – регистрационный код и другое значение, например, 1, если код регистрации не верен. Метод взлома может заключаться в том, чтобы изменить код dll’ки чтобы она всегда возвращала 0. Достаточно сложный и долгий метод обучения. Требует навыков, знаний и не всегда возможен гарантированный результат после долгого копания в коде. Мне этот метод не нравится еще и тем, что вносятся исправления в чужой код. Второй метод более прост и быстр, хотя не всегда дает желаемый результат, если программные мощности ограниченны. Особенно хорош этот метод для получения кода регистрации для торговых программ-советников, ориентированных на торговлю на Forex с использованием ПО MT4 (Metaterminal ver. 4.0).
Типовая схема: откомпилированный код основной программы в ex4, функции защиты и часть функционала в dll. Я не занимаюсь декомпиляцией полностью ex4 программы, но мне известно, как быстро и просто получить информацию о том, какая библиотека вызывается (имя), сколько в ней функций и какие у них параметры. После этого, зная какая функция отвечает за проверку, пишу обращение к этой функции, вызывая dll из своей программы, разработанной на Delphi. Параметры варьируется определенным образом, для заданного номера счета получаю код регистрации. Перебор и подключение выполнены на основе программы-шаблона, настраиваемой на конкретную библиотеку. При желании этот шаблон можно оформить, как “ключеделку”. Рассказать, как это делается, если хотя бы немного знаете pascal (Delphi), примерно минут 45. Заготовку-шаблон даю, конкретный пример рассматриваем. Далее трудитесь сами по аналогии.
Вторая, опциональная, часть еще примерно на час. Если все так примитивно и можно достаточно просто подобрать код, то, как защищать программы, в том числе dll? Я рассказываю о том, как построить защиту, основанную на использовании программно-аппаратных ключей HASP HL и HASP SL.
Эффективнее всего обучение по схеме – получаете материалы от меня и обсуждаем тему в скайпе. Возможно только получить материалы, но это менее эффективно. Консультации по электронной почте даю, но они менее подробные.
Итого:
Обучение по следующему плану.
1) Подбор кода активации для типичной защиты ex4 + dll. Использование программы -декомпилятора для получения имен вызываемых функций и их параметров. Подключение dll библиотеки к программе на Delphi для подбора кода активации — 500 WMR.
2) Усовершенствование технологии защиты dll библиотек с использованием аппаратных ключей HASP HL и программных HASP SL – 500 WMR.
Оплата возможна сразу за два пункта или по отдельности.
* * *
На другую тему. Выделите себе немного времени и научитесь правильной раскрутке сайта визитки. Сайты-визитки в настоящее время очень распространены, сделать сайт визитку самому достаточно просто, а еще проще заказать сайт визитку у профессионалам по вполне доступным ценам. Однако, можно заметить, что посещаемость сайтов визиток разная. Если посещаемость небольшая, то эффект о создания сайта стремится к нулю. Важно не просто создать привлекательный сайт, но и раскрутить его, поэтому смотрите ссылку.