Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Ускорение перебора RC5 -72 ключей. 20.06.05 09:30
Автор: Searcher Статус: Незарегистрированный пользователь
|
Кто-нибудь знает - это реально?
У меня пока возникло несколько идей.
Расшифровка из зашифрованных 2-х 32-х разрядных слов дает расшифрованные 2 32-х разрядных слова.
Затем расшифрованные слова сравниваются с тестовым ("The unkn"). Такое совпадение происходит примерно 1 раз из 2^64 - такое совпадение ищется только полным перебором.
Однако, на примере тестового примера (Test Pseudo-Contests RC5-32/12/9) получается, что ключи, которые дают в расшифрованной паре ТАКОЕ ЖЕ КОЛИЧЕСТВО БИТ, что и в тестовой, попадаются примерно 1 из 600(правда распределение частоты таких ключей носит экспоненциальный характер и их мат. ожидание около 600). Если бы удалось определить быстро, что ключ не даст требуемого количества бит, то его можно было-бы пропустит. Осталось выяснить как?
Или как строить ключи, которые дают такое-же количество бит, что и в требуемом сообщении? Если удастся это сделать, то получится выигрыш на пару порядков.
Вторая идея.
Т.к. количество вариантов ключей (2^72) больше, чем возможное количество расшифрованных слов (2^32), то попадаются такие ключи, которые дают одинаковые расшифрованные слова.
а) Если предположить, что набор из 2^32 (например ключ - 3 слова, зафиксированы 2 старших и меняется только младшее) ключей дает из зашифрованного первого слова 2^32 расшифрованных слов, и эти слова распределены равномерно (что на самом деле не так :)), то, перебирая такие ключи мы найдем такой ключ, который даст совпадение первого слова. Если у нас равномерное распределение, то среди этих ключей второго ключа, который даст нам совпадение первого (и уж тем более второго) слова, не будет - значит можно отбросить все остальные ключи.
б) Мы можем найти ключ который даст из зашифрованного сообщения (пары слов) такую расшифрованную пару, которая в одном слове будет совпадать с тестовой. Теперь вопрос, как изменив один бит ключа подобрать остальные биты ключа так, чтобы новая расшифрованная пара так-же совпадала в одном слове с тестовой. Таких вариантов ключей примерно 2^40. Осталось выяснить как их найти?
|
|
|