Защита продукта на PHP
69 повідомлень
#15 років тому
Хм... Я думаю над реализацией защиты, но что-то реально простого и умного мне не приходит...
3240 повідомлень
#15 років тому
А ничего простого сделать при такой постановке задачи и не получится. Будет сложно, и будет серьезно страдать производительность.Сейчас мне это видится так:
1. или отказаться от работы с mod_php, и загружать и выполнять зашифрованный PHP код через бинарный CGI-загрузчик (возможно, написанный на перл и скомпиленный в бинарник).
2. или из написанного на PHP фронт-контроллера подгружать зашифрованный PHP код, запускать отдельным процессом декодер-бинарник, передавать ему зашифрованный код, и полученный расшифрованный код выполнять например через eval...
3. и т.д.
Все такие способы содержат массу минусов, но работать будут даже на большинстве российских shared хостингов.
И да, минимум неделю работы убить на базовую защиту такого типа придется.
7132 повідомлення
#15 років тому
Оффтопик
Цитата ("ypeskov"):
Вы не согласны с моими домыслами? На здоровье. Я не вижу НИ ОДНОЙ причины, почему я вам должен что-то доказывать.
посилання
Понятие ТРЕНД вам знакомо?
Еще немного позитива:
посилання
И еще немножко:
посилання
На этом спор на тему доли рынка мелкомягких заканчиваю
А вот касательно серверов вы решили промолчать
Вы не согласны с моими домыслами? На здоровье. Я не вижу НИ ОДНОЙ причины, почему я вам должен что-то доказывать.
посилання
Понятие ТРЕНД вам знакомо?
Еще немного позитива:
посилання
И еще немножко:
посилання
На этом спор на тему доли рынка мелкомягких заканчиваю
Цитата ("The_KING"):
Что касаемо стальных - флудеры.
Повторю: ЛОМАЮТ ВСЕ. Любую защиту взломают. Хотите наибольшую защищенность - пишите свою, с таким мало кому захочется возиться. Но если, стоимость кода превысит стоимость затрат на взлом, то и это взломают.
8 повідомлень
#15 років тому
Да знаешь, сколько времени уйдёт на взлом скомпилированого бинарника? в разы больше, чем на написание такого же функционалаИспользуйте транслятор который я выше упоминал, для сабжа.
И откуда у людей время на весь этот флуд...
50 повідомлень
#15 років тому
Цитата ("Crisis"):Да знаешь, сколько времени уйдёт на взлом скомпилированого бинарника? в разы больше, чем на написание такого же функционалана самом деле в разы меньше. в очень большие разы.
если автор сильно боится кражи, то подойдёт любая самописная защита, например, как предложил tvv. из преимуществ: нет готового крякера, то есть для взлома надо кого-то искать-уже расходы (которые как раз и покажут популярность продукта-если начали ломать, значит понравилась

8 повідомлень
#15 років тому
Цитата ("Nitrogeniy"):Цитата ("Crisis"):Да знаешь, сколько времени уйдёт на взлом скомпилированого бинарника? в разы больше, чем на написание такого же функционалана самом деле в разы меньше. в очень большие разы.
я занимался reverse engineering и понимаю, что пишу.
вы пробовали прочесть результат декомпиляции из native кода?
это не .net - компиляция в native код предусматривает оптимизацию, после которой не так-то просто понять, что было.
мало того, есть только один нормальный декомпилятор, и декомпилирует он в C. вы пробовали почитать, работу с ООП в C, когда ссылки принимаются как int?
и вообще всё принимается, как int - native бинарники не хранят информацию о типах, которые использовались при компиляции.
гарантирую, если транслировать PHP в С++, никому не захочется копаться, чтобы понять, что же там было на PHP написано.
потому, что гораздо проще будет понять из самого функционала, что там было на PHP написано.
7132 повідомлення
#15 років тому
Цитата ("Crisis"):я занимался reverse engineering и понимаю, что пишу.
вы пробовали прочесть результат декомпиляции из native кода?
вы путаете взлом и реверс-инженеринг.
для взлома не нужно читать весь код. у любой защиты есть слабые места - точка выхода и сообщение об ошибке. есть окна ввода кода активации, где отлавливаются переходы и отладчиками проходят. пишутся свои регмоны и файлмоны, чтобы отслеживать запись-чтение реально зарегистрированного ПО.
все не так сложно. конечно, самописную систему можно усложнить, отложить контроль, продублировать контроль в ключевых классах, поставить зависимость алгоритма от плавающих значений, которые меняются по нечеткому алгоритму. т.е. защиту можно усложнять. но если это известная система защиты, то она уже имеет готовые таблетки.
поэтому, ТОЛЬКО САМОПИСНАЯ система и придумать дополнительную ценность регистрации и легального использования, кроме самого продукта. Т.е. нужно еще чем-то привлекать потенциального клиента.
Цитата ("Crisis"):
гарантирую, если транслировать PHP в С++, никому не захочется копаться, чтобы понять, что же там было на PHP написано.
потому, что гораздо проще будет понять из самого функционала, что там было на PHP написано.
это если хотят увести исходники, а если просто хотят увести движок? забрать откомпиленные даныне и использовать на своем сервере?
8 повідомлень
#15 років тому
shapod, если просто хотят увести весь движок, то тут мало, что поможет.
есть вариант защищать "цифровыми водяными знаками", тогда за каждой проданной копией закрепляются данные о владельце и, в случае обнаружения нелегальной копии продукта, по копии можно определить нарушителя. при желании довести дело до суда.
но в данном случае можно хардкодить домен сайта, для которого используется движок, его настройки, и радоваться.