Инструмент командной строки для генерации запоминающихся паролей?

Я ищу инструмент, командную строку или графический интерфейс для Linux, который генерирует запоминающиеся пароли.

Эквивалентом того, что я ищу, были бы пароли, которые может генерировать цепочка для ключей Mac OS X, что-то вроде apples12$/fourteen, Что-то сильное, но легко запоминаемое пользователем.

8 ответов

Решение

С тех пор я перешел к парольным фразам в стиле XCKD для большинства моих паролей. Вот 1 строка из командной строки fu для генерации ключевой фразы:

shuf -n4 /usr/share/dict/words | tr -d '\n'

Я бы порекомендовал людям прекратить использовать pwgen - его основным интересом было создание "запоминаемых паролей", но при этом он обнаружил множество уязвимостей. И использовать его для генерации совершенно случайных строк тоже не очень полезно.

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

[diceware]
caps = off
delimiter = "-"
wordlist = en_eff

Примеры:

$ diceware
turkey-eligibly-underwire-recite-lifter-wasp
$ diceware
lend-rubdown-cornflake-tint-shawl-ozone
$ diceware
syndrome-ramp-cresting-resolved-flinch-veneering
$ diceware
alto-badass-eclipse-surplus-rudder-quit

Я отключаю заглавные буквы и пробелы, потому что они генерируют различные слышимые шумы, которые могут быть использованы злоумышленником. - разделитель - меньшее зло: было бы лучше не использовать какой-либо разделитель и en_eff Для этого специально составлен список слов. Но мне легче общаться и обмениваться паролями, когда у них есть какой-то разделитель.

Для генерации совершенно случайного пароля я использую следующую функцию оболочки:

# secure password generator or, as dkg puts it:
# high-entropy compact printable/transferable string generator
# a password generator would be pwqgen or diceware
pwg() {
    ENTROPY=${1:-20} # in bytes
    # strip possible newlines if output is wrapped and trailing = signs as they add nothing to the password's entropy
    head -c $ENTROPY /dev/random | base64 | tr -d '\n='
    echo
}

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

Вы можете проверить pwgen приложение. Я знаю, что он будет доступен в репозиториях Ubuntu, Fedora, Debian и Suse.

Со страницы руководства:

Программа pwgen генерирует пароли, которые разработаны для легкого запоминания людьми, при этом будучи максимально безопасными. Запоминаемые человеком пароли никогда не будут такими безопасными, как совершенно совершенно случайные пароли. В частности, пароли, сгенерированные pwgen без опции -s, не должны использоваться в местах, где пароль может быть атакован с помощью атаки с использованием грубой силы. С другой стороны, совершенно случайно сгенерированные пароли имеют тенденцию записываться и могут быть скомпрометированы таким образом.

Программа pwgen предназначена для использования как в интерактивном режиме, так и в сценариях оболочки. Следовательно, его поведение по умолчанию отличается в зависимости от того, является ли стандартный вывод tty устройством или каналом для другой программы. В интерактивном режиме pwgen отобразит экран с паролями, позволяя пользователю выбрать один пароль, а затем быстро стереть экран. Это не позволяет кому-либо "взломать" выбранный пользователем пароль.

Попробуйте "gpw". Он производит пароли, такие как эти: ubsonsin morimplo demenump esselymn kidentst anenterg essonsuf iesssssi bestruss tnestese

Описание: Trigraph Password Generator Этот пакет генерирует произносимые пароли. Он использует статистику трехбуквенных комбинаций (триграфов), взятых из любых словарей, которые вы используете. Таким образом, произнесение может отличаться от языка к языку. Основано на идеях генератора паролей Морри Гассера для Multics и генератора Дэна Эдвардса для CTSS. Стандарт FIPS 181 описывает подобное
генератор на основе диграфа, полученный от Гассера.

Хорошим вариантом, который появился после того, как я спросил об этом, является генератор XKCD-пароля-генератора Redacted.

Это хороший скрипт на Python для генерации паролей в стиле XKCD, который имеет некоторые дополнительные параметры, такие как поддержка acrostic.

Вы можете попробовать установить openssl

openssl rand -base64 12илиopenssl rand -hex 12

Спасибо коту 400 за ссылку на приведенный выше пример.

Если этого недостаточно, попробуйте:

      LC_ALL=C tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' </dev/urandom | head -c 43 ; echo

Перебирая ответ Джеймса МакМэхона и его комментарии, вот однострочный текст, содержащий ограничение длины слова и объединение слов с использованиемpaste.

curl -s "https://raw.githubusercontent.com/first20hours/google-10000-english/master/google-10000-english-usa-no-swears-medium.txt" | grep -E '^.{4,6}$' | shuf -n4 | paste -sd '.,-'

  • grep -E '^.{4,6}$'фильтровать слова длиной от 4 до 6 символов
  • shuf -n4возьми 4 наугад
  • paste -sd '.,-'соединить все слова, прокручивая их, в данном случае:.,-

sf-pwgen является инструментом командной строки, который генерирует пароли с использованием платформы SecurityFoundation в OS X.

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