Как защитить PHP-коды с помощью последовательного / лицензионного механизма с oauth или аналогичной моделью для выполнения запросов клиент-сервер? - PullRequest
3 голосов
/ 05 сентября 2011

После поиска многих и многих программ для кодирования / шифрования, я пришел к выводу, что ни одно из них не может защитить ваши исходные коды от попыток обратного проектирования.

Даже в iOncube у Zend есть декомпиляторы.Я даже попробовал safeguardian, но обнаружил, что он также может быть взломан.Большинство программ, которые не требуют какой-либо серверной части перед установкой, производят запутывание наших исходных кодов.Прилагая огромные усилия к этим запутанным кодам, он все еще может быть взломан.

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

Я верю в этот поток, клиент должен сначала получить ключ API или что-то подобное, чтобы отправлять запросы на мой сервер.Пожалуйста, поправьте меня, если я ошибаюсь, но это больше похоже на использование модели клиентского сервера Oauth или что-то в этом роде.

Кто-нибудь может привести пример такого механизма?Или хотя бы с чего мне начать?Я понимаю, что обратные инженеры могут найти параллельный путь для пропущенных кодов, но я думаю, что я могу использовать свои шансы вместо того, чтобы просто запутывать свои коды или шифровать байтовые коды, предоставляемые zend, ioncube и т. Д. И т. Д. Любая помощь будет высоко оценена.

PS Я добавляю пример того, что я ищу - например, - Допустим, следующий файл php находится на компьютере клиента: client.php

<?php
get_further_data($consumer_key,$consumer_secret)
{
----this will send request to server.php or so on my server with above keys to obtain $req----  
}

some_function($req)
{
    if($req)
    {
        ----further processing on $req----
    }
    else die();
}
?>

Ниже приведенофайл на моем сервере: server.php

<?php
get_requests($consumer_key,$consumer_secret)
{
    ----if the requesting host is valid and keys are binded to that host only then provide $req----
}
?>

В outh есть что-то вроде открытого ключа, закрытого ключа и т. д. и т. д. Я не знаю этот механизм, но каким бы он ни был, я не указал вНапример, я думаю, что RSA, oauth и все эти вещи действительно многообещающие.И да, это просто для защиты нескольких кодов php и некоторых данных. Если вы думаете, что это слишком хорошо, то у меня может быть гораздо более высокий вкус, или, может быть, Facebook, Google, Twitter также сделали слишком много, чтобы защитить некоторые кодыи некоторые данные.Ура!лол

1 Ответ

0 голосов
/ 16 мая 2015

Вы можете попробовать phalanger и скомпилировать php для Windows.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...