[php] Защита своего скрипта от копирования

Тема в разделе "PHP", создана пользователем HatoL, 20 июл 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. HatoL

    HatoL

    Регистр.:
    5 фев 2008
    Сообщения:
    206
    Симпатии:
    36
    У меня такая ситуация: к серверу, на котором будут находиться мои скрипты, несколько пользователей имеют доступ по ФТП. Я бы не хотел, чтобы они могли скопировать себе эти скрипты, а потом использовать их на своих сайтах. Что для этого можно сделать? Слышал, есть Zend Optimizer, а также другие кодировщики, которые шифруют код по необратимому алгоритму. Возможно ли их мне использовать ? Упадет ли производительность ? С какими трудностями можно столкнуться при их использовании ? Какие при этом нужны требования от хостера? Хотелось бы получить ответы на все вопросы. Спасибо
     
    gregzem и cc0vec нравится это.
  2. nik0tin

    nik0tin

    Регистр.:
    29 авг 2007
    Сообщения:
    320
    Симпатии:
    56
    Zend не используй не в коем случае! Zend легко снимается.
    Используй ioncube. В паблике декодера под него нет.
    http://www.ioncube.com/
    Возможна проблема в установке.Тормазить точно не будет.
     
  3. Internet_Contraband

    Internet_Contraband

    Регистр.:
    19 окт 2007
    Сообщения:
    234
    Симпатии:
    58
  4. gregzem

    gregzem

    Регистр.:
    21 окт 2007
    Сообщения:
    202
    Симпатии:
    66
    Если пользователи имеют доступ к скриптам, пусть и закодированным или обработанными обфускаторами (шифровальщиками исходного кода), без привязки к вашему хостингу их также можно скопировать и настроить у себя на сайте (если, например, настройка заключается только в изменении эккаунта базы данных в каком-нибудь config.php). Конечно расковырять их будет сложнее, но все равно 100% защиты нет. Поэтому если вы хотите запретить их использовать на других хостах, нужно встаивать защиту привязки к хостингу (это тема отдельного большого обсуждения, недавно, кстати, поднималась вот здесь
    http://habrahabr.ru/blog/php/46827.html


    Как уже написали выше, для Zend Encoder есть замечательный Decoder, разве что комментарии не вставляет в исходник :) так что его лучше не использовать. На счет необратимых алгоритмов шифрования - если речь идет о шифровании исходного кода, то это обфускаторы, которые меняют имена переменных на что-то типа $O0Oo0O вместо привычного $value, разобраться тяжело, но при необходимости можно. Также они вставляют всякий мусорный код, который вроде как должен запутывать и усложнять анализ кода. В принципе, обфускатор + Zend Encoder - нормально подойдет для не шибко терпеливых и не шибко усидчивых хацкеров. IonCube посерьезней. Но он значительно реже встречается у хостеров. Поэтому если у вас на хостинге он есть или есть возможность его поставить как модуль, используйте его + в коде привязку к домену. Из минусов шифрования/кодирования следует отметить тот факт, что осложняется модификация кода и для вас если вдруг понадобиться что-то исправить/добавить в скрипт. То есть так вот прямо на хостинге изменения не внесете.
    По скорости - будет работать примерно также, как и незашифрованный код. Разницы не заметите.
     
    Mikhail.M и HatoL нравится это.
  5. Piflit

    Piflit Создатель

    Регистр.:
    7 июн 2008
    Сообщения:
    24
    Симпатии:
    4
    сначала привязка к хосту, потом обработка ионкубом. ионкуб снять скорее всего не смогут, а как следствие, и отвязать
     
  6. HatoL

    HatoL

    Регистр.:
    5 фев 2008
    Сообщения:
    206
    Симпатии:
    36
    закодировал с помощью phpSHIELD. Там еще потребовалось лоадеры (2 мегабайта) вставить в корень закодированных страниц. Программа работает только 7 дней с момента установки, поищу crack, если не найду, придется другим пользоваться.

    А что нужно для того, чтобы ioncube работал? Нужны ли какието расширения установленные на хостинге? Как узнать, стоят они или нет, через phpinfo() ?
     
  7. gregzem

    gregzem

    Регистр.:
    21 окт 2007
    Сообщения:
    202
    Симпатии:
    66
    Конечно нужна поддержка на хостинге. ionCube Loader устанавливается либо в php.ini, либо в отдельный каталог.
    Не нужно устанавливать модуль в апач, как это надо делать с Zend Optimizer.

    Вот, кстати, есть описание как что и куда ставить и сравнение с Zend Encoder.


    http://www.hot-key.ru/man/ru/faq.htm#1.2


    А еще позволю себе перевести фрагмент анонса с сайта ioncube.com, имхо в сравнении с четвертым Zend весьма ураганная вещь (пятый не знаь, не смотрел:(



    ION CUBE Encoder включает следующие фичи:

    1. Кодирует PHP скрипты в байткод для ускоренного выполнения и максимальной секьюрити
    2. Кодирует обычные файлы, типа XML, Smarty шаблоны и изображения
    3. Генерирует файлы лицензий для ограничения доступа к закодированным файлам (в Pro/Cerberus Encoder)
    4. Выполняет обфускацию кода после компиляции для дополнительной секьюрити
    5. Выбор формата хранения файлов - ASCII/Binary
    6. Кодирует Shell скрипты PHP и обычные PHP
    7. Предотвращает фальсификацию лицензионных сигнатур
    8. Предотвращает неавторизированный include закодированных файлов в незакодированные
    9. По выбору пользователя использует OpenSource расширения, типа mmcache
    10. Генерирует файлы, срок жизни которых истекает в определенный момент или спустя какой-то временно промежуток
    11. Запуск файлов только на комбинации IP адрес и/или имя сервера (Pro/Cerberus Encoder)
    12. Запуска файлов на оперделенном MAC адресе (Cerberus Encoder)
    13. Интеграция с ionCube Package Foundry
    14. Текстовая аннотация в закодированных файлах, где можно указать свои копирайты и прочуу ботву
    15. Настраиваемые сообщения об ошибках истечения срока лицензии и пр.
    16. Очень высокая производительность по кодированию, особенно для кодирования по требованию (on demand)
     
Статус темы:
Закрыта.