Создание ключа WPA/WPA2 в linux bash?

Как я могу сгенерировать новый случайный ключ wpa/wap2 в терминале linux? Я попытался pwgen, но это не генерирует шестнадцатеричные значения.

2 ответа

Решение

Например, если вы хотите пароль с максимальной длиной символа, т. Е. 63, вы можете ввести одну из следующих 2 команд:

  1. makepasswd --chars=63

  2. openssl rand -base64 63

ОБНОВИТЬ:

Вот лучшая команда, которую я нашел для этой цели, так как я впервые написал этот ответ:

dd if=/dev/urandom bs=48 count=1 status=none | base64 | tr +/ -_

На самом деле я использую этот скрипт на основе zenity, чтобы время от времени генерировать такой пароль:

#!/bin/bash
RNDPWD="$(dd if=/dev/urandom bs=48 count=1 status=none | base64 | tr +/ -_)"
echo $RNDPWD | tr -d '\n' | xclip -i -selection clipboard
zenity --question --title="Random Password" --text="<i>Password Copied to Clipboard:</i>\n\n$RNDPWD\n\n<b>Would you like to generate another one?</b>" --width=500 --height=150
if [ $? = 0 ]
then
    "~/.bin/Password-Generator-GUI"
fi

Чтобы сгенерировать наилучший из возможных паролей (с максимально возможной энтропией), необходимо использовать все печатные символы ASCII - от 32 (пробел) до 126 (тильда, ~). Это может быть заархивировано с помощью (например, максимальная длина пароля 63 символа):

< /dev/urandom tr -cd "[:print:]" | head -c 63; echo

Чтобы не включать пространство можно использовать [:graph:] набор символов и есть также другие, описанные в trManpage.

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