Посл.ответ |
Сообщение |
Ранг: 137.9 (ветеран), 45thx Активность: 0.08↘0 Статус: Участник
|
Создано: 10 июня 2012 14:48 · Поправил: yanus0 · Личное сообщение · #1
Здравствуйте. Подскажите как реверснуть алгоритм. И какие есть подходы к реверсу подобного. Как бы вы решали его? Тоесть сначала розбили на составные или как то по другому. С помощью математических пакетов можно сделать реверс? Алгоритм под Б64. Нужно найти начальный масив имея конечный масив.
| Сообщение посчитали полезным: |
|
 Ранг: 462.8 (мудрец), 468thx Активность: 0.28↘0 Статус: Участник Only One!
|
Создано: 10 июня 2012 15:40 · Поправил: OnLyOnE · Личное сообщение · #2
Сразу в раскодированном виде выложить было в лом?
----- aLL rIGHTS rEVERSED! | Сообщение посчитали полезным: |
Ранг: 590.6 (!), 408thx Активность: 0.36↘0.18 Статус: Модератор
|
Создано: 10 июня 2012 16:45 · Личное сообщение · #3
yanus0А чо, самим нынче вообще ничего не положено делать? Типа вывод hex-rays в .net перекинул и доволен? Включаем ручки, голову и оптимизируем код для начала. Обычная перепаковка битстрима.
----- старый пень | Сообщение посчитали полезным: |
Ранг: 51.8 (постоянный), 58thx Активность: 0.03=0.03 Статус: Участник
|
Создано: 10 июня 2012 16:47 · Личное сообщение · #4
При беглом осмотре кода сложилось впечатление, что каждый входной бит пишется в определенную позицию выходного массива. Самое простое решение - задать бегущую единицу на входе и получить таблицу соответствий битов со входа битам на выходе. Заодно видно будет, однозначно обратное преобразование или нет.
| Сообщение посчитали полезным: |
Ранг: 137.9 (ветеран), 45thx Активность: 0.08↘0 Статус: Участник
|
Создано: 11 июня 2012 02:28 · Личное сообщение · #5
OnLyOnEкод специально был выложен в base64, чтобы палива не было. r_eЯ не прошу весь алгоритм обратить, мне достачно будет подсказки. Ну не знаю я как его оптимизировать...
| Сообщение посчитали полезным: |
Ранг: 590.6 (!), 408thx Активность: 0.36↘0.18 Статус: Модератор
|
Создано: 11 июня 2012 04:08 · Личное сообщение · #6
Убери лишние локальные переменные и мертвый код, попереименовывай чо где. Сразу станет ясно как оно работает.
----- старый пень | Сообщение посчитали полезным: |
Ранг: 301.4 (мудрец), 194thx Активность: 0.17↘0.01 Статус: Участник
|
Создано: 11 июня 2012 11:52 · Поправил: Veliant · Личное сообщение · #7
Херня какая-то, а не код
Для начала правильно определи размеры всех массивов и переменных, а потом уже пытайся обращать
| Сообщение посчитали полезным: |
Ранг: 590.6 (!), 408thx Активность: 0.36↘0.18 Статус: Модератор
|
Создано: 11 июня 2012 13:42 · Личное сообщение · #8
Veliantnum5 - номер бита в дворде num9 - номер дворда в стриме Стрим из 96 бит превращается в 160 бит. Что не так?
----- старый пень | Сообщение посчитали полезным: |
Ранг: 301.4 (мудрец), 194thx Активность: 0.17↘0.01 Статус: Участник
|
Создано: 11 июня 2012 13:50 · Поправил: Veliant · Личное сообщение · #9
Извиняюсь, туплю... меня почему то переклинило, что там mod а не div buffer.Length = 96 num3 = 0..96 num5 = (96-0)-1 = 95 num9 = 95 mod 32 = 31 numArray[31] = numArray[31] >> 1; ранее numArray = new uint[3]
| Сообщение посчитали полезным: |
Ранг: 137.9 (ветеран), 45thx Активность: 0.08↘0 Статус: Участник
|
Создано: 15 июня 2012 10:59 · Личное сообщение · #10
Подскажите обратные операции для: |, >>, <<, &.
| Сообщение посчитали полезным: |
 Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 15 июня 2012 11:40 · Личное сообщение · #11
Почитал бы соседний топик по поводу обращения AND https://ssl.exelab.ru/f/action=vthread&forum=5&topic=20012 Ответ-никак. Если сдвиги не циклические, а именно shl/shr, тоже никак.
| Сообщение посчитали полезным: |
Ранг: 23.4 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 28 сентября 2012 21:55 · Личное сообщение · #12
VeliantХерня какая-то, а не кодВерно Вы заметили товарищ, что качество кода - полное говно. Если бы его не подняли с двоичного, а разработали бы с нуля, то: Первое же ревью рубануло бы такой хардкод наглухо и в продакшон такая шняга никогда не ушла. Странно, что некоторые надеятся на то, что найдётся IT-специалист, который безвозмездно проведёт анализ  , а он ведь, так же как и разработка стоит времени и денег)
| Сообщение посчитали полезным: |
 Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 28 сентября 2012 22:13 · Личное сообщение · #13
Очень полезное замечание, особенно спустя 3 месяца. Не устал ещё во всех подряд топиках по программированию пальцы гнуть?
| Сообщение посчитали полезным: |