#java #aes
#java #aes
Вопрос:
Я пытаюсь выполнить дешифрование AES методом перебора с использованием Java. Зашифрованный текст состоит из 160 шестнадцатеричных символов. Я знаю последнюю половину 128-битного ключа шифрования AES (все 0). Как я могу создать цикл для проверки всех перестановок первой половины в Java с использованием байтовых массивов?
Я надеюсь, что это имеет смысл.
Спасибо
Ответ №1:
64 вложенных цикла, каждый от 0 до 255. Для запуска потребуется некоторое время 😉 Я предлагаю вам точно рассчитать или экстраполировать, сколько времени. Вы можете получить настоящий сюрприз.
Комментарии:
1. нет ли недостатка, который может убрать несколько битов? Вам все еще потребуется некоторое время, но это должно занять несколько миллионов лет. На самом деле есть — web.townsendsecurity.com/bid/41904 /…
2. На самом деле, поскольку это 128-битный ключ (не 128 байт), половина которого известна, вам нужно всего 8 таких вложенных циклов, что будет быстрее. (Все еще, вероятно, слишком долго для готового компьютера без распараллеливания.)