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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Защита кода программы? Как зищитить код? зашифровать... 
:(
    Опции темы
ConstantinXXX
Дата 26.8.2008, 02:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 27.5.2006
Где: U.S.A. :-)

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



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

ПРимерно такие статьи читал.

Код

метка №1
 <Код который надо зашифровать>
Метка№2

[Процедура расшифровки.]

--------------------
Как вы относитесь к девушкам, которые курят сигареты?Как не ослепнуть за компьютером© ORENCODE.info
PM MAIL WWW   Вверх
Poseidon
Дата 28.8.2008, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

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



Используй пакеры и крипторы. Чем менее распространен криптор, тем он надежнее smile


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Frees
Дата 28.8.2008, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



в drkb статья есть "Шифрование исполняемого файла"


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Ockonal
Дата 28.8.2008, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Smile
*


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

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



Цитата(Frees @ 28.8.2008,  10:03)
в drkb статья есть "Шифрование исполняемого файла"

Не можете ссылку подсказать?
--------------------
Ум заключается не только в знании, но и в умении прилагать знание на деле.Самое лучшее из всех доказательств есть опыт.Каждому человеку свойственно ошибаться, но никому, кроме глупца, несвойственно упорствовать в ошибке.
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
Poseidon
Дата 28.8.2008, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

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



Цитата(Frees @  28.8.2008,  09:03 Найти цитируемый пост)
в drkb статья есть "Шифрование исполняемого файла"
У же есть и в FAQ  smile 


Это сообщение отредактировал(а) Poseidon - 28.8.2008, 09:52


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
ConstantinXXX
Дата 28.8.2008, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 27.5.2006
Где: U.S.A. :-)

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



Poseidon я знаю, что есть много протектеров и т.п. с виртуальной машиной и т.п. Просто хочю, сам попробывать. Например зашифровать сам, а потом протектором сверху. Думаю так будет надежней. smile

Добавлено @ 23:20
Только проблемма в том, что зашифровать как там показанно, а в том как расшифровать.

Код

procedure metka1;

//Начальная метка - нужна что бы находить потом в exe файле эти символы и знать

//откуда начинать шифровать

//Здесь метка представляет из себя десятичные числа от 0 до 256 через запятые

//Если метка 50,60,70,80,90 то это соответствует символам 2<FPZ

//Кстати, такого кол-во символов в метке может быть мало и лучше использовать больше

//Т.к если программа большая то такие последовательности могут встретиться не один раз

begin

asm

   DB 50,60,70,80,90 //2<FPZ это метка начальная

end;

 

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

beep;

ShowMessage('Период использования программы истёк!');

end;

 

procedure metka2;

//Конечная метка - нужна чтобы знать до куда нужно шифровать в файле и

//докуда расшифровывать в памяти

begin

asm

   DB 68,68,67,45,61 //DDA-= это метка конечная

end;

end;

 

procedure TForm1.Button2Click(Sender: TObject);

//Процедура Расшифрования(В даном примере и зашифрования)

var

ptrAddr: Pointer; {для Адреса процедуры вывода сообщения}

dwOldProtect: DWORD;

begin

ptrAddr := @TForm1.Button1Click; //Получаем адрес процедуры вывода сообщения

VirtualProtect(@TForm1.Button1Click, 2048, PAGE_READWRITE, @dwOldProtect);

//2048 это размер в байтах с которыми можно работать(по моему)

//Если процедура большая то нужно подбирать соответствующий размер

while ptrAddr <> @metka2 do

   //шифрование(слабое) выполняем пока не дойдем то конечной метки

begin

   Byte(ptrAddr^) := Byte(ptrAddr^) xor $41;

   //каждый байт в памяти ксорится с кодом 65'A'(к примеру)

   //Используйте более надёжные алгоритмы шифрования

   inc(Integer(ptrAddr));

end;


 В ДБРК показанно, как шифровать после запуска. А как написать программу которая будет щифровать то место от одной метки до другой вне программы. т.е. внешнию прогу. Я так понял, что если б сразу было б зашифрованно между metka1; и metka2; процедура, то при нажитии на кнопку Button2Click произошло б расшифровывание. smile



Это сообщение отредактировал(а) ConstantinXXX - 28.8.2008, 23:23
--------------------
Как вы относитесь к девушкам, которые курят сигареты?Как не ослепнуть за компьютером© ORENCODE.info
PM MAIL WWW   Вверх
ne0n
Дата 29.8.2008, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


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

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



Насколько мне не изменяет память, в Королевстве Делфи была опубликована статья, про такое шифрование...были разжеванны все моменты. так что ищи smile

Добавлено через 5 минут и 56 секунд
вообщем не оплинился поискать http://www.delphikingdom.com/asp/viewitem.asp?catalogid=775
PM MAIL ICQ   Вверх
SneG0K
Дата 29.8.2008, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Max Mara
***


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

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



Цитата(Ockonal @  28.8.2008,  08:33 Найти цитируемый пост)
Не можете ссылку подсказать? 

drkb.ru и еще вот хорошая ссылочка rouse.drkb.ru
PM WWW Skype   Вверх
ne0n
Дата 29.8.2008, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


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

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



Цитата(SneG0K @  29.8.2008,  11:07 Найти цитируемый пост)
вот хорошая ссылочка rouse.drkb.ru


ммм каким образом хомпага Роса относиться к теме данного вопроса? непомню чтоб у него были материалы похожей тематики.

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

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

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

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


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

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


 




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


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

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