Сейчас на форуме: igorcauret, Rio (+6 невидимых) |
![]() |
eXeL@B —› Вопросы новичков —› Испорченный алгоритм хеширования? |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 31 января 2015 23:47 · Личное сообщение · #1 Добрый вечер! Ковыряю небольшую программульку, в которой защита основана на проверке контрольной суммы исполняемого файла. Алгоритм хеширования SHA-512, но у меня почему-то не сходятся хеши генерируемые программой и генератором онлайн. Вообще в программе также используется SHA-1\256\384, но лишь 1\256 отрабатываю правильно. Возможна ли порча алгоритма или же я что-то неправильно делаю? Начало хеширования: Code:
Хеширование: Code:
![]() ![]() |
|
Создано: 03 февраля 2015 21:13 · Личное сообщение · #2 zds пишет: в итоге, быстрее оказалось перенести код asm вставками Ну это как самый крайний вариант. Djeck пишет: Хоть бы погуглил, что это такое Да встречал я раньше этот HiAsm, раз конструктор, то пусть будет конструктор. В папке "code" лежит юнит MD5.pas, открываем, портим. У меня теперь другая проблема, начал сравнивать хеширование проги с модулем SHA из DCPCrypt, при компрессии OllyDbg выдает разные результаты выполняя одну и ту же команду Code:
Соответственно за 64 раунда получается много несовподений. ![]() |
|
Создано: 03 февраля 2015 21:43 · Личное сообщение · #3 |
|
Создано: 03 февраля 2015 22:10 · Личное сообщение · #4 |
|
Создано: 03 февраля 2015 22:39 · Личное сообщение · #5 |
|
Создано: 03 февраля 2015 22:49 · Личное сообщение · #6 |
|
Создано: 03 февраля 2015 22:59 · Личное сообщение · #7 чудес не бывает мне лень, но думаю кто то сможет набросать вам мини прожку в которой выполняется SHRD и выкидывать результат на экран что бы уж точно знать глючит проц или где то что то висит и перехватывает ![]() |
|
Создано: 03 февраля 2015 23:14 · Личное сообщение · #8 |
|
Создано: 03 февраля 2015 23:23 · Поправил: reversecode · Личное сообщение · #9 |
|
Создано: 03 февраля 2015 23:47 · Личное сообщение · #10 |
|
Создано: 04 февраля 2015 01:21 · Личное сообщение · #11 Ну пздц dex015 Внимательно посмотри на свой скрин, в eax 5C12E2EA а не 5C12E3EA reversecode пишет: чудес не бывает +1 Добавлено спустя 1 минуту p.s. В реверсе внимательность - одно из важнейших качеств. ----- ds ![]() |
|
Создано: 04 февраля 2015 01:41 · Личное сообщение · #12 |
|
Создано: 05 февраля 2015 00:48 · Личное сообщение · #13 |
|
Создано: 05 февраля 2015 00:50 · Личное сообщение · #14 |
|
Создано: 05 февраля 2015 01:26 · Личное сообщение · #15 |
|
Создано: 18 февраля 2015 21:07 · Личное сообщение · #16 Разобрал всю защиту проги, остался маленький, но очень весомый нюанс. Прога генерит случайное девятизначное число, а потом преобразует его в какое-то дикое число с точкой, например: Code:
Каким-то образом сервер преобразует это дикое число в девятизнак и присылает его хеш. Пытался отправлять серверу более приземлённые числа, но никак не могу понять, что за математика: Code:
Подскажите кто чем может. ![]() |
|
Создано: 18 февраля 2015 21:18 · Личное сообщение · #17 |
|
Создано: 18 февраля 2015 23:21 · Личное сообщение · #18 |
|
Создано: 18 февраля 2015 23:31 · Личное сообщение · #19 DimitarSerg пишет: sha1 ("689") = 53c53c5d2b630c0d912264bb9edf8cf6f0afa260 Всё верно, но вот как из 2200 получить 689, в этом и вопрос. Добавлено спустя 5 минут Правлю в проге случайное число на 689, после каких-то преобразований на сервер отправляется 2200.58823529412, при ответе сервера хеш 53c53c5d2b630c0d912264bb9edf8cf6f0afa260, вывод, сервер откинул то, что после точки, вычислил как-то из 2200 число 689 и сгенерировал хеш. ![]() |
|
Создано: 20 февраля 2015 01:57 · Личное сообщение · #20 |
|
Создано: 20 февраля 2015 07:11 · Поправил: unknownproject · Личное сообщение · #21 |
<< . 1 . 2 . |
![]() |
eXeL@B —› Вопросы новичков —› Испорченный алгоритм хеширования? |