За последние 24 часа нас посетили 17497 программистов и 1686 роботов. Сейчас ищут 909 программистов ...

вопросы по защите скриптов

Тема в разделе "Прочие вопросы по PHP", создана пользователем xfreewindx, 21 апр 2012.

  1. xfreewindx

    xfreewindx Активный пользователь

    С нами с:
    22 фев 2012
    Сообщения:
    55
    Симпатии:
    0
    Доброго здоровья!
    Народ, подскажите, вчера гуглил на тему защиты php скриптов, так и не определился. Если скрипт делается на продажу, понятно не хотелось бы, чтобы его копировали. Средства есть, но они платные. Рекомендуют Zend Guard, пишут, что если зашифровано последними версиями, то декомпилировать невозможно. Однако очень дорогой продукт.

    Я так понимаю, все что нужно сделать это обфускация и шифрование. Насколько понял шифрование и перевод в байт-код это разные вещи.
    Вопросы:
    1. будет ли это влиять на быстродействие?
    2. есть ли достойные бесплатные аналоги?
    3. есть ли программы, переводящие скрипт в байт-код, чтобы на сервер заливать не исходники, а байт-код? Это наверное вопрос больше по увеличению быстродействия.

    Спасибо.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    не давай скрипт, держи серверную часть у себя, а скрипт только загружает в нее данные и получает результат.

    что значит "скрипт на продажу"? продавать один и тот же скрипт разным людям? что за скрипт если не секрет? если б CMS то там можно извратиться и привязаться к машине.
     
  3. xfreewindx

    xfreewindx Активный пользователь

    С нами с:
    22 фев 2012
    Сообщения:
    55
    Симпатии:
    0
    Спасибо за совет.
    Просто думал если продавать как обычную программу, но да видимо держать на сервере лучше. Скрипт по работе с отправками, логистика, пока в проекте. По третьему вопросу что-нибудь скажете?
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    есть. я не знаю, но на прошлой неделе этот же вопрос поднимался. и там был как раз именно такой ответ. только на те машины придется что-то ставить.

    посмотрите на SOAP - оно защищено, нужно иметь ключик, ключик может действовать какое-то время. Вполне себе работа по подписке.

    Но это все зависит от того, что вы хотите реализовать. Байт-код при желании тоже можно расковырять.
     
  5. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    главное не получить "Неуловимого Джо"
     
  6. Resizer

    Resizer Активный пользователь

    С нами с:
    29 апр 2012
    Сообщения:
    3
    Симпатии:
    0
    На производительность влияет. В серьёзный проект такой ужатый скрипт лучше не ставить.
    Скрипт за деньги - рекомендую выдавать открытый код. Типа - хорошие манеры)
     
  7. Ke1eth

    Ke1eth Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    1.073
    Симпатии:
    11
    Адрес:
    заблудилса
    Только что закончил борьбу со сраным, достаточно популярным платным компонентом (не скажу какой) для Joomla! (суть в том, что он был когда-то куплен людями, но недавно стал периодически матюкаться на лицензию). Заняло это безобразие 3 часа на поиск чо, где, куда, и как.
    Нашел ошибку у авторов, править не стал, а просто запретил их вклячиваемый js.
    Вопрос: нафига так делать, не маленькие дети, должны понимать, что это интерпретируемый язык, ну отсеют они nn-ый процент "ломателей", но толку-то? Ведь на этих их десятках функциях ужатых, пожатых, за base64_encode-ных - тратятся ресурсы пользователей...
    Маразм.
    Ощущение, что на создание защиты потратили больше времени, чем на разарботку самого компонента.
     
  8. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Одна небезызвестная контора, делающая одну небезызвестную костылятину по имени Битрикс, очень изящно подошла к этому вопросу. Можете качнуть и поковырять бесплатную версию, чтобы проникнуться. Это, пожалуй, единственное интересное решение там. Соль:

    1) Все открыто;
    2) Кроме установщика. Установщик зажат, за бэйс_64_инкоден и тд;
    3) При продаже в установщике зашивается айдишник лицензии и хэшкод;
    4) При развертывании Битрикс спрашивает у сервера, мол "а я ворованный, или нет? Вот мой хэш, вот мой ключ!";
    5)...
    6) PROFIT!!!

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

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    что тогда мешает, потом скопировать уже установленную версию, и развернуть её на других сайтах? ведь проверка только при установке, а сам сайт получается работает не проверя свою лицензионную чистоту и ключик внутри себя соответсвенно не хранит(ибо зачем)?
     
  10. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    Я примерно так же подошел, но единственное, я раз в сутки спрашиваю, "ворованный я или нет" )
    Ну и файл который спрашивает под Zend
     
  11. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    Те люди, от вы которых пытаетесь закрыться, они в принципе не платят за софт. И zend не заставит их платить. Шифрование это ломается, в конце концов могут тупо подменить неудобный файл и т.д. IMHO, бессмысленный труд это всё. При том, что это создает неудобства для выявления багов и сопровождения.

    Ну пускай будут нелегальные установки, они только увеличат популярность вашего достойного продукта! :)
     
  12. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    ну...я вобщем так для себя и решил ) ибо без обновлений никуда, а обновления только тем кто честно купил )
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а че б не купить? о_О
     
  14. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Мешают два фактора, которые тут уже были озвучены:

    1) Проверка раз в N времени "ворованный или лицензионный";
    2) Апдейты только для лицензионников;
    Тот же Битрикс по истечению лицензии не превращается в тыкву. Просто тебя техподдержка пошлет и обновлений не будет.

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

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

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    согласен. поэтому и непонятно зачем вообще прятать и шифровать скрипты. школота только поднимет популярность, а серьезные клиенты все равно купят ибо иначе нарушение лицензии.

    а если ктото очень захочет - то всегда сможет и раскодировать скрипты и заглушку поставить(трафик соснифить) такую чтоб запросы типа "ворованный или лицензионный" корректно обрабатывались. так что в большинстве эти защиты только от школоты.
     
  16. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    ну вот тот у того же битрикса только установщик замулеван. А остальное и без того само по себе является не редактируемой кашей.

    Да это и не защита скорее, а средство учета :)

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

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

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

    Ke1eth Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    1.073
    Симпатии:
    11
    Адрес:
    заблудилса
    Есть у меня в голове такой способ... руки не добираются попробовать :)
    Вынести часть приложения в php модуль, или воспользоваться SWIG
     
  18. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    давай я твои руки простимулирую финансово?
     
  19. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    то бишь писать на сях? :) Отлично :) Без сарказма.

    Главное таким образом случайно CGI не изобрести.
     
  20. Ke1eth

    Ke1eth Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    1.073
    Симпатии:
    11
    Адрес:
    заблудилса
    как-бы, а что не так?
    и так писать на оном приходится. )

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

    Без геморный способ - saas, другого не дадено.
     
  21. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    saas не дает той свободы что любой софт...ты заложник того что ты юзаешь....развалились они, сервак у них сдох, моча в голову....не, это не вариант вообще.

    а у меня и так почти никто не знает что я там под Zend`om делаю внутрях....и ниче, живут тихо мирно....но я там ничего плохого не делаю....

    тут вопрос еще вот в чем: те кто понимает, что я там могу делать, им мой скрипт в фиг не вперся, у них свой давно.....а школоте пофиг...
     
  22. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
  23. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    У тебя на пк в данный момент стоит не менее десятка программ, которые делают то, ты сам не знаешь что, включая, кстати твой браузер. И ничего, Джо такой Джо :)

    А насчет сей - я лично не против, штука кошегная. Только вот:
    Солька еще в том, что как развернуть свои модули на, скажем, шаредхосте? :(