Здравствуйте, PolyTech, Вы писали:
I>Вы путаете защиту и систему лицензирования.
Я их не путаю, я их перемешиваю. В коде.
CEM>>Самописной защитой на основе асимметричных ключей можно защитить утилиту за 25$ самому запросто.
PT>Система лицензирования и защита это разные вещи. После того как вы напишете свою систему лицензирования опять встанет вопрос "а как теперь её защитить?".
Да, само собой.
Но дело в том, что это, как бы, два уровня защиты.
Для честных людей и для нечестных.
Для честных людей — лицензии. Если ты простой честный человек — у тебя один путь — купить ключик.
Теперь про нечестных. Им закон не писан. Они могут влезть в код и что-то там сделать. А потом ещё всем раздать (со своими троянами... но это уже детали...

)
Если они патчат защиту, то патч перед работой смотрит сигнатуру кода, иначе можно просто зарубить весь код. Соответственно патч работатет только на ОДНОМ нашем билде.
Кейгену же, если его удалось сделать, пофиг на код. Он работает на ВСЕХ версиях, вне зависимости от билда.
Далее. Момент пересечения нечестных и честных людей, которых в разы больше

Если честный человек хочет программу нечестным путём, то он идёт за патчем. И после каждого нового билда он ищет соответствующий патч. Что весьма проблемно, при правильной тактике шароварщика — частом выпуске новых версий, даже просто перебилд с изменёнными стабами.
Если же честный человек находит кейген, то он просто получает ключ, и все апдейты программы принимают его за настоящего честно купишего покупателя. Жизнь его становится легка и непринуждённа.
Чувствуете разницу в двух этих случаях? А создаётся она быстро, путём использования асимметричных ключей. Даже если там защита типа if + msg->exit
CEM>>И кейгены станут невозможны, разве что тока ключ прям у тебя сопрут приватный.
PT>Вы не поверите, но кейгены к таким прогам тоже пишутся
Совсем необязательно иметь "оригинальный" закрытый ключ — достаточно будет пропатчить открытый в самой проге и заменить его на открытый из своей пары. После таких нескложных махинаций можно писать свой кейген. Вобщем все опять упирается в защиту кода/данных от модификации.
Всё это до следующего релиза.
И у меня некие умельцы писали безлимитные лицензии к моей программе. С эл. подписью, со сроком до 9999 года, все дела. Я когда увидел такую лицензию, сурово загрустил. Но недолго, потом выяснилось, что без патча она нифига не работает