Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.10.2012, 18:55
Аватар для DeOne
DeOne DeOne вне форума
Новичок
 
Регистрация: 24.09.2012
Сообщения: 86
Версия Delphi: 7
Репутация: 10
По умолчанию Лицензирование софта

Расскажите пожалуйста, как сделать, чтобы софт работал через ключ.

Вот человек скачал софт, вылезла форма с ключом, я добавил этот ключ в базу, у него программа заработала, заранее спасибо.
__________________
Только учусь Delphi...
Ответить с цитированием
  #2  
Старый 22.10.2012, 19:19
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Как уже много раз говорилось, такие проверки на раз-два отключаются заменой 2-3 байт в exe. Если интересен алгоритм, то:
1. Покупаем (или берём бесплатный, если находим) хостинг с поддержкой PHP+MySQL (можно и без MySQL, главное - поддержка любого скриптового языка).
2. Пишем скрипт на поиск ключа в базе.
3. В программе берём ключ, через любой компонент HTTP-клиента делаем запрос к серверу (http://server.name/test.php?key=LICENSE_KEY)
4. В скрипте получаем информацию о ключе (активен/заблокирован/тестовый период/показать котика)
5. Обрабатываем полученную информацию как хотим (либо запуск основной программы, либо показ окна "ваша копия неактивна", либо ещё что угодно).

Защитит от рядовых пользователей. Любой более-менее продвинутый хакер снимет такую защиту за 10 минут, из которых 5 уйдёт на перекур.
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #3  
Старый 22.10.2012, 19:22
Аватар для DeOne
DeOne DeOne вне форума
Новичок
 
Регистрация: 24.09.2012
Сообщения: 86
Версия Delphi: 7
Репутация: 10
По умолчанию

Я знаю, что это все отключается за пару минут, мне просто нужен готовый скрипт.
__________________
Только учусь Delphi...
Ответить с цитированием
  #4  
Старый 22.10.2012, 19:35
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

MySQL-таблица:
Код:
CREATE TABLE `license_keys` (`key` varchar(255) NOT NULL PRIMARY KEY)
PHP-скрипт:
PHP код:
mysql_connect('localhost','user','password','db_name');
$r mysql_query("select count(*) from `license_keys` where `key`='".addslashes($_GET['key'])."'");
echo 
mysql_result($r,0,0); // Выведет 1 если ключ есть в базе, и 0 если нет 
Код программы:
Код:
uses IdHTTP;

var h: TIdHTTP; s, key: string;
begin
  key := Get_key_function; // Получаем ключ
  h := TIdHTTP.Create;
  s := h.Get('http://server.name/check.php?key='+key);
  if s='1' then begin
    ShowMessage('Программа активирована, всё ОК!');
  end else begin
    ShowMessage('Зарегистрируйте этот ключ у разработчика:'#10#13+key);
  end;
end;
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj

Последний раз редактировалось PhoeniX, 22.10.2012 в 19:38.
Ответить с цитированием
Этот пользователь сказал Спасибо PhoeniX за это полезное сообщение:
DeOne (22.10.2012)
  #5  
Старый 22.10.2012, 19:36
Аватар для DeOne
DeOne DeOne вне форума
Новичок
 
Регистрация: 24.09.2012
Сообщения: 86
Версия Delphi: 7
Репутация: 10
По умолчанию

Спасибо большое.
__________________
Только учусь Delphi...
Ответить с цитированием
  #6  
Старый 22.10.2012, 19:51
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Еще вариант:
1. закидываем рабочий код программы в базу на сервере,
2. шифруем лицынзённым ключом, при запуске проги обращаемся к серверу с этим ключом,
3. скачиваем рабочий код,
4. расшифровываем - работаем.
5. ?????
6. PROFIT
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #7  
Старый 22.10.2012, 20:19
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
вариант
Предложил - давай код
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #8  
Старый 22.10.2012, 20:53
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Ну у меня есть в принципе, но там рантайм компиляция в страницу с правами "КАЗНИТЬ" идет.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:47.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter