Примечание: Я не собираюсь размещать вывод команд, потому что поток будет очень длинным.
Решения, которые я уже пробовал, не привели к желаемому результату. Если кто знает, можно ли получить список паролей длиной 8 символов (только заглавные буквы, без цифр, без спецсимволов), но без повторения букв в строке, например:
QWERTYUI →→→ good
QQWERTYU →→→→ плохой
QQQWERTY →→→ плохой
QQQQWERT →→→ плохой
QQQQQWER →→→ плохо
QQQQQQWE →→→ плохо
QQQQQQQW →→→→ bad
Есть ли какие-нибудь варианты с "John The Ripper", чтобы сделать выходной список слов как выше или, может быть, передать в aircrack-ng? Я пробовал crunch
и не смог этого сделать. Если это возможно, я хотел бы знать?
Если у вас есть файл со словами, и вы хотите удалить все слова, содержащие повторяющиеся символы, это сделает это за вас:
$ cat file
HELLO
WORLD
$ sed '/\(.\)\1/d' file
WORLD
Это может быть частью конвейера:
$ generate_words | sed '/\(.\)\1/d' | use_words
Где generate_words
- это некоторая программа, которая генерирует слова, по одному на строку, при стандартном выводе, а use_words
- некоторая программа, которая считывает слова, по одному на строку, из стандартного ввода.
Регулярное выражение \ (. \) \ 1
будет соответствовать любой строке ввода, содержащей два последовательных одинаковых символа. Команда d
из sed
удалит такие строки.
while < /dev/urandom tr -cd 'A-Z' | fold -w8 | sed '/\(.\).*\1/d;q1'; do :; done
Здесь мы выбираем символы с заглавными буквами из файла / dev / urandom
и помещаем его в цикл while
и продолжаем, пока не увидим, что нет повторять символы. Обратите внимание, что для этого требуется GNU sed.