Як захистити відкритий php код

Якісного захисту не буде. Якщо ваш продукт буде цікавий будь-кому, його зламають і він рано чи пізно з'явиться на Варезе різних.

Жадібність це погано, якщо хочете що б люди реально купували - робіть продукт як SaaS з можливістю купити окремо для установки на локалі. Або можна кинути сили на пошуки нулених версій і просити видалити роздачі.

Java, PHP, C, C ++, C #. NET, QT

Сам код ти ніяк не захистиш. У кращому випадку тобі допоможуть авторські права і ліцензування коду. Якщо тебе цікавить захист від використання без ліцензії, тобто один спосіб який я застосовував у своєму проекті. Цей спосіб захищає не на 100% але може доставити гемороя тим хто вирішить використовувати ваш продукт безкоштовно. Обмовлюся так само що спосіб цей не всім може підійти.

Тепер власне сам спосіб. Частина коду PHP без якого не буде працювати ваш проект переносимо на CGI написаний наприклад на СІ ++.
В CGI вбудовуємо перевірку ліцензії прив'язану по-перше до маку та IP сервера на якому буде працювати проданий ресурс. Другу частину перевірки переносимо на ваш сервер з ліцензіями. Тобто продукт при роботі повинен періодично (або при певних операціях) перевіряти встановлену ліцензію яка вшита в CGI. При перевірці ваш програмний продукт звертається до сервера і відправляє йому шифровану інформацію про ліцензії. За цією інформацією на вашому сервері визначаються дані про сервер і так само шифрувати відправляються назад програмного продукту. Той звіряє ці дані з даними про сервер і якщо дані вірні генерує тимчасовий токен, який зберігає в затишному місці вашого програмного продукту і відправляє на ваш сервер з ліцензіями. Для захисту від підміни даний про сервер, після успішної перевірки відправляйте запит на ip сервера викликаючи певну функцію CGI яка повинна зіставити токени. якщо збігаються, то ліцензію перевіряв дійсно програмний продукт з сервера на який він зареєстрований. При цьому система повинна автоматично оновлюватися з вашого сервера до останньої версії і під час оновлень вам необхідно змінювати методи шифрування. Так як CGI закритий і всередині нього містяться важливий для роботи функціонал, то видалити його або зламати буде проблематично. Можливо система заплутана і не позбавлена ​​недоліків, але в роботі показала себе непогано.

З іншого боку вам правильно написали, що якщо ваш продукт буде цікавий іншим людям, то швидше за все його рано чи пізно зламають, і зазначена вище система в купе з постійними оновленнями буде лише доставляти тимчасовий геморой.

Сподіваюся зміг вам допомогти.

Не так. Хочете защітть свій код - орендуйте сервера і розмістіть на них, і створіть апі. А клієнтам роздавайте вільну біблііотеку з доступу до апі. Клієнт платить, в результаті отримує доступ до функції, до найновішої версії.
І копірастов немає, і клііент задоволений - автоматичні оновлення, плата тільки за фактичне використання, і ви - 99% захист вашого коду.

Згоден з вами, але це може бути занадто накладно

@KOLANICH Краща ідея як на мене. але більш трудомістка! Дякуємо!

Як захистити відкритий php код

Мої пропозиції:
1. Зашифрувати файл. Розшифрують, але не відразу, багатьом лінь або не вміють, так що можна виграти багато часу
2. Замаскувати ділянку коду, який перевіряє ліцензію під інший скрипт (наприклад зробити вигляд, що цей код працює з кешем)
3. Можна вшити код перевірки в якусь популярну бібліотеку. Наприклад написати код в глибині класу PHPExcel
4. Можна маленьку, але важливу частину скрипта перенести на свій сервер. Тоді користувач навряд чи зможе безкоштовно повноцінно використовувати вашу програму
5. Є варіант обфусціровать код

Якщо скомбінувати деякі варіанти, то вийде досить важка для злому захист

Я подібну задачу просто вирішив, зашифрував файл перевіряючий ключі в base64 через сервіс visavi.net/services/encryption.php. Розшифрувати не важко, але потрібно не багато подумати. Покупці були новачки в програмуванні, тому

1.5 року скрипт був в цілості й схоронності.
Ключ до речі просто генерувався з домена: D

Для платних програм обов'язково треба робити хоча б мінімальний рівень захисту, інакше можна втратити взагалі весь прибуток. Чим хитріше захист, тим довше скрипт буде в цілості

@Andriyevski. спасибі) До речі, якщо все таки скрипт потрапив в загальний доступ, пустіть погані чутки, зробіть так, щоб користувачі боялися завантажувати його безкоштовно. Увійдіть під іншими ніками і пишіть одну й ту ж саму історію злому, нападу вірусів або крадіжки даних від різних людей, які нібито вирішили схитрувати і не купувати програму, звалите причину на тих, хто виклав в безкоштовний доступ в корисливих цілях. Головне, що б не подумали, що це сам оригінал скрипта дірявий.

Все ж я напишу серверну частину, а користувачеві дам як би для користувача частину, яка буде взаємодіяти з моїм сервісом на моєму сервері! Так буде куди краще. Якщо витрачу багато часу на захист коду, проект стане просто вантажем при подалі розвитку проекту, складніше буде розбиратися в ньому! Так що всім величезне спосибо за ваш внесок в мій майбутній проект :)

Ну це вже краще. Тут складно давати консультації, так як не зрозумілий проект. Де то краще SaaS, де то клієнт - серверне рішення, а де то просто сервер ліцензій :)

Схожі статті