Взлом 224-битного шифрования Blowfish - PullRequest
4 голосов
/ 05 апреля 2011

У меня есть куча зашифрованных файлов, которые я хочу расшифровать (да).Я выяснил, что они зашифрованы с помощью Blowfish с использованием 224-битного ключа после некоторых исследований.Я знаю, как выглядят первые несколько байт открытого текста (это своего рода заголовок).

Отмечая, что я не являюсь АНБ и не обладаю смехотворной вычислительной мощью, есть ли шанс, что я грубо нажму клавишу в течение разумного времени (например: не жизнь вселенной)?

Я где-то читал, что кто-то опубликовал атаку на полномасштабную Blowfish (без каламбура), которая сокращает поискдо 2 ^ (н / 2), но таинственно исчез.По-видимому, это была какая-то атака MITM;хотя Blowfish использует сеть Фейстеля с 16 раундами, поэтому она должна быть умной, если она существует.Кто-нибудь может это подтвердить?

РЕДАКТИРОВАТЬ: У меня есть доступ к большому количеству используемых ключей, но не ко всем.Возможно, стоило бы потратить время на то, чтобы попытаться атаковать генерацию ключей вместо этого?

Ответы [ 4 ]

5 голосов
/ 05 апреля 2011

У вас нет шансов на то, что вы грубо взломали ключ *.Предполагая, что для Blowfish существует атака «навстречу середине», которая сводит его к тестированию 2 ^ 112 ключей, на планете недостаточно вычислительной мощности, чтобы иметь приличный шанс грубого взлома ключа до того, как Солнце станет холодным.,АНБ тоже не могло этого сделать, если это утешило, хотя вполне возможно, что они могут решать Blowfish, а не угадывать ключи.

Если вы не можете найти ключи, вы не будете читать файлы.

* Технически у вас есть шанс.Однако гораздо более вероятно, что вы дважды выиграете национальную лотерею (при условии, что вы покупаете билет на два розыгрыша).

4 голосов
/ 05 апреля 2011

Нет, вы не можете восстановить простой текст, если шифрование не было выполнено неправильно.

Существует опубликованная атака "известного простого текста", но для ее работы требуются миллиарды известных простых текстов.


Обновление, касающееся «Редактирования»: Опять же, если шифрование было выполнено правильно , проверка известных ключей не поможет, потому что генератор криптографических чисел, используемый длягенерация хороших ключей будет иметь ту же сложность, что и шифр.Однако использование плохого генератора (или шифрование на основе паролей со слабыми паролями) является распространенным недостатком реализации.Удачи!

0 голосов
/ 07 апреля 2011

Вы случайно не знаете, как был выбран ключ?Если, скажем, сгенерированный из пароля и не используется надлежащая функция получения пароля, это может быть вашим лучшим углом атаки.Также в зависимости от используемого режима цепочки могут быть другие места атаки, нам нужно знать больше.

0 голосов
/ 05 апреля 2011

2 ^ (n / 2) означает в этом случае 2 ^ 223, а не 224, возможно?если так, я не вижу, чтобы это вам очень помогло.Я думаю, вам нужно приступить к чему-то вроде 2 ^ 64 или около того, чтобы перебрать его на домашнем ПК в разумные сроки.

...