Перейти к содержимому

Реферальная программа Мегаплана

Выбрать шаблон и создать сайт

Модуль лицензионных ключей для PHP

#1 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0
0

Отправлено 23 Ноябрь 2010 - 05:44

Как можно сделать модуль лицензионных ключей для PHP?
Например хочется сделать продукт на PHP по лицензии.
Как генерировать ключи, чтобы их было сложно расшифровать, но в них хранилась информация по дате окончания лицензии и любая другая текстовая информация.
Как защитить таким образом систему с помощью средств PHP?

 

 

  • 0

#2 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 23 Ноябрь 2010 - 08:44

присоединяюсь, я вот думаю как это реализовать защиту авторских прав
  • 0

#3 else

else
  • Пользователь
  • 15 сообщений
  • Репутация: 0

Отправлено 23 Ноябрь 2010 - 21:40

Интересный вопрос, кто подскажет как реализовать?
  • 0

#4 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 27 Ноябрь 2010 - 14:03

gaaarfild, surfer, else, если мы подумаем. PHP-скрипты всегда open source, если их не кодировать. Поэтому любой пользователь разбирающийся в PHP может за несколько часов или пары дней найти кусок кода, отвечающий за проверку лицензии и т.д. Даже многоуровневые системы проверки (например, запускается скрипт, идёт проверка, в наличии ли код проверки лицензии, если нет, то блокируем систему каким-либо образом), все их можно обойти. Поэтому делать сложные системы защиты при open source нет никакого резона, ваш скрипт всё равно обнулят и выложат в свободное пользование (если конечно ваш скрипт кому-либо будет нужен)
Если же вы будете кодировать ваш код, то система защиты проста.
Один раз в день отсылать данные ключа. Ваш сервер получает ключ, ищет в базе, получает дату окончания лицензии и отдаёт обратно скрипту, нужно ли блокировать или нет.
Сделать проверку один раз в день можно простым условием. Есть таблица с флагом проверки и датой последней проверки. Если флаг = 0 или дата последней проверки != сегодняшней, запускаем проверку и обновляем данные в таблице.
  • 0

#5 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 27 Ноябрь 2010 - 15:46

Леха ты прав, я думал про копирайт в подвале, т.е. если в footer отсутствует ссылка на мой сайт, то удаляется конфиг с хоста
  • 0

#6 gaaarfild

gaaarfild
    Topic Starter
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 29 Ноябрь 2010 - 13:24

Не не. )) Я говорил про генерацию ключей))
Мне ключи надо генерировать. Чтобы можно было клиентам присылать и система работала дальше.
  • 0

#7 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 29 Ноябрь 2010 - 13:46

а в чем сложность?


  • 0

#8 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 29 Ноябрь 2010 - 16:34

gaaarfild, что-то мне не представляется возможным реализация ключей без сервера, который эти ключи будет проверять, т.к. любой твой зашифрованный ключ тбе надо будет в твоём скрипте расшифровать, алгоритм расшифровки будет в коде скрипта, поэтому любой пользователь может расшифровать ключ, посмотреть как он выглядит, изменить данные и сделать обратный алгоритм шифровки. Вуаля, готовый ключ.
С сервером будет посложнее. Пользователю выдаётся ключ и закрепляется за отдельным доменом. Далее скрипт, установленный на домене отправляет запрос на сервер с ключем. Сервер проверяет ключ и домен(как-то так), далее даёт команду продолжать работу скрипта или нет.

Исплльзовать обратимое шифрование всё равно не удастся - раз обратимое, значит есть алгоритм как шифровки так и дешифровки. Опять же тебе придётся ложить этот алгоритм в скрипт, который будет доступен пользователям. Кому надо будет, напишут по дешифратору - шифратор :)
  • 0

#9 gaaarfild

gaaarfild
    Topic Starter
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 29 Ноябрь 2010 - 20:42

Пользователи не будут иметь доступ к коду. Для них будет доступ просто к системе.
  • 0

#10 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 29 Ноябрь 2010 - 21:53

gaaarfild, тогда чем тебе не нравится любой алгоритм из инета с солью. Раз пользователи не будут иметь доступа к коду, можно любой алгоритм, можно даже собственный написать. Только как ты собираешься привязать ключи к определенному ресурсу, а то один и тот же код заюзают на 10 твоих сайтах...
По поводу как составить ключ:
1) Собираем все данные в одну строку через разделитель
2) Шифруем строку, например с использованием простейшего алгоритма:
Сдвигаем 16-ричный код каждого символа по сетке на заданные n значений, меняем местами символы начиная с двух крайних, спускаясь к центру.

Чем плох подобный метод шифрования, при большой строке текста, большое количество символов, есть и другие методики шифрования, о них можно в книжках почитать по безопасности. Например, я точно помню, что в книжке "Современные операционные системы" - Эндрю Таненбаум (скачать) были рассмотрены различные методики шифрования, как обратимого, так и необратимого.
  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru