как определить, размещен ли мой PHP-скрипт другими - PullRequest
1 голос
/ 06 октября 2010

Я продаю PHP-скрипт онлайн за 35 $ для отдельного пользователя.

Есть ли способ определить, размещен ли мой скрипт более чем одним пользователем?какая-нибудь логика в моем сценарии, чтобы найти его личность?

Есть ли простой способ найти пират

Пожалуйста, помогите мне.(извините за грамматические ошибки)

Ответы [ 5 ]

1 голос
/ 06 октября 2010

Вы ничего не можете сделать, чтобы свести на нет пиратство с помощью не скомпилированных скриптов.Любой может изменить источник, чтобы удалить все имеющиеся у вас средства защиты.Однако вы можете попытаться запустить сценарий с помощью какого-либо инструмента запутывания или иным образом попытаться вручную «закодировать» файл, во многом так же, как это делают многие вредоносные программы PHP.Однако обфускация и этот тип кодирования могут и будут побеждены кем-то, у кого достаточно времени.

Если вы хотите вложить деньги в проблему, вы можете проверить IonCube Encoder или Zend Guard .И то, и другое защищает ваш скрипт, и я знаю, что, по крайней мере, Zend Guard разрешает лицензирование для каждого сервера.Однако эти решения потребуют от ваших конечных пользователей установки загрузчиков IonCube или Zend.

1 голос
/ 06 октября 2010

Невозможно сделать это без (IMO) влияния на безопасность / конфиденциальность ваших пользователей.

Единственный «чистый» способ сделать это - закодировать ваши сценарии с помощью инструмента, подобного IonCube (есть много других, но никогда не использовал их), и ограничить выполнение в определенном домене. Недостатком (вы также можете видеть это как плюс в зависимости от вашей схемы лицензирования) является то, что пользователи не могут видеть / изменять ваш код.

1 голос
/ 06 октября 2010

В PHP нет надежного способа предотвратить использование вашего скрипта кем-либо еще. Поскольку PHP использует компиляцию точно в срок, исходный код может прочитать любой, имеющий доступ к файлам. Это означает, что любая логика call-home, которую вы вставите в свой скрипт, может быть легко отключена. Лучшее, что вы можете сделать - это запутать его, но код все равно может быть отредактирован кем-либо с достаточным определением.

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

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

1 голос
/ 06 октября 2010

Например, где-то в вашем скрипте:

<?php
file_get_contents('http://yourserver.com/tranck_script_users.php?site='.url_encode($_SERVER['HTTP_HOST']));
?>

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

1 голос
/ 06 октября 2010

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

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

...