Uncrackable PHP Software Защита

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

Я рассматривал Ioncube (и друзей), и использовал несколько из них раньше. Тем не менее, все они в основном просто сдерживающие факторы, потому что у клиента есть весь код. Есть примеры (и сервисы) сети, которые взламывают каждый из них.

Конечно, более безопасным решением было бы запустить его как проект SaaS, но в этом случае это невозможно.

Так что я рассматриваю систему удаленного лицензирования...

Система лицензий будет содержать часть кода PHP, и клиенту требуется действительный лицензионный ключ для доступа к нему. Этот раздел кода будет связан с функциональностью кукурузы, которая необходима для запуска программы. Так что по сути API. Клиенты могут быть ограничены либо по IP, либо по # вызовам API.

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

Плюсы:

  1. "Не трескается" со стороны клиента
  2. Для клиента не требуется специального программного обеспечения (загрузчики Ioncube и т. Д.)

Минусы:

  1. Если сервер лицензий не работает, клиенты не могут получить доступ к программному обеспечению (уменя были бы избыточные кластеры с балансировкой нагрузки в 3 разных географических регионах с 3 разными провайдерами)
  2. Если продукт / бизнес умирает, клиенты остаются без доступа (я бы выпустил код для них в этой ситуации, потому что в любом случае на этом этапе было бы нечего терять)

Есть ли какие-либо существенные проблемы, которые я упускаю из списка плюсов / минусов выше?

Так что, пожалуйста, порвите мою идею в клочья:)

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

1 ответ

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

Если то, что вы даете через API, является сложным, то почему бы вообще не разместить все приложение на вашем сервере?

Другие вопросы по тегам