eXeL@B —› Основной форум —› Шифр перестановкой |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 26 июля 2012 20:46 · Поправил: OnLyOnE · Личное сообщение · #1 Пытаюсь разобрать алго преобразования большого числа. Необходимо его реверснуть. Как понял (на сколько мозгов хватило ) в него заложен принцип шифрования перестановкой... только все происходит на уровне бит. Т.е. поэтапно ... Этап "расшифровки" числа, в результате которого число [ 10 00 A2 00 63 0E CA 45 01 AA F7 F0 00 A6 F8 ] преобразуется в [ 18 06 28 E5 79 F2 F9 96 62 02 B3 03 00 00 08 ] Шаги "расшифровки": 1. создается буфер размером в 120 байт (78h) и число [ 10 00 A2 00 63 0E CA 45 01 AA F7 F0 00 A6 F8 ] раскладывается в буфер на биты т.е. двоичная система исчисления Code:
В данном случае вместо единичек ставиться 80h. Затем создается на основе вышеуказанного массива "словарь" для "расшифровки" числа, причем "словарь" имеет такой вид Code:
и на основе этого "словаря" бинарный вид расшифровываемого числа превращается вот в такой вид Code:
Т.е. после преобразования двоичных данных в хекс получаем [ 18 06 28 E5 79 F2 F9 96 62 02 B3 03 00 00 08 ] Вот цикл преобразования Code:
Вроде просто на первый взгляд... но никогда не сталкивался с данным принципом. Может кто уже сталкивался с аналогичным? Подскажите как реверснуть? И на каком этапе? Может надо обращать цикл создания "словаря"? В общем ... вот так Заранее благодарен за помощь! ----- aLL rIGHTS rEVERSED! |
|
Создано: 30 июля 2012 22:07 · Личное сообщение · #2 ZaZa Ну а что даст брут? Решение только данной ситуации? Если подать другое число на вход, сбрученный "словарь" работать не будет... Просто я дал два числа .. они валидны друг для друга.. но это не значит что не будет других чисел Смысл именно обратить функцию, чтобы потом использовать.. ----- aLL rIGHTS rEVERSED! |
|
Создано: 30 июля 2012 22:23 · Поправил: ZaZa · Личное сообщение · #3 OnLyOnE Я предлагаю не словарь брутить, а входные данные (хотя словарь то тоже будет генерироваться)... И все-таки, мне кажется, что обратить в данном случае невозможно... Возможно я и ошибаюсь, не спорю... Причем, чем ближе выходные данные будут к FFh или 00h, тем меньше итераций получится... И да! Так каждый раз брутить предлагаю ))) Я понимаю, что данное решение не есть гуд, но все же... Ниже количество всех вариантов для брута (1 столбик - количество единичек (80h)) Code:
Унывать не стоит, надо копать дальше... ----- One death is a tragedy, one million is a statistic. |
<< . 1 . 2 . |
eXeL@B —› Основной форум —› Шифр перестановкой |