Получить ключ AES из зашифрованного файла, используя уже расшифрованную версию того же файла

Это вообще возможно? Зашифрованный файл использует AES-128 в режиме CBC. У меня уже есть его расшифрованная версия, но я не знаю ключ, который использовался для его шифрования, и он мне нужен (я предпочитаю не указывать причину).

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

1 ответ

Решение

То, что вы описываете, это "известная атака открытым текстом". Алгоритмы шифрования, уязвимые для известных атак открытым текстом, считаются сломанными; вы не найдете AES, использованного для чего-либо какого-либо импорта, если оно уязвимо для KPA. Таким образом, нет, вы не можете восстановить ключ, используя только открытый текст и зашифрованный текст - по крайней мере, без какой-либо известной атаки на AES.

Однако, если вы можете уменьшить пространство ключей (например, если вы знаете, что ключом является md5 восьмибуквенного алфавитно-цифрового пароля), вы можете перебрать правильный ключ. Однако сначала необходимо уменьшить пространство клавиш, чтобы эта атака завершилась до того, как сгорит солнце.

Другие вопросы по тегам