Страницы

Поиск по вопросам

среда, 18 декабря 2019 г.

Как защитить php код, чтобы сайт работал только на заданном домене

#php


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


Ответы

Ответ 1



Если код работает на сервере под контролем «злодеев», любую техническую защиту можно обойти. Вопрос времени и стоимости. Сможете сделать это настолько сложным, что ломать (и перепродавать?) дороже, чем купить – вы победили. Вариант – держать код у себя. Пусть их сайт работает с вашего сервера. Вы будете «заниматься поддержкой и обновлением» и пр. а они вам регулярно (!) платить за хостинг и апдейты. Можно сделать небольшие закладки в код, которые будут случайно, очень редко, маяковать вашему серверу – так вы узнаете, где ваш код работает – домен, IP. Или заранее позаботьтесь о каких-то уникальных сигнатурах, видимых на сайте извне, и индексируемых поисковиками – чтобы вы могли найти все инсталляции вашего кода через Яндекс/Google. Подумайте о юридическиской защите. В некоторых странах она совсем не работает, в некоторых (напр. Германии) – вполне, и приносит всем - от владельцев права до юристов, занимающихся вопросом, ощутимую прибыль. Наконец, поступите нетривиально – выложите ваш код в открытый доступ. А деньги берите за премиум возможности и поддержку. Непосредственно по теме вопроса. Отличная школа – изучение чужого кода. Скачайте коммерческие продукты на php – темы/плагины WordPress, компоненты Joomla и т.п. и посмотрите, как в них реализована защита – напр. запись о копирайте, назойливо вылезающая на всех страницах, или отключение через месяц пробного периода. «Изучить» значит взломать, докопавшись до сути защиты. Встречаются забавные реализации обфускации кода, замены похожих символов в названиях переменых, методов, констант: COPY_CHECK vs. C0PY_СHECK, base64 кодирование и пр.

Ответ 2



Заложить проверку домена в ядро самого приложения. Обфусцировать весь код или только само ядро. Но те кто захотят украсть ваш код, в любом случае смогут это сделать с помощью деобфускации PHP кода. Как не крути – 100% гарантии нет. Еще ссылки по теме: PHP Obfuscator 2.5.2 Обфускация онлайн

Ответ 3



Можно использовать ioncube – он обсфуцирует код с помощью ключа.

Ответ 4



Кому надо - все равно раскодируют, вопрос только в том, сколько труда для этого понадобится А так - проверять в нескольких местах в самом коде (причём разными методами, да простят боги DRY) Можно перегнать в байт-код Zend Guard'ом, если есть возможность ставить модули на хостинг, в теории это надёжнее, чем просто обфусцировать

Ответ 5



Можно скомпилить (HipHop), будет быстрее работать, https://ru.wikipedia.org/wiki/HipHop_(%D1%82%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D1%8F%D1%82%D0%BE%D1%80)

Комментариев нет:

Отправить комментарий