А нефиг брутфорсом ломать. Обычно, если забыл/потерял пароль (или
просто хочешь подобрать -- не важно), нужно как можно больше информации
о содержимом.
Например, если это jpeg-картинки, то у них у всех стандартные
заголовки, зная которые можно применить эффективные методы подбора
ключа, т.к. шифрование в rar очень простенькое. И никакая длина
пароля тут не помешает.
Другое дело в том, что это не универмальный метод, а рассматривать
нужно каждый конкретный случай. Возьми какую-нибудт хорошую книгу по
криптоанализу (например, Шнайера), gcc и вперёд!
Никакой AES не выдержит атаки по известным заголовкам (или частично
известному содержанию архива), раве что там ключ будет килобитный, что
сомнительно.
К тому же, в виндах очень хреновый генератор случайных чисел, это тоже
можно использовать (для предсказания определённых сигнатур в ключе,
полученном на основе парольной фразы).
Никто не говорил, что это просто; но задача реальная.
Современные криптоалгоритмы строятся из расчёта, что даже если содержимое зашифрованного сообщения известно, найти из него достаточно длинный ключ за разумное время на компьютере нынешней архитектуры нельзя.
Современные криптоалгоритмы, вернее их _реализации_ строятся из того
расчёта, чтоб дядям из АНБ и т.п. было не сильно сложно их ломать.
В большинстве реализаций ключ искуственно ослабляется, rar не
исключение.
Пожалуй, доверять можно только полностью открытым проектам типа
openssl/gnupg.
По-моему, в исходниках unrar есть алгоритм генерации ключа из пароля и расшифровки. Никто не запрещает сравнить со стандартом AES или искать ошибку в реализации. Если расшифровывает по AES, то зашифровать оно по другому просто не может.
Большее подозрение вызывают совсем закрытые программы, да еще если зашифрованный файл больше исходного - а не хранят ли они пароль там же, но зашифровав его каким-нибудь мастер-паролем?