> В JtR есть такая константа PLAINTEXT_LENGTH. Для MD5, например, она равна 15.
> Сделайте ваш пароль длиной больше 15 символов и хоть на кластере
> его ломай хоть на суперкомпьютере - JtR его ни в жисть
> не возьмет. А произвольно увеличить PLAINTEXT_LENGTH и перекомпилить нельзя :( Да, для MD5-based crypt(3) действительно есть ограничение в 15 символов, которое связано с оптимизацией алгоритма под типичный случай (для выявления слабых паролей, длины до 15 актуальнее, чем бОльшие). Число 15 выбрано не случайно: начиная с 16-ти потребовался бы другой алгоритм, более медленный.
Тем не менее, это ограничение можно обойти воспользовавшись поддержкой "generic crypt(3)", опция "--format=crypt". Заодно там есть поддержка OpenMP. Правда, скорость проверки каждого пароля будет в несколько раз ниже (в расчете на одно ядро процессора), чем при специализированном коде.
Если уж выбирать сложный пароль, то следует уделить внимание не только длине. А длина может быть и меньше. Особенности поддержки конкретно в JtR не так важны, как сложность подбора в предположении наличия поддержки.
Спасибо за дельный комментарий!