Что такое кейген и где его найти. Кейген — что это? Генератор ключей. Физический взлом программы

Интервью с основателем одной из самых влиятельных (по мнению «Форбс») независимых бизнес-ассоциаций в России Владимиром Куропятником

Владимир, что привело Вас в Минск?

Наверное, моё большое желание когда-нибудь увидеть этот город! Столько хорошего о нём слышал, ещё со времён СССР, но только сейчас удалось мечту осуществить. Для этого пришлось стать экспертом в самой современной системе управления предприятием, создать сообщество бизнесменов-единомышленников, помочь десяткам компаний внедрить эту систему, и только после этого меня пригласили в Минск провести здесь семинар! Стандарты у вас высокие, ничего не скажешь!

Чему был посвящён семинар и для кого он проводился?

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

Вы сказали «технология управления Хаббарда». Не тот ли это Хаббард, который?..

Именно он! Американский философ и писатель, основоположник современной науки о разуме - Дианетики и создатель прикладной религиозной философии - Саентологии.

Но как это связано с технологией управления, с бизнесом? Неужели Хаббард был ещё и менеджером?

И ещё каким! Что произойдёт с 99% компаний, если босс уйдёт на год в отпуск? А Хаббард ушёл из этой жизни в 1986 году. Это не в отпуск на год! Тем не менее, сеть организаций, которую он создал по всему миру, не только не сократилась, а увеличилась за это время многократно. Сейчас насчитывается более 8000 саентологических организаций разных уровней, и действуют они в 165 странах. Причём, условия для работы у них далеко не тепличные. Видимо, Хаббард заложил что-то очень правильное в основу своих организаций. И это «что-то» не является секретом. Это как раз та самая технология управления, с которой познакомились участники семинара.

В чём особенность технологии управления Хаббарда? Почему она эффективна?

Эта технология основана на глубоком понимании человека и на законах развития групп. Это такие же законы, как и законы природы, как таблица умножения или таблица Менделеева. Хаббард вывел эти законы, занимаясь исследованиями сначала в Дианетике, а потом в Саентологии. Например, закон третьей стороны объясняет, как найти источник конфликта. Зная этот закон, можно улаживать конфликты и между людьми, и между государствами. В бизнес-ассоциации, которой я руководил, этот закон используется в процедуре улаживания споров между предпринимателями.

Кстати, что представляет собой ваша ассоциация и почему такое уважаемое издание как «Форбс» выделило её среди остальных?

Я в своё время действительно приложил руку к становлению ассоциации предпринимателей « WISE СНГ» и руководил ей больше десяти лет, но её основателем себя не считаю. Я был наёмным менеджером. Это международная ассоциация со штаб-квартирой в Лос-Анджелесе. Основана она в феврале 1979 года, основатель - Рон Хаббард. Задача этой ассоциации - объединить предпринимателей, которые используют в своих компаниях технологию управления Хаббарда, и помочь им в применении этой технологии. Интерес к этой ассоциации действительно растёт - и со стороны деловых изданий, и со стороны предпринимателей. Причина простая: WISE действительно может помочь. Причём там не решают за предпринимателя его проблемы, а делают его способным решить свои проблемы самостоятельно.

Есть ли примеры крупных предприятий, успешно применяющих технологию управления Хаббарда?

Большинство всемирно известных компаний используют принципы управления Хаббарда в той или иной степени. Не всегда их сотрудники даже знают об этом! Например, однажды мои друзья в Алматы сообщили мне, что устроились работать в крупную турецкую гостиницу и что там используется система управления Хаббарда. Я звоню генеральному менеджеру, трубку берёт его помощница (шеф был в отъезде). Спрашиваю её:

Вы использую технологию управления Хаббарда?

Нет.

А сколько у вас отделений на оргсхеме?

Семь.

Пятое отделение у вас - отделение Квалификации?

Да.

А систему трёх корзин вы используете?

Да.

И чья это технология управления?

Турецкая.

Мне было всё понятно! Я поблагодарил девушку, на том мы и распрощались.

Я видел благодарность от фирмы SONY консультанту WISE за один проект в США, который повлиял на всю их систему продаж. Другой мой знакомый консультант работал с «Бритиш Петролеум» в ЮАР в течение года, помогал им наладить систему управления. Многие крупнейшие фирмы в электронной промышленности обучают свой персонал по технологии обучения Хаббарда.

Система управления Хаббарда направлена на какую-то определенную отрасль экономики, или она универсальна, может ли случиться такое, что для какого-то определенного предприятия она не подойдет?

Я ещё не встречал предприятия, для которого система управления Хаббарда не подходила бы. Она успешно применяется и в детском саду и на крупном заводе. Везде работают люди и везде надо производить ценный продукт.

Бывали ли случаи, когда технология управления Хаббарда оказалась неэффективной?

Эта технология будет «неэффективной» в кавычках, если её умышленно искажают или просто не применяют. Как и любая технология, она требует строгого соблюдения. Если технология применяется правильно, то вы абсолютно точно можете сказать, что вы получите «на выходе», если знаете, что у вас «на входе». Например, эта система делает предприятие прозрачным. Бездельники, воры и те, кто приспособился ловить рыбу в мутной воде, становятся видны, как на ладони. Естественно, они будут всеми силами бороться с системой Хаббарда. Иногда такие люди имеют достаточно влияния в компании или на учредителя, чтобы не позволить внедрить эту систему в компании. Я наблюдал примеры, правда, крайне редко, когда им это удавалось, и наблюдал также другие примеры, когда учредитель оказывался на высоте и технология Хаббарда замечательно работала на его предприятии.

Насколько успешным становится бизнес, который использует идеи Хаббарда?

Технология управления Хаббарда - это не панацея, это всего лишь инструмент. Многое зависит от того, в чьих он руках. Человек разумный с помощью технологии Хаббарда может творить чудеса. А дурак может загубить даже самую лучшую идею.

Есть ли у Вас благодарные клиенты, которых вы спасли от разорения?

Они спасли себя от разорения сами, с помощью своего труда и упорства. Мы лишь помогли им воспользоваться передовой технологией управления. В числе таких предприятий - завод «Самарский стройфарфор», на котором работает более тысячи человек. В 1999 году этот завод был банкротом: огромные долги по налогам, по зарплате, изношенное за 60 лет оборудование. Его купил новый собственник и сразу же стал внедрять на нём технологию управления Хаббарда. К декабрю 2003 года завод уже был в тройке лидеров в своей отрасли, в 2006 о нём уже писал «Форбс» как о феномене в российской экономике.

Как вы лично познакомились с идеями Хаббарда и какое они произвели на Вас впечатление?

Первое моё знакомство было не с идеями, а с людьми. Об идеях Хаббарда я тогда ничего не знал, и это имя мне мало о чём говорило. Но люди, приверженцы этих идей, произвели на меня впечатление. Они были разными, но все они были успешными и все обладали качествами, которые мне лично нравятся в людях: уверенность, доброта, хорошее чувство юмора и настойчивость в достижении цели. От этих людей я узнал о Хаббарде и о том, где я могу пройти обучение, чтобы узнать больше о его технологии. Тогда, в начале девяностых, ближайшим таким местом был Копенгаген. Я туда съездил, прошёл несколько курсов (на английском, на русском тогда ещё ничего не было) и вернулся в Москву с большим желанием попробовать всё на практике. И вот когда я увидел, как технология Хаббарда работает в моих руках, какие результаты я могу получать, тогда у меня появилось собственное отношение к ней и собственное мнение. Оно для меня важнее мнений любых авторитетов и «экспертов».

Можно ли сказать, что технология управления Хаббарда является на сегодняшний день самой эффективной?

Насколько она «самая», судить, наверно, не мне. Технология управления Хаббарда - это РАБОТАЮЩАЯ технология. Она неизменно даёт ожидаемый результат, если технология не искажается. Здесь вы не получите сюрпризов или каких-то подводных камней. Это единственная известная мне система, где не надо что-то додумывать или изобретать заново. Вы берёте её как фундамент, внедряете основы с помощью программ WISE , а свою энергию и усилия направляете на дальнейшее развитие бизнеса. Ваше внимание теперь не поглощается огромным количеством проблем, которые надо решать в срочном порядке.

И что, проблемы исчезают?

Нет. Просто это уже становится не вашей заботой. Директор - это не решатель проблем! Кстати, на семинаре мы рассмотрели один совершенно гениальный инструмент повышения ответственности сотрудников. На любом предприятии его можно внедрить за неделю. Он называется «Законченная работа сотрудника». При его использовании сама ситуация, когда к вам приходит подчинённый, вываливает на вас проблему и ждёт от вас решения, в принципе невозможна!

Какое впечатление на вас произвела беларусская публика?

Замечательная публика! Возможно, чуть более сдержанная, чем в России. Но уж точно не менее компетентная! Мне было очень интересно общаться с вашими предпринимателями! Я всегда восхищаюсь людьми этой профессии.

Как вам Минск?

Потрясающий город! Очень красивый и «светлый». Видно, что минчане очень любят свой город. Нам, москвичам, есть чему у вас поучиться!

Кейген (keygen) - это особый вид нелегального программного обеспечения, которое генерирует ключи к различным платным программам, с помощью которых они становятся бесплатными. Как видно из функциональности кейгенов, использование их является незаконным, поэтому применять их надо на свой страх и риск.

Пользоваться кейгенами достаточно легко, плюс ко всему они не занимают много места. Чтобы воспользоваться любым из них, достаточно запустить его и нажать кнопку «Generate» или «Генерировать». Получившийся код надо скопировать и вставить при регистрации программы.

Риски при использовании кейгенов

Как правило кейгены распространяются , вместе с тем программным обеспечением, к которому они предназначены. Они написаны с помощью алгоритмов, которые аналогичны тем, что используются при создании вирусов и троянов. По этой причине многие из них определяются антивирусными программами как вредоносные. Зачастую это и вправду так.

Использование кейгенов, чаще всего, является уголовно наказуемым преступлением из-за нарушения авторских прав при использовании платного программного обеспечения. Сами разработчики платных программ понимают, что любой человек попытается бесплатно использовать плоды их трудов. Поэтому они осознанно борются с этим с помощью сложных алгоритмов генерации лицензионных ключей, созданием баз легальных и нелегальных пользователей, взаимодействием с разработчиками антивирусных программ и многое другое.

Однако Россия из года в год занимает первое место по использованию нелицензионного программного обеспечения. Связано это с тем, что стоимость многих из них является немалой. К этому стоит прибавить и неотработанное правоприменение в отношении нарушителей авторских прав при использовании лицензионных продуктов. Чаще всего кейгены выпускаются к таким популярным платным программам, как офисные пакеты от Microsoft, операционные системы семейства Windows, программы распознавания текстов (например, Abbyy"s FineReader) и графические редакторы (Adobe Photoshop).

Лицензионные кейгены

Некоторые разработчики программного обеспечения (чаще всего антивирусов) сами создают кейгены для своих продуктов. Чаще всего они одноразовые, и внутри них заложены сложные алгоритмы генерации кодов, поэтому хакерам будет крайне тяжело работать с ними. Утяжеляет жизнь «черным программистам» и тот факт, что разработчики стараются как можно чаще менять алгоритмы, для каждой версии одной и той же программы он свой.

Disclaimer: всё ниженаписанное написано исключительно с просветительскими и исследовательскими целями, а также понимания механизмов защиты от взлома. Автор ни в коем случае не рекомендует использовать данную информацию для взлома программ.

В данной статье я хочу рассказать про три с половиной основных способа взлома программ на.NET, цель, которую я преследую - помочь разработчикам лучше понять механизмы защиты своих программ, т.е. выяснить наиболее очевидные угрозы и предпринять соответствующие меры (или не принимать).

Я не буду углубляться в детали и использовать сложные инструменты для взлома. Всё будет расписано «для чайников», т.е. все инструменты будут простыми, легкодоступными и бесплатными. А основным будет Reflector , декомпилятор программ под.NET

В качестве подопытного кролика я выбрал Expresso - анализатор регулярных выражений. Данная программа бесплатная, в лицензии вроде бы ничего не указано про взлом, но при этом без регистрации она будет работать всего 60 дней. Другими словами, вред от взлома данной программы минимальный, к тому же внутреннее её устройство очень уж хорошо подходит для тренировки. Буду надеяться, что автор данной программы не обидится на меня.


Для начала краткий ликбез по структуре.NET программы, для тех кто не знаком с разработкой под данный Framework: весь код, написанный на любом.NET языке (C#, Visual Basic, F#, Delphi.NET) компилируется в особый Intermediate Language, называемый обычно IL или MSIL . Это что-то типа ассемблера, только весьма умного и обладающего весьма мощными инструкциями. И это, в принципе, такой же равноправный язык как и C#, только синтаксис похуже (а возможности больше). Кроме того, в программе на.NET активно используются метаданные, т.е. вся информация о классах, метода, пропертях, атрибутах и всём остальном сохранена в исполняемом файле.
Т.е. на самом деле, декомпиляция программы не очень верное понятие в данном случае. Она и так вся в открытом виде лежит, а инструменты в виде Reflector"а занимаются тем, что приводят конструкции MSIL к соответствующим конструкциям C# или другого языка, повышая читабельность кода.

Перейдём, собственно, к взлому.

0. Обнуление триала

Собственно, это даже не взлом, а полулегальный способ продлить срок использования неактивированной программы. Заключается он в том, что находится место, где хранится дата первого запуска и меняется/уничтожается. После этого всё можно пользоваться программой до следующего срока.

Посмотрим на нашего подопытного рефлектором:
Немного погуляв по коду, находим интересную строчку в конструкторе MainForm


Открываем редактор реестра, идём в HKEY_CURRENT_USER\Software\Ultrapico\Expresso и видим следующие ключи:


Удаляем их и получаем ещё 60 дней работы.

Данный вариант, конечно, прост и очевиден, но если он даже был бы сложнее - потребовалось бы чуть больше времени провести в рефлекторе, чтобы выяснить все места, куда пишется информация и зачистить их.

Совет разработчикам, которые будут пытаться записать данные в потаённое место: пишите аккуратнее, а то всё может обернуться проблемами обычным пользователям, у которых почему-то не окажется данного места, или не хватит на него прав.

1. Написание keygen"а

Самый ужасный для разработчика вариант, и самый приятный для конечного злобного пользователя. Программа считает себя лицензионной, никаких страшных телодвижений не нужно делать.

Открываем рефлектор и ищем код на предмет классов содержащих License или Registration, видим:

При вводе имени и кода по имени вычисляется некий хеш, который и сравнивается с кодом.


Данный хеш использует DES и всякие префиксы


Байты конвертятся в строку с помощью данного метода.

Теперь всё выяснилось, открываем IDE и копируем все необходимые куски кода (или сами реализовываем). Осталось только выяснить, какие значения у Prefix, Suffix и параметры реализации MyDES. Я их приводить не буду, это уже технические детали.

В результате генерируем ключ на любое имя и видим:


Бинго!

Защита от кейгенов проста и очевида: использовать в каком либо виде ассиметричное шифрование. Т.е. сделать так, чтобы без знания приватного ключа сгенерировать код было бы невозможно, а данный ключ находится только в одном месте - у автора программы.

2. Использование враппера

Проверка корректности лицензии, достаточно хлопотное дело, и небыстрое. Поэтому разработчики программ обычно проверяют лицензию один раз, и дальше используют полученный флажок - валидна/невалидна (как вариант насколько валидна, если допускается несколько типов лицензии, отличающихся возможностями). Тут можно на этом сыграть, использовав следующий алгоритм:
  1. Указать программе, что лицензия уже проверена
  2. Указать программе, что лицензия корректна
Как это сделать? Я уже упоминал о наличии метаданных в исполняемых файлах в начале, этим и воспользуемся. Посмотрим как запускается программа и как проверяется лицензия:


С запуском ничего интересного, а в проверке видно, что если уже программа зарегистрирована, то она считает, что всё хорошо и не делает дальнейшую работы по выяснению корректности лицензии.

Воспользуемся этим:
Сделаем новый проект, добавим Reference на Expresso.exe и запустим его через себя:


Смотрим, что получилось:


Ну кто бы сомневался.

В данном случае всё оказалось просто, но если бы автор программы заменил публичные свойства на приватные, то всего-лишь пришлось бы использовать Reflection для доступа и всё бы свелось к исходной задаче.

Думаю понятно, как можно пробовать защититься от этого - проверять лицензию периодически, смотреть окружение из которого запущена программа, сделать невозможным установку нужной переменной.

Но все эти защиты приведут к тому, что злоумышленник будет использовать

3. Физический взлом программы

Тут уже всё серьёзно. Программа целиком декомилируется в MSIL а из него уже собирается обратно (помните, я писал, что MSIL это такой же язык как и C#?). Для декомпиляции нам понадобится утилита из SDK под названием ildasm , а для компиляции компилятор из.NET Framework ilasm .

Запускаем ildasm, открываем Expresso.exe и сохраняем дамп в.il файл. Находим уже рассмотренный метод IsRegistered и добавляем немножко своего кода (без меток):

Потом берём ilasm и собираем всё назад (не забыв подключить ресурсы).

Что делает данный код: устанавливает нужное имя для регистрации (не обязательно), и возвращает статус, что всё хорошо.
Чтобы было понятнее, так это выглядит в рефлекторе, в C#

Т.е. вполне очевидно, что теперь всё будет хорошо:

Немного про код в MSIL: это стековая машина, у которой нет регистров, все операции имеют вид: засунуть в стек нужное количество параметров, выполнить функцию, которая заберёт нужное количество параметров и положит результат. Ну и обратно: установить значение переменной тем, что лежит в стеке. Чтобы лучше понять работу всего этого рекомендую простой приём: пишите маленькую программу на привычном языке, компилируете, смотрите что получилось в MSILe и разбираетесь в конструкциях языка.
При этом некоторые вещи в MSIL можно сделать очень красиво, например поменять две переменные местами - 4 симпатичных строчки (на C# меньше, но некрасиво).

Чем жертвует злоумышленник: подписью программы, теперь она уже не автора, а его. В некоторых случаях это проблема, если в программе используется множество библиотек. Тогда злобному хакеру придётся разбирать их все и собирать их заново, но если он с этим справится, то у него будет «своя» версия программы подписанная его ключом.

Защиты от всего этого безобразия собственно немного: проводить обфускацию или выносить часть логики/проверки защиты в нативный код.

Заключение

Думаю я рассказал, как просто всё можно разломать на.NET, если создатель не приложил усилий для защиты своей программы. А вы уж решайте, стоит ли делать защиту и тратить на это время и ресурсы. А может просто сделать web-систему, или же бесплатную ограниченную версию. Решать разработчикам.

Менее десяти лет назад без оригинальных дисков приобрести лицензионную игру или программу было почти невозможно. Ведь тогда рынок переполняла некачественная пиратская продукция.


Теперь же, с приходом Интернета, дела обстоят совсем по-другому. Для скачивания лицензионного софта, нужно приобрести, так называемый, ключ и использовать его на официальном сайте. После того, как в системе будет произведена онлайн-проверка ключа, пользователю разрешат скачать софт.

В настоящее время лицензионный софт стал доступен всем желающим, но не смотря на это, многие не хотят за него платить. Чтобы обойти защитную систему, интернет-юзеры пользуются различными программами, одной из которых является – кейген.

Как она работает?

Об этом Вы узнаете в данной статье. Несколько слов о легальности. Нельзя не сказать о юридической стороне вопроса. Ведь кейгены причисляют к программам для взлома и используют незаконно. Существуют авторские права, запрещающие обходить технические средства защиты. В Америке в 1998 году издали закон об авторских правах. В России такой указ вышел только в 2008 году.

Немного подробнее о программах «кеген». Принцип их работы и как их используют.
Сегодня существует большое разнообразие трудно понятных компьютерных терминов. Одним из таких является – «кейген». Каков принцип его работы и где его можно скачать?

В переводе с английского языка, слово — key generator звучит, как «генератор ключей». Такие программы создают криптографические ключи, чтобы расшифровать данные. Очень часто кейгены применяют для генерации псевдоподлинных ключей, чтобы активировать антивирусы, лицензионные игры и другое программное обеспечение.

Чтобы разобраться, как работают кейгены, нужно детальнее ознакомиться с процессом активации ключа. Обычно код вводят при установке. И чтобы его проверить используют Инсталлятор – программу установщик, которая производит алгебраическое вычисление. К примеру, у нас есть ключ, состоящий из 5 чисел и 3 букв. Вначале алгоритм определяет — правильно ли введены цифры. Для этого инсталлятор плюсует числа. В нашем случае, их сумма должна равняться значению, обозначенном в алгоритме.

Точно так же делают и с буквами, имеющими собственные числовые эквиваленты. С помощью алгоритма литеры переводятся в числа и плюсуются. Так их проверяют на подлинность. На первый взгляд данная система может показаться неприступной и напоминать средневековый замок. Однако все гораздо проще, и алгоритм инсталлятора узнается очень легко.

Люди, которые пользуются данными методами, называются крэкерами. Используя дизассемблеры (специальные программы) они находят исходный код. А получив к нему доступ, находят функцию, которая отвечает за проверку подлинности этого ключа. Зная принцип работы функции, крэкер может написать алгоритм, подбирающий рабочие ключи.

В недавнем прошлом кейгены использовались, чтобы обходить защитные системы. В качестве примера можно взять компанию Alawar. В свое время она испытывала огромные убытки. А все по тому, что многие пользователи прибегали к кейгенам. На сегодняшний день ситуация выглядит по-другому. Теперь генераторы ключей не являются актуальными в той степени, как это было совсем недавно. Сегодня коды активации проходят через Интернет и присоединяются к аккаунтам пользователей.

Что такое – кейген для игр?

Многие любители игр не желают вести денежные растраты на играх, поэтому и пытаются найти для игр генератор ключей от Steam и Origin. Но, увы. Это сделать не возможно, так как таких кейгенов нет. Все потому, что данные сервисы ключи привязывают к аккаунтам. Поэтому активация кодов по два раза не может произойти.

Кроме того, каждая игра Steam и Origin имеет свою функцию, которую не получиться разгадать ввиду того, что программный код закрыт. Если же Вы, все таки, нашли кейген для Ориджина и Стима, не спешите радоваться. Чаще всего это бывает обманом так как в данном случае кейген будет являться обычным стилером или вирусом, перехватывающим Ваши данные. А Вы потеряете не только Origin и Steam – аккаунт, а так же собственную страницу в социальных сетях. Чтобы этого с Вами не произошло не следует скачивать файлы с подозрительных и непроверенных ресурсов.

Известно, что халява слаще сахара. Поэтому желание попользоваться бесплатно теми программами, за которые другие платят деньги (и не малые) легко понять. Не менее понятно и желание производителей программ сделать так, чтобы пользователи оплачивали их нелегкий труд и покупали программы, а не копировали их друг у друга бесплатно.

Первый способ, который придумали разработчики для защиты своих программ от несанкционированного копирования, было использование регистрационного ключа. Регистрационный ключ представляет собой набор цифр и букв длиной от 10 до 30 символов. Он необходим для того, чтобы подтвердить уникальность устанавливаемой копии программы. Чаще всего регистрационный ключ писался на упаковке или же в руководстве по устанавливаемой программе.

В процессе установки программы в определенный момент запрашивался регистрационный ключ. После ввода ключа программа проверяла этот ключ на соответствие, и если он был введен правильно, процесс установки программы продолжался. Если был введен неправильный ключ, установка программы прерывалась. Таким образом, просто скопировать программу было недостаточно, следовало еще знать ее регистрационный ключ.

Регистрационные ключи генерировались по определенному алгоритму. В подробности этого алгоритма я входить не буду. Во-первых, таких алгоритмов много, а во-вторых, они достаточно сложные. Для тех, кто заинтересуется и пожелает овладеть этими «тайными знаниями», скажу «волшебное слово», по которому можно отыскать в Интернете подробности. Это слово – «хеширование» (или «хэширование») которое по-английски пишется «hashing». Алгоритм хеширование позволяет преобразовать некоторый массив данных в строку, состоящую из символов, имеющую другой, как правило, меньший, размер. Таким образом, регистрационный номер несет в себе много информации о программе, включая номер версии. Поэтому, например, регистрационные ключи для ранних версий программы не подходили для ее более поздних версий.

Первый вариант обхода регистрационного ключа был очевиден: попросить верный ключ у кого-нибудь, кто уже купил эту программу. Надо сказать, что знакомые почти никогда не отказывали в этой «благородной» просьбе: помочь украсть программное обеспечение. К тому же в Интернете было довольно много добрых душ, которые помещали в открытый доступ регистрационные ключи популярных программ, а иногда даже заводили для этой цели специальные базы данных.

Надо сказать, что разработчики программ, тоже имели доступ к Интернету. Чаще всего они изменяли алгоритм проверки регистрационного ключа так, чтобы он отсеивал «паленые» значения. Так что через некоторое время чужие ключи переставали подходить к твоему замочку.

Второй вариант обхода регистрационного ключа состоял в том, чтобы узнать алгоритм проверки регистрационного ключа и написать программу, которая генерировала бы символьные последовательности, проходящие эту проверку. Делается это с помощью «обратной инженерии» (или по-английски, «reverse engineering»). Это еще одно «волшебное слово» для тех, кто желает поподробнее ознакомиться с этим полукриминальным ремеслом.

Как происходит обратная инженерия? Чаще всего с помощью программы-дизассемблера программист генерирует код «взламываемой» программы в виде текста на машинном языке, ассемблере. Просмотрев такой текст, можно обнаружить функцию, ответственную за подтверждение подлинности регистрационного ключа. А разобравшись, как эта функция работает, можно написать свою программу, которая будет выдавать последовательности регистрационных ключей, расцениваемых проверяющей программой, как правильные. Подобные маленькие программы называются генераторами ключей или по-английски «key generator». Чаще всего генераторы ключей называют сокращенно, «keygen». По-русски это слово произносится и как «киджин», и как «кейген», и как «киген».

Лет пятнадцать-двадцать назад генераторы ключей были очень популярны. Сейчас их популярность постепенно сходит на нет. В чем причина?

Во-первых, создатели программ придумали более хитрые приемы защиты. Кроме усложнения проверочных функций и маскировки их положения в программе установки, многие фирмы, особенно крупные, стали требовать подтверждения регистрации в своих региональных отделениях. Теперь только после подтверждения, чаще всего по телефону, Вы получаете ключ, который «откроет» программу установки. Это похоже на отель, в котором дверь Вам открывает портье, знающий, зарегистрированы ли Вы именно в этом отеле..

Во-вторых, с развитием Интернета проверочные модули программ стали напрямую связываться с фирменным сервером, на котором ведется база данных зарегистрированных программ и автоматически регистрироваться на этом сервере. Такую автоматическую регистрацию через Сеть подделать стало труднее. По крайней мере, генераторы ключей здесь бесполезны. Подобным образом происходит регистрация Windows, начиная с версии 7. Поэтому «выцарапывать» из Интернета «взломанную» версию этой операционной системы не стоит. Только проблемы наживете. Тем более, наконец, Windows и стоить стали не бешеные деньги. В настоящее время Windows 7 вполне стоит тех денег, которые Вы за нее платите, освобождая простого пользователя от массы забот с операционной системой. Наконец-то Вы можете думать о работе, а не о системных проблемах!

В-третьих, генераторы ключей очень часто не столько генерировали ключи для взлома чужих программ, сколько заражали компьютеры своих пользователей вирусами и «троянскими» программами, чтобы затем взломать эти компьютеры. Вот уж воистину, с кем поведешься, от того и наберешься.

И, наконец, в-четвертых, оказалось, что для продуктивной работы с компьютером не нужно много программ. И, в дополнение к этому, многие профессиональные программы получили достойные бесплатные аналоги. Например, вместо дорогого Adobe Photoshop можно использовать бесплатный графический редактор GIMP практически с теми же возможностями. Для просмотра Интернета есть несколько бесплатных прекрасных браузеров, а пакет программ Open Office работает ничуть не хуже Microsoft Office. Так что быть честным вполне стоит.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: