Сейчас на форуме: _MBK_, ManHunter, Magister Yoda, rtsgreg1989 (+9 невидимых)

 eXeL@B —› Основной форум —› CRC вопрос
Посл.ответ Сообщение


Ранг: 70.5 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 26 июля 2005 15:19
· Личное сообщение · #1

Хочу шифрануть определённую инструкцию ,но мне нужно знать CRC определённого участка кода чтоб этим значением её расшифровать, и затем её исполнить
Низнаю отчего оттолкнуться . Подскажите anybody



Ранг: 160.1 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 26 июля 2005 15:39
· Личное сообщение · #2

напиши теперь по-русски что ты хочешь сделать.




Ранг: 70.5 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 26 июля 2005 15:49 · Поправил: 6aHguT
· Личное сообщение · #3

Допустим я хачу зищитить 4 байта кода од дизасма
Мне нужно чтобы они расшифровались только перед исполнением.
Ещё есть участок кода
Так вот мне надо чтобы моя инструкция расшифровывалась CRC этого учаска кода кода.
Но для этого мне нужно шифрануть эти 4 байта , а для того чтобы зашифровать их мене мужно знать значение CRC участка кода.
Так понятно ? Лучше чтоб всё это было на асме




Ранг: 78.6 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 26 июля 2005 16:51
· Личное сообщение · #4

ему нужно нахождение CRC наверно



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 26 июля 2005 16:57 · Поправил: Bitfry
· Личное сообщение · #5

6aHguT
То есть у тебя есть X - сумма, Y - участок кода, а нужно найти функцию?
Так бы и сказал.
ЗЫ понятия не имею как это сделать хитрее чем - или +

-----
Всем привет, я вернулся




Ранг: 12.1 (новичок)
Активность: 0=0
Статус: Участник

Создано: 26 июля 2005 16:58
· Личное сообщение · #6

Идея такая (первое, чё в голову пришло).

1)Берёшь опкоды комманд (тех, от которых надо брать CRC), преобразуешь их в ОДНО число(напр. ксоришь друг с другом), от него и вычисляешь CRC. 2)Потом шифруешь нужный код. Когда понадобится делаешь (1), и код(2) расшифровываешь...




Ранг: 70.5 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 26 июля 2005 17:08
· Личное сообщение · #7

n0thing [REVENGE]
Ок спасибки то что надо, хоть ктото меня понял буду пробовать ...
Советы всё ещё принимаються ...




Ранг: 260.3 (наставник), 2thx
Активность: 0.120
Статус: Участник
PPC-PROTECT author

Создано: 26 июля 2005 17:53
· Личное сообщение · #8

мда ))) скока умных мыслей, я балдею ))) может ему исчо дизасемблер длин инструкций сделать, потом все длины сложить ))

CRC32 proc
; eax = адрес участка кода
; ecx = размер участка
mov esi,eax
mov edi,ecx
cld
xor ecx,ecx
dec ecx
mov edx,ecx
NextByteCRC:
xor eax,eax
xor ebx,ebx
lodsb
xor al,cl
mov cl,ch
mov ch,dl
mov dl,dh
mov dh,8
NextBitCRC:
shr bx,1
rcr ax,1
jnc NoCRC
xor ax,08320h
xor bx,0EDB8h
NoCRC: dec dh
jnz NextBitCRC
xor ecx,eax
xor edx,ebx
dec edi
jnz NextByteCRC
not edx
not ecx
mov eax,edx
rol eax,16
mov ax,cx
ret
CRC32 endp

данная процедура посчитает CRC необходимого участка, в EAX будет значение... дальше используй его по своему усмотрению ...

-----
Пиво, сиськи, транс





Ранг: 70.5 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 26 июля 2005 18:20
· Личное сообщение · #9

-= ALEX =-
Респект коротко и ясно ... а главное то что надо


 eXeL@B —› Основной форум —› CRC вопрос
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати