Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

10.12.2007, 04:33
|
|
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме: 1917742
Репутация:
541
|
|
пробелы поставь правельно, выведи запрос в строку, в эдит какойто edit3.text := 'select * from userlist where firstName' + Edit1.Text + 'and lastName' + Edit2.Text; и глянь где пробелы непарвльно стоят, скорее всего в этом трабла. с тебя ящик пива :P
|
|
|
Криптование программного кода |

10.12.2007, 07:43
|
|
Познающий
Регистрация: 27.03.2007
Сообщений: 95
Провел на форуме: 244822
Репутация:
37
|
|
Криптование программного кода
Всем здрасте!
Вот такой вопрос, есть ли какойнить код с помощью которого можно зактиптовать полностью процедуру или функцию?
Возможно ли закриптовать программный код в исходниках?
P.s. Может конечно я не туда запостил, но ответ хотелось бы увидеть в виде кода, если таковой возможен.
|
|
|

10.12.2007, 08:33
|
|
Познающий
Регистрация: 27.03.2007
Сообщений: 95
Провел на форуме: 244822
Репутация:
37
|
|
Сообщение от AciD_FreaK
Можно, ZendOptimiser самый яркий тому пример крипта исходников пхп.
это хорошо, но хотелось бы шифрануть *.pas
Эсть ли такая возможность?
|
|
|

10.12.2007, 08:39
|
|
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме: 5091304
Репутация:
1203
|
|
ТАк, первый пост я вообще не в тему запостил ... не заметил что ты про програмный код, начал уже до перла распинаться ... одумался.
Есть решения, в примеру ASProtect
https://www.softactivation.com/asp/asprotect.asp
Это как пример
FLEX LM, HASP.
Но это для теории, сломано уже все.
|
|
|

10.12.2007, 09:01
|
|
Познающий
Регистрация: 27.03.2007
Сообщений: 95
Провел на форуме: 244822
Репутация:
37
|
|
есть замечательная прога кот. шифрует только значение строковых переменных
http://www.securitylab.ru/software/234296.php
мне нада чтобы полностью процедуру и т.д.
|
|
|

10.12.2007, 19:02
|
|
Участник форума
Регистрация: 06.02.2006
Сообщений: 137
Провел на форуме: 656903
Репутация:
15
|
|
Сообщение от LEE_ROY
пробелы поставь правельно, выведи запрос в строку, в эдит какойто edit3.text := 'select * from userlist where firstName' + Edit1.Text + 'and lastName' + Edit2.Text; и глянь где пробелы непарвльно стоят, скорее всего в этом трабла. с тебя ящик пива :P
да таже хня что и была, должно же = быть вроде?
Последний раз редактировалось XIII; 10.12.2007 в 20:37..
|
|
|

10.12.2007, 22:35
|
|
Новичок
Регистрация: 09.12.2007
Сообщений: 19
Провел на форуме: 82252
Репутация:
1
|
|
как убить мышу????
|
|
|

10.12.2007, 22:59
|
|
Участник форума
Регистрация: 28.10.2007
Сообщений: 143
Провел на форуме: 913233
Репутация:
162
|
|
Сообщение от P@rtiZaN
как убить мышу????
мышиловка, отрава, ногой можно, об стену, еще вариант
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
r: TRect;
pr: PRect;
begin
r.Left := 0;
r.Top := 0;
r.Right := 0;
r.Bottom := 0;
pr := @r;
ClipCursor(pr);
end;
ну еще
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
CState: Integer;
begin
CState := ShowCursor(True);
while Cstate >= 0 do
Cstate := ShowCursor(False);
end;
|
|
|

10.12.2007, 23:47
|
|
Участник форума
Регистрация: 06.02.2006
Сообщений: 137
Провел на форуме: 656903
Репутация:
15
|
|
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Add('Select * from userlist where firstName = "'+Edit1.Text+'" and lastName = "'+Edit2.Text+'"');
вот так вроде работает, а как сделать если совпали то напишит что совпали =)
|
|
|

11.12.2007, 02:02
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от cyber$nake
Всем здрасте!
Вот такой вопрос, есть ли какойнить код с помощью которого можно зактиптовать полностью процедуру или функцию?
Возможно ли закриптовать программный код в исходниках?
P.s. Может конечно я не туда запостил, но ответ хотелось бы увидеть в виде кода, если таковой возможен.
Вот он, но алго простой =)
Код:
{ **** UBPFD *********** by kladovka.net.ru ****
>> Шифрование исполняемого файла
В данном примере реализована процедура шифрования и расшифрования одной
только процедуры "вывода сообщения".Процедура изночально не зашифровано,
что ни есть хорошо.Для того что бы процедура была при запуске программы
уже зашифрована надо написать внешнюю программку,которая ба сканировала
ехе-шник и находила определенные метки(начальную и конечную)и шифровала
бы всё между ними.Таким образом вы получите готовый ехе-шник с уже
зашифрованой(зашифроваными)процедурой. Для того чтоб некоторым умным
людям (crackers)жить было не легко,после расшифровки и выполнения процедуры
можно её опять зашифровать.
Более потробную информацию читайте в статье на «Королевства Delphi»
http://delphi.vitpc.com/mastering/safe/safe.htm
Там же читайте Открытый проект "Анти крэковые мучения"
http://delphi.vitpc.com/mastering/safe/index.htm
Зависимости: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,Dialogs, StdCtrls;
Автор: DDA, Vologda
Copyright: «Королевства Delphi» Защита от несанкционированного
использования программ, написанных на Delphi
Дата: 3 марта 2004 г.
********************************************** }
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
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;
exit; //нужно так сделать что б компилятор включил эти процедуры
metka1;//в код,т.к Delphi не вставляет в результирующий код процедуры,
metka2;//которые никогда не используются
end;
//Такое шифрование взято для примера и не рекомендуется для использования серьёзной защиты
//Также рекомендуется использовать и проверочную контрольную сумму для проверки
//целостности кода программы.
//Теперь осталось только сделать отдельную программу которая искала бы
//в этом exe файле начальную и конечную метки и шифровало бы всё между ними
//
//Но для демонстрации можно посмотреть результат и сейчас
//Запустите программу и нажмите на кнопку 1 -Должно вывестись сообщение и звук.сигнал
//А если нажать на кнопку 2 - то прцедура нажатия на кнопку 1 зашифруется
//И если после этого нажать на кнопку 1 -то должно произойти что-то не предсказуемое
//т.к процедура зашифрованна и что-то нормального вы не увидите.
//Источник информации: CopyRight «Королевства Delphi»
//"Защита от несанкционированного использования программ, написанных на Delphi"
end.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|