2012-06-27 1 views
3

Я прочитал an answer на другой вопрос здесь о переполнении стека. Позвольте мне сначала указать инкриминируемую часть:Как защитить PHP-скрипт, чтобы он был доступен только при покупке?

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

Я спрашиваю, что, технически, как бы один обеспечить его/ее PHP на основе проекта с зарегистрировать ключ метод? Скажем, у нас есть это:

$key = file_get_contents('http://auth.project.example.com/auth.php?auth_key=asd123'); 
if ($key === "auth_valid") 
    define('AUTH', TRUE); 

И после этого, мы проверяем AUTH, чтобы увидеть, купили ли мы (с точки зрения клиента) системы или нет. Очевидно, если бы мы этого не сделали, AUTH будет FALSE или не будет определен вообще. Проблема заключается в том, что клиент с мало-по-ноу знаний для PHP мог бы легко прокомментировать эти строки, hotwireAUTH быть ИСТИННЫМ, и там он/она, используя систему с ним, думая, что он был куплен , в то время как в действительности этого не было.

+2

ionCube предназначен для обфускации вашего источника и может также позволить вам продавать его пользователям на основе лицензии. – ionFish

+0

Возможно http://en.wikipedia.org/wiki/Authentication –

+1

Вы можете перемещать функциональные возможности на сервер и разрешать только вызовы API от аутентифицированного пользователя. –

ответ

1

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

Смежные вопросы