Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизВозможности синтаксиса и компиляьора. Найти похожие ветки
← →
Pa5ha (2004-03-18 16:17) [0]Всем привет! У меня необычный вопрос, не поможете ли прогой, которая из нормального кода делает все неразрывным блоком и все символы заменяет на непонятный эквивалент.
← →
WebErr © (2004-03-18 16:31) [1]Пока не конец файла считывать символ применять к нему NOT или XOR к какой-нибудь константе, потом записать полученный символ, а вот что такое неразрывный блок - не знаю! :)
← →
Алхимик © (2004-03-18 17:26) [2]WinRar.exe
← →
Pa5ha (2004-03-18 19:03) [3]Нет, надо не зашифровать, а сделать так, чтоб он компилировался, но при этом выглядел, как shit. Я тут неправильно выразил свою мысль, короче надо так, чтоб было по неск. операторов в одной строке без пробелов и проч. разделителей, все символы, которые можно заменить на многосимволные аналоги и т.д. Проги вроде есть, которые так делают.
← →
Amoeba © (2004-03-19 11:57) [4]А зачем нужно такое извращение? И чем собираешься компилировать исходный текст после его ропуска через такую мясорубку?
← →
Тимохов © (2004-03-19 12:12) [5]Я так понимаю, что это своего рода защита.
Я лет 15 назад так свое распространял.
Пользуйся, компилируй, а править - ни-ни.
Только отстой это имхо
← →
Digitman © (2004-03-19 12:17) [6]
> У меня необычный вопрос
не то что бы "необычный" - вообще непонятный !
речь идет о КАКОМ коде ? о коде-исх.тексте или о маш.коде ?
← →
Тимохов © (2004-03-19 12:21) [7]раньше такая прога была из
var
i: integer;
a: array [0..1] of integer;
b: integer;
begin
for i := 0 to 1 do
begin
if a[i] > 0 then b := b + a[i]
end;
end;
могла сделать что-то типа
var _______a0234292424323420923525:integer;_e203420412491249123491234124:array[0..1]ofinteger;_b1313134241242414b:integer;be gin for _______a0234292424323420923525:=0 to 1 do begin if _e203420412491249123491234124[i]>0 then _b1313134241242414b:=_b1313134241242414b+_e203420412491249123491234124[i];end;end;
т.е. чтобы править код было не реально.
Наверное это автор спрашивает.
← →
Юрий Зотов © (2004-03-19 12:31) [8]При наличии препроцессора - нет проблем. При его отсутствии - есть проблемы.
← →
Игорь Шевченко © (2004-03-19 13:16) [9]Есть такая программа, в сети была (разбирая свою свалку я на нее наткнулся, но забыл название)
← →
Pa5ha (2004-03-19 20:29) [10]
> var _______a0234292424323420923525:integer;_e203420412491249123491234124:array[0..1]ofinteger;_b1313134241242414b:integer;be
> gin for _______a0234292424323420923525:=0 to 1 do begin
> if _e203420412491249123491234124[i]>0 then _b1313134241242414b:=_b1313134241242414b+_e203420412491249123491234124[i];end;end;
Вот, человек меня понял, а то непонятно, непонятно.
А где мона взять?
← →
vuk © (2004-03-19 21:21) [11]Обычно программы такого типа называются obfuscator. Поищите где-нибудь на поисковике по сочетанию "Delphi obfuscator" может что и найдется.
← →
Gero © (2004-03-19 22:22) [12]Если есть obfuscator, до должен быть и deobfuscator.
Т.е вводите что-то типа:
var _______a0234292424323420923525:integer;_e203420412491249123491234124:array[0..1]ofinteger;_b1313134241242414b:integer;be gin for _______a0234292424323420923525:=0 to 1 do begin if _e203420412491249123491234124[i]>0 then _b1313134241242414b:=_b1313134241242414b+_e203420412491249123491234124[i];end;end;
А получаете:
var
i: integer;
a: array [0..1] of integer;
b: integer;
begin
for i := 0 to 1 do
begin
if a[i] > 0 then b := b + a[i]
end;
end;
:)
А если даже и нет такой проги, то кому очень надо будет, напишет.
Никуда такая система защиты не годится.
Лучше уже .dcu распространять.
← →
Игорь Шевченко © (2004-03-19 22:35) [13]Gero © (19.03.04 22:22)
Это необратимый процесс :)
← →
EXE7 (2004-03-20 14:27) [14]>Пользуйся, компилируй, а править - ни-ни.
если использовать можно только после компила,
так почемуже просто нескомпилить в .dcu,
как все делают и
можно юзать и править никак,
а транслиты в кодах,можно выдернуть,
маш нет
← →
Pa5ha (2004-03-20 15:46) [15]
> obfuscator
Сенкс, поищу. Просто надо, а самому писать такое лень, хоть и мог бы.
> Это необратимый процесс :)
Хочу добавить, что ни названия переменных, ни коментарии после такого не остаются. А если вы способны разобрать массивный код вот в таком виде, то флаг вам в руки. Я, даже если надо будет, разбирать такое не буду.
← →
EXE7 (2004-03-21 13:37) [16]>вы способны разобрать массивный код вот в таком виде
а что мешает сделать авто-распаковшик подобного трас-кода,
машкоды криптованые тоже разбирают
лучще dcu
делаете .pas модуль компилите,получаетете dcu
его в папку к проектам
в uses пишете название -имя dcu
все пользуйтесь,только хелп сделайте какие есть функции
TCryptLib знаете там dcu,res( kbcrypt.dcu, kbcrypt.res,
lzh.dcu, zlib.dcu) и в хелпе описание
функц
TCryptLib = class(TComponent)
public
// Методы класса
procedure EncryptFile; // шифрация файла
procedure DecryptFile; // дешифрация файла
function EncryptStr(StrToEncrypt : string ) : string; // шифрация строки
может вам надо комуто показать .pas
и скомпилить на глазах,типа мой исходник?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.039 c