Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.07.2010, 17:25   #1
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию защита от копирования

Вобщем ситуацию такая..

Есть программа, разработанная для одной компании..

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

тоесть купил программу установил на свой комп, больше никуда не сможешь

помогите придумать алгоритм (мь с привязкой к железу)
Moonquake
phphel вне форума Ответить с цитированием
Старый 12.07.2010, 17:38   #2
Dionix
Пользователь
 
Регистрация: 04.10.2009
Сообщений: 38
По умолчанию

я считаю что такого нет...потому что нет связи с компьютерами! тоесть на одном компе поставил, и программа должна изменится так чтобы её не могли копировать, а на диске изменять что-либо невозможно. разве что найти какой нибудь хост и когда юзер запускает программу - она автоматом регистрируется на сервере этого хоста, и когда приходит такой же запрос - отрубать программу. ну это возможно только при наличии интернета..а так всякими серийниками пользоватся надо..но могу дать 90% что придумают кряк
Dionix вне форума Ответить с цитированием
Старый 12.07.2010, 17:47   #3
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

На счет идентификации по интернету была мысль (тем более что php знаю хорошо)
Но заказчику такое не понравилось.

Вообще по словам заказчика программа будет для такого круга людей, которые с компьютером на "Вы", тоесть скорее всего не смогут сделать кряк..

так что если можно какой нить алгортим посоветуйте
Moonquake
phphel вне форума Ответить с цитированием
Старый 12.07.2010, 18:02   #4
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

Вобщем почитав тут форумы, возникла идея

что если получить sn винта и сгенерить на его снове ключ?
{ серийный номер диска C: }
Код:
procedure GetDiskSerialNumber(var VolumeSerialNumber:longword);
var
  Buffer1 : array[1..100] of char;
  Buffer2 : array[1..100] of char;
  DW1,DW2 : dword;
begin
  GetVolumeInformation('C:\',@Buffer1[1],SizeOf(Buffer1),
                      @VolumeSerialNumber,DW1,DW2,@Buffer2[1],SizeOf(Buffer2));
end;
Тоесть пользователь запустил программу.Высветилось окошко,
ваш номер - 242342424, отправьте его на email и получите серийный код

вот теперь вопрос, как реализовать на основе sn винта уникальный ключ?
Moonquake
phphel вне форума Ответить с цитированием
Старый 12.07.2010, 18:36   #5
zumm
БохЪ
Форумчанин
 
Аватар для zumm
 
Регистрация: 30.09.2009
Сообщений: 724
По умолчанию

тут прийдется еще и диски индексировать и потом уже отсылать этот индекс на емейл, и вот тебе и весь алгоритм, какую нибудь чушь с серийником намути и получаешь ключ.
В планах порабощение вселенной...
zumm вне форума Ответить с цитированием
Старый 12.07.2010, 18:59   #6
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

В планах работы со строками я ламер..

Подскажите функцию, вот к примеру мы имеем строку "234242342"
что бы получить ключ на ее основе...кому не трудно
Moonquake
phphel вне форума Ответить с цитированием
Старый 12.07.2010, 19:06   #7
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Цитата:
Сообщение от phphel Посмотреть сообщение
В планах работы со строками я ламер..

Подскажите функцию, вот к примеру мы имеем строку "234242342"
что бы получить ключ на ее основе...кому не трудно
Используй любой алгоритм шифрования. Примеров туча на ДелфиВорд тоже...
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума Ответить с цитированием
Старый 12.07.2010, 19:27   #8
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

Ок, спасибо поищу
Moonquake
phphel вне форума Ответить с цитированием
Старый 12.07.2010, 19:58   #9
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

Вобщем нашел кое что, http://www.delphilab.ru/content/view/251/1/..

проверил, все работает. может кому и пригодится.
Moonquake
phphel вне форума Ответить с цитированием
Старый 13.07.2010, 09:42   #10
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

Phphel
Цитата:
Данное шифрование считается ненадёжным, если пароль заложен в программу. Если пароль вводится пользователем, то стойкость зависит от сложности пароля.
Данный пример создан для удобства хранения шифрованных данных в реестре или текстовых и ini файлах. То есть, шифрованные бинарные данные возвращаются в текстовом HEX виде.
В представленом ниже коде всего две функции:
тот же самый ini или реест это уже не надёжна, раз ты пишиш для не опытных юзверей то лучше данные держать в самой программе, тоесть он введёт какие либо данные, а они запишутся в сам exe файл, не думаю что юзверь полезет туда отладчиком, ходя даже если полезет то отладчик можно будет обламать, про это и про то как в программу вписывать данные тоже много примеров в ру нете, если будет халявное время у мня то выложи ссыли если они тебе понадобятся
bulldog5293 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Защита программы от копирования Headless Свободное общение 6 03.03.2010 15:46
Защита от копирования Яр|/||< (^_^) Безопасность, Шифрование 5 24.08.2009 17:39
Защита от копирования. <Dusha> Общие вопросы C/C++ 4 15.09.2008 06:53
защита приложения от копирования flaxe Общие вопросы Delphi 2 19.11.2006 22:26