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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 15.08.2009, 01:15
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
Злость как защитить свой exe файл от копирования?

Здравствуйте уважаемые форумчане!
Подскажите, пожалуйста, как защитить свою программку от несанкционированного копирования. Т.е. готовый exe-файл устанавливается пользователю на компьютер. Как сделать так, чтобы при копировании на другой комп этот файл не работал, не запускался? Прописывание в реестре windows использую. Хотелось защитить посложнее. Понимаю, что все можно взломать, но как защитить хотя бы так, чтобы пришлось помучиться или поискать специалиста, который умеет.
И еще такой вопрос - возможно ли как-то "распаковать" exe-файл и просмотреть кодинг? Как и с помощью чего это делается? Возможно ли внести коррективы в такой файл, чтобы он заработал по-новой? Подскажите какую литературу почитать по этому вопросу. Большое спасибо.
Ответить с цитированием
  #2  
Старый 15.08.2009, 07:37
mskvkin mskvkin вне форума
Новичок
 
Регистрация: 31.08.2008
Сообщения: 99
Репутация: 10
Счастье

Делай привязку к железу
Ответить с цитированием
  #3  
Старый 15.08.2009, 10:01
Rat Rat вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 391
Репутация: 6078
По умолчанию

А все остальные ответы на http://cracklab.ru
Ответить с цитированием
  #4  
Старый 15.08.2009, 11:48
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
По умолчанию

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

Насколько это надежно? а то начет вопроса

возможно ли как-то "распаковать" exe-файл и просмотреть кодинг? Как и с помощью чего это делается? Возможно ли внести коррективы в такой файл, чтобы он заработал по-новой?

несовсем понятно - возможно или нет?

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

А можно ли еще сделать как-нибудь так, чтобы при попытке взлома экзешника он развалился и его невозможно было собрать?

А что можете сказать по поводу контрольной суммы? Помогает? Насколько?

Последний раз редактировалось Только учусь, 15.08.2009 в 12:05.
Ответить с цитированием
  #5  
Старый 15.08.2009, 12:08
Akzes Akzes вне форума
Прохожий
 
Регистрация: 18.02.2009
Сообщения: 27
Репутация: 13
По умолчанию

Привязка к жесткому диску...
Код:
Function TfmMain.Get_C_Tom_Number: dword;
 var
 SerialNum : dword;
 a, b : dword;
 Buffer : array [0..255] of char;
 begin
 if GetVolumeInformation('c:\', Buffer, SizeOf(Buffer),
  @SerialNum, a, b, nil, 0) then
  result:=SerialNum;
 end;
дальше уж сам думай, как будешь шифровать этот номер диска и как проверять при запуске...
Ответить с цитированием
  #6  
Старый 15.08.2009, 12:13
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
По умолчанию

Akzes, спасибо!!!
А насколько это надежно? а то никто так и не ответил.
Я так понимаю если есть возможность распаковки экзешников (дешифрации, кажется), то как ни крути, к чему не подвязывай - распакуют, подставят нужный номер и усё. Или все-таки при сборе такого файла обратно он будет работать некорректно?

Последний раз редактировалось Только учусь, 15.08.2009 в 12:19.
Ответить с цитированием
  #7  
Старый 15.08.2009, 12:43
Akzes Akzes вне форума
Прохожий
 
Регистрация: 18.02.2009
Сообщения: 27
Репутация: 13
По умолчанию

Запомни - взомать можно все...
вопрос - за сколько времени...
эта защита не против хакеров, а против обывателей (обычных пользователей)...
Ответить с цитированием
  #8  
Старый 15.08.2009, 13:35
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
По умолчанию

Да, понимаю. Хотелось бы чтоб побольше времени потратили если уж возьмутся. Была мысля продать свою программку, а вот как защитить посложнее не знаю.
От простых обывателей и прописи в реестре достаточно. Авторские права - ну есть, зарегистрирована прога, а толку? судиться? хотелось бы чтоб помучились подольше. Может что подскажете? Спасибо.

Последний раз редактировалось Только учусь, 15.08.2009 в 13:52.
Ответить с цитированием
  #9  
Старый 15.08.2009, 15:16
Akzes Akzes вне форума
Прохожий
 
Регистрация: 18.02.2009
Сообщения: 27
Репутация: 13
По умолчанию

ты видел хоть одну платную программу, для которой не было бы кряка...
я нет...
так что делай привязку как я тебе предложил, и все будет ок...
насчет надежности, смотря каким шифром возпользуешься...
у меня ключики до сих пор на прогу покупают... значит взломать - затратней, чем купить...
Ответить с цитированием
  #10  
Старый 15.08.2009, 15:53
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
По умолчанию

Цитата:
Сообщение от Akzes
насчет надежности, смотря каким шифром возпользуешься...

а каким шифром можно воспользоваться для большей надежности? Подскажи, я полный дуб в этом

Цитата:
Сообщение от Akzes
у меня ключики до сих пор на прогу покупают... значит взломать - затратней, чем купить...

клево! я тоже хочу научиться.
Спасибо, что не игнорируешь.
Ответить с цитированием
  #11  
Старый 15.08.2009, 17:28
Akzes Akzes вне форума
Прохожий
 
Регистрация: 18.02.2009
Сообщения: 27
Репутация: 13
По умолчанию

не за что...
например такой...
http://www.delphisources.ru/pages/so...ge-shacal.html
Ответить с цитированием
  #12  
Старый 15.08.2009, 18:17
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
По умолчанию

поробую разобраться.

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

Последний раз редактировалось Только учусь, 15.08.2009 в 18:23.
Ответить с цитированием
  #13  
Старый 15.08.2009, 18:59
Akzes Akzes вне форума
Прохожий
 
Регистрация: 18.02.2009
Сообщения: 27
Репутация: 13
По умолчанию

дальше тебе необходимо внимательно посмотреть на код в юните, который я тебе посоветовал...
там ты найдешь две очень интересные функции:
Код:
function EncryptData(sData, sPassword: string): string;
function DecryptData(sData, sPassword: string): string;
первая шифрует строку sData с учетом пароля sPassword и возвращает зашифрованное ее значение...
вторая дешифрует строку sData обратным обазом...
теперь как это использовать в своей проге:
я написал тебе код процедуры которая возвращает серийник винта...
теперь можно сделать авторизационную страничку где будет проверка, запускалось ли это приложение...
проверка на словах заключается в следующем:
- происходит запуск, считывается серийник и шифруется
- зашифрованный сравнивается с эталоном (например в БД, хранится номер того винта, откуда приложение было скопировано)
- если они не совпадают то значит, оно уже зарегистрировано
- если нет то предлагаем зарегистрироваться
далее надеюсь уж сам сообразишь...
программы ведь пишешь значит и защиту сделаешь...
удачи...
Ответить с цитированием
  #14  
Старый 16.08.2009, 17:50
Только учусь Только учусь вне форума
Прохожий
 
Регистрация: 15.08.2009
Сообщения: 21
Репутация: 10
По умолчанию

Akzes, цены тебе нет!
Теоретически пока понятно, сегодня/завтра приступлю к написанию кода.

Цитата:
Сообщение от Akzes
- зашифрованный сравнивается с эталоном (например в БД, хранится номер того винта, откуда приложение было скопировано)

Эталон - это получается зашифрованный серийник? Или при проверке дешифруем?

Извини, если что не так спрашиваю...
Ответить с цитированием
  #15  
Старый 16.08.2009, 18:27
Akzes Akzes вне форума
Прохожий
 
Регистрация: 18.02.2009
Сообщения: 27
Репутация: 13
По умолчанию

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


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter