Модераторы: Snowy, Poseidon, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как организовать активацию программы... ...через Интернет? 
:(
    Опции темы
navodri
Дата 15.6.2010, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Собственно сабж.

 smile 

Это сообщение отредактировал(а) navodri - 16.6.2010, 22:52
PM MAIL WWW   Вверх
kami
Дата 17.6.2010, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

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



Смотря что подразумевается под активацией.
Как это должно выглядеть?
PM MAIL WWW   Вверх
navodri
Дата 17.6.2010, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Да в том то и дело, что толком сам не знаю. 
Хотелось бы услышать ваши предложения и увидеть возможные варианты кода?

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

Какие будут соображения?
PM MAIL WWW   Вверх
Keeper89
Дата 17.6.2010, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

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



Я бы советовал пока использовать сторонние решения, типа http://www.softactivation.com/asp/about.asp


--------------------
PM MAIL WWW   Вверх
Akella
Дата 21.6.2010, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Можно с помощью ASProtect. Но я не знаю как. При установке или при запуске сам ASProtect так можно активировать (через интернет).

А вообще есть спец. раздел:
http://forum.vingrad.ru/forum/tech-piracy-...t-software.html

PM MAIL   Вверх
navodri
Дата 21.6.2010, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Это всё понятно. Сторонние средства - штука не плохая... 

Но меня интересует собственная защита, с активацией на своем сайте. Выслушаю способы решения?
PM MAIL WWW   Вверх
Akella
Дата 25.6.2010, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



у тебя и сайт на дельфи?

Добавлено через 1 минуту и 32 секунды
Написать нужно кроссплатформенную библиотеку, которая будет вызываться по ссылке веб сервером.
В дельфи есть такие приложения, но я не уверен, что под линуксом они прокатят. Мало того, если тебе нужно на стандартном хостинге, то ты не сможешь использовать такую Dll
PM MAIL   Вверх
navodri
Дата 26.6.2010, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата

Написать нужно кроссплатформенную библиотеку, которая будет вызываться по ссылке веб сервером.

Это уже интересно. А что будет делать сама библиотека?

---------------------

Более всего меня заинтересовала активация через инетрнет, организованная, например, ABBYY FineReader'идером. Вот такое бы организовать! То что и это ломается - понятное дело. Но всё же труднее.
PM MAIL WWW   Вверх
casinosoftguru
Дата 1.7.2010, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



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

перед скачиванием софта даешь пользователю зарегистрироваться с активацией емейла на своем сайте
как активируется, высылаешь ему серийный номер

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

вот как то так..
PM MAIL   Вверх
Antony41
Дата 1.7.2010, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Как на счёт того что бы продавать коды активации на определенный срок или пожизненный?
Есть у тебя отдельная программа кряк так сказать в котором ты указываешь срок в днях например создать ключ на 30 дней, код ты можешь придумать сам, например ты ввёл код XXXX-FFFF-DDDD-SSSS, этот код шифруется твоим методом шифрования, и обрезается до определенного кол-ва символов и получается имя файла например E225E14E222E33E555E44E55E66E45.key и E225E14E222E33E555E44E55E66E45.inf 

в файле key содержится информация типа:
Activate=0
Period=30
в файле inf просто содержится информация и код доступа:
пароль: XXXX-FFFF-DDDD-SSSS

файл key закачиваешь на сервер ftp и к нему существует адрес через http например http://mysite/specfolder/keys/E225E14E222E...44E55E66E45.key
теперь самое главное в файле E225E14E222E33E555E44E55E66E45.key всё зашифровано и ключ для расшифровки XXXX-FFFF-DDDD-SSSS, по которому так же программа будет получать адрес к имени файла.

Пользователь запускает программу и программа не находит доп. информационный файл (см. ниже) в своей папке, следовательно регистрация слетела или программа не была зарегистрирована, показываем сообщение и два варианта:
1 регистрация программы
2 восстановление регистрации по коду активации

пользователь знает что он впервые включил её, значит выбирает регистрация программы, далее ему предлагается купить ваши коды, на мес на 2 мес, и тд. он покупает у вас этот код XXXX-FFFF-DDDD-SSSS и вводит в поле ввода кода,
программа шифрует код по вашей формуле и знает имя файла E225E14E222E33E555E44E55E66E45.key (соответственно, если код не правильный, то программа не найдёт файл, следовательно код не верный, она сама не знает какой код нужно ввести для получения доступа smile ), далее делается get запрос и если файл на сервере найден, то начинаем его читать предварительно расшифровав его,

Первый параметр
Activate=0 //соответственно если 1, то уже активирован и параметры ниже будут другими
Period=30

Параметры правильные, и мы создаём новый файл со след. параметрами

Activate=1 //1 - значит уже зарегистрирован
RegPeriod=10.05.2010 //сюда пишется дата регистрации
ExpPeriod=9.06.2010 //сюда пишется заканчивающийся срок активации
//ниже можно ввести доп. информацию о пользователе его номер тел. емайл сайт icq и тд.

этот файл с таким же именем E225E14E222E33E555E44E55E66E45.key закачиватся на сервер, подменяя старый. И в папке с программой создаётся файл ProgramNameRegFile.key, в котором содержится код активации
Code=XXXX-FFFF-DDDD-SSSS
Всё!

Далее
Пользователь запускает программу, программа проверяет есть ли регистрационный файл на компьютере ProgramNameRegFile.key, в котором содержится наш код доступа XXXX-FFFF-DDDD-SSSS,
если файл есть, то программа считывает его и по вашей формуле шифрует код, получая при этом имя к файлу ключей http://mysite/specfolder/keys/E225E14E222E...44E55E66E45.key, делает get запрос к этому файлу и получает данные, если в данных указано activate=1, тогда мы знаем что программа зарегистрирована, остаётся проверить не истёк ли срок активации, (тут есть небольшая загвоздка с проверкой времени время не должно браться с компьютера, нужно использовать сторонний сервис, например получать время при регистрации и при каждом запуске нужно с серверов синхронизации времени.), делаем синхронизацию и узнаём настоящее время, проверяем второй параметр если реальное время <= ExpPeriod (время когда регистрация закончится), тогда разрешаем доступ, иначе говорим что срок истёк и показываем шаг третий продление регистрации)))) если ты конечно не собираешься использовать ключи с определенном сроком действия, то у тебя всё намного проще... 
Забыл еще добавить, при восстановлении пароля по коду активации возникла проблема восстановления ключа активации множествам пользователей, что позволит сидеть неограниченному числу пользователей на одном ключе, так вот для этого при сборе информации я добавил машинный код, это ID материнской платы, так же этот код проверяется при каждом обращении к файлу ключей, и если этот код не тот что был указан в файле при регистрации, тогда пользователь пытается восстановить ключевой файл с чужого компьютера. 

В этой программе я использовал именно такой способ http://flysoftware.ucoz.ru/ASK.rar

А вообще если используется клиент серверное приложение, то есть способ, который намного проще, при этом безопасно и уникально.

Это сообщение отредактировал(а) Antony41 - 1.7.2010, 16:57
PM MAIL   Вверх
navodri
Дата 1.7.2010, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



2 Antony41, casinosoftguru

Сенкс! Очень дельные рекомендации. 

Особенно интерсна тема от Antony41. Воспользуюсь обязательно! Возможно, это то, что я и хотел реализовать. Всем спасибо!



PM MAIL WWW   Вверх
Akella
Дата 2.7.2010, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(navodri @  26.6.2010,  14:24 Найти цитируемый пост)
Это уже интересно. А что будет делать сама библиотека?

А библиотека будет генерировать активационные данные, например имя и ключ.
PM MAIL   Вверх
ZaDoXliK
Дата 14.7.2010, 06:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



В программе:
Код

Function check: boolean;
Begin
 HTTP := TIDHTTP.Create(application);
 HTTP.Port := 80;
 k.Text := HTTP.post('Http://твой сайт/auth.php', st);
 http.Free;
 If Pos('Register', K.Text) = 0 Then
  Begin
   Result := False;
   k.Free;
  End
 Else
  Begin
   Result := True;
   k.Free;
  End;
End;


На сайте:
Код

<?
IF (file_exists($_POST[KEY]))
{
echo 'Register';
$f=fopen($_POST[KEY],'a+');
fwrite($f,$_SERVER[REMOTE_ADDR].'=');
fwrite($f,$_POST[PCNAME].'=');
fwrite($f,$_POST[TIME].'
');
fclose($f);}
?>


Пример убогий, но суть такова: у клиента есть ключ который он приобрел у тебя, при запуске программа соединяется с твоим сайтом и проверяет ключ на валидность. Так же если ключ валидный то на сайте у тебя будет создаваться файл отчёта. С какого IP запускалась пога, название компа и время запуска программы...

Код бородатый, делалось это давно, всего уже не помню.

Поразмышляй...

Это сообщение отредактировал(а) ZaDoXliK - 14.7.2010, 06:50
PM MAIL   Вверх
casinosoftguru
Дата 15.7.2010, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



ZaDoXliK
ага
вставляешь в hosts 
http://твойсайт 127.0.0.1
ставишь денвер
сниффишь данные что передаются от реального сервака к софту, пишешь скрипт
запускаешь
автор досвидания)
PM MAIL   Вверх
ZaDoXliK
Дата 21.7.2010, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(casinosoftguru @ 15.7.2010,  14:38)
ZaDoXliK
ага
вставляешь в hosts 
http://твойсайт 127.0.0.1
ставишь денвер
сниффишь данные что передаются от реального сервака к софту, пишешь скрипт
запускаешь
автор досвидания)

В таком случае чем бы ты программу не защитил, всё равно любой "опытный" пользователь найдет способ как обойти защиту.
Из всего что я встречал, по сложности Armadillo наверно на первом месте, тем более свежие версии.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

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


 




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


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

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