Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Защита ПО с помощью лицензирования (на PHP), Как это сделать? 
:(
    Опции темы
enshtein
Дата 17.5.2007, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 7.11.2006

Репутация: нет
Всего: нет



К примеру http://umi-cms.ru/purchase/how-to-buy/ <- платная CMS, распространяют под лицензией, после покупки клиент получает ключ для определенного домена и активирует продукт, пользуется скока влезет, примеров такого рода защиты в платных CMS полно! Знаю что это бредовая защита, но от всякого рода ломтей вполне сгодится! Как оное организовать подскажите пожалуйста??? 
PM MAIL   Вверх
Хрипа
Дата 17.5.2007, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 11.12.2006

Репутация: -6
Всего: нет



enshtein, 
Грузи файл с сваего хоста, и писать надо так что бы без этого файла была демо версия..
После в вода куда либо ключ Опять же читаешь удалённый файл. и сохраняешь строки кода скрипта куда либо и грузишь новый код.

Добавлено через 3 минуты и 53 секунды
if (file_exists($file))
{
include($file);
}
else
{
Грузим удалённый файл демо верссии
}
--------------------
<Вырезана, как не соответствующая правилам форума >
PM MAIL   Вверх
enshtein
Дата 17.5.2007, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 7.11.2006

Репутация: нет
Всего: нет



Цитата(Хрипа @  17.5.2007,  19:51 Найти цитируемый пост)
Грузи файл с сваего хоста, и писать надо так что бы без этого файла была демо версия..После в вода куда либо ключ Опять же читаешь удалённый файл. и сохраняешь строки кода скрипта куда либо и грузишь новый код.


несовсем понял цепочку (последовательность) мыслей...  "сохраняешь строки кода скрипта" - куда на хост с сервера, а грузить новый код тада зачем? и после такой активации - как защитить от переноса на другой хост??



PM MAIL   Вверх
Хрипа
Дата 17.5.2007, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 11.12.2006

Репутация: -6
Всего: нет



Система очень проста... 
Для зашиты ваша CMS должна работать с удалённым сервером..
И проверять купил пользыватель или юзает ДЕМО.. 
если чел в вёл Код то ему передаётся дополнительный код фулл версия CMS и в базу на Хосте с которого получен файл пишется что Такой-то такой-то купил ЦМС Домен его записуется IP и прочая инфа. + можно выдать секретный код который позволит Зайти на сайт и Изменить домен IP но только для этой копии так как в БД будет хранится Одно поле. Новое добавить нельзя.
Рекомендую использывать API интерфейс например XML
Связка работы CMS демо версии выглядит так
Браузер->Ваша цмс->Удаённая БД для проверки->Ответ в браузер

--------------------
<Вырезана, как не соответствующая правилам форума >
PM MAIL   Вверх
CyClon
Дата 17.5.2007, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

Репутация: 3
Всего: 4



Коннект к удаленному хосту идет. В прицнипе, нормальная защита. Просто нужно не сайт закрывать, а админку, если система не лицензионная smile

Алгоритм зашиты:

1. Пользователь покупает CMS. Шифруем ключ для него (для определенного домена), например, вот первое что пришло в голову:

Цитата
<?php

$domen = 'http://mysite.ru';

$crypt = sha1(base64_encode(md5($domen) . md5($domen) . md5($domen)));

echo $crypt;

?>


2. Выдаем этот ключ (Например 88b3b84a2c9953181c96cc3202436e7cdbd9638f) пользователю

3. Пользователь скачивает CMS, в которой функции проверки защиты закодированы, например, тем же Zend-ом (чтобы нельзя было изменить исходники в легкую).

4. Пользователь устанавливает свою CMS, входит в админку. Ему предлагают ввести ключ. Юзер вводит ключ, он сохраняется в конфигах (чтобы потом не вводить каждый раз) и отправляется на сайт разработчика, специальному скрипту. Скрипт в то время записывает в переменную адрес хоста с которого поступил запрос и сам ключ. Дальше - ищет хост в базе данных. Если хост присутствует - кодирует имя хоста по алгоритму этому же и сравниваем с пришедшим ключем. Если все ок - отправляет ответ OK, и пользователь попадает в админку.

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

6. Эту защиту все-таки можно обойти, ибо тот же Zend Encoder-ованный код поддается расшифровке.

Добавлено через 1 минуту и 40 секунд
Если производить проверку на сайте - теряем много времени в загрузке страниц.

ЗЫ: Да и производителю приятнее, знает кто реально юзает CMS, когда последний раз был коннект и т.д. и т.п. )

Добавлено через 13 минут и 59 секунд
Или вот так можно извратиться ыыы:

Код
<?php

$domen = 'http://mysite.ru';

$crypt = strtolower(base64_encode(substr(md5(sha1(md5(base64_encode(md5($domen) . md5($domen) . md5($domen))))), 0, 16)));
$crypt = str_replace('=', 'p', $crypt);

echo $crypt;

?>


Добавлено через 14 минут и 24 секунды
Думаю способ такого шифрования вообще никто не угадал бы smile


--------------------
user posted image
PM   Вверх
teroni
Дата 18.5.2007, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

Репутация: 8
Всего: 22



Интересно, а как реализовать то, чтобы юзер получив исходники CMS не вырезал из них часть, которая отвечает за проверку кода?
PM MAIL   Вверх
mr.fox
Дата 18.5.2007, 02:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 13.3.2005
Где: Ирландия

Репутация: -1
Всего: 2



teroni, для этого существуют пхп encoders.. Например Zend encoder и его более дешевый оппонент - IonCube encoder ( чем я и пользуюсь).. Там можно защифровать все коды пхп, и можно лицензию на файлы поставить.. Но я предпочитаю делать это в ручную.
PM MAIL WWW ICQ   Вверх
teroni
Дата 18.5.2007, 14:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

Репутация: 8
Всего: 22



Ну это понятно, но если все коды пхп зашифровать - то юзер тогда ничего поменять не сможет... А нельзя сделать так, чтобы зашифрована была только проверка покупки, а все остальное можно было менять? Или это бред?
PM MAIL   Вверх
CyClon
Дата 18.5.2007, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

Репутация: 3
Всего: 4



Так в основном и делается. Шифруется файл ядра системы, в который зашита функция проверки.


--------------------
user posted image
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0485 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.