Saya akan merekomendasikan orang-orang berhenti menggunakan pwgen - peminat utamanya adalah menghasilkan "kata sandi yang dapat diingat manusia", tetapi itu menunjukkan banyak kerentanan dalam melakukan hal itu. Dan menggunakannya untuk menghasilkan string acak sepenuhnya tidak berguna juga.
Saya menulis artikel terperinci tentang topik itu, tetapi pada dasarnya, intinya adalah menggunakan program diceware (atau, jika Anda suka dadu, sistem diceware yang sebenarnya ) atau xkcdpass . Untuk menghasilkan kata sandi yang kuat dan mudah diingat, saya biasanya menggunakan diceware dengan file konfigurasi berikut:
[diceware]
caps = off
delimiter = "-"
wordlist = en_eff
Contoh:
$ 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
Saya mematikan topi dan spasi karena mereka menghasilkan suara yang berbeda yang dapat didengar oleh penyerang. The -
pembatas adalah kejahatan yang lebih rendah: akan lebih baik untuk tidak menggunakan pemisah setiap dan en_eff
wordlist terutama dibuat untuk tujuan itu. Tetapi saya merasa lebih mudah untuk berkomunikasi dan berbagi kata sandi ketika mereka memiliki beberapa pemisah.
Untuk menghasilkan kata sandi yang sepenuhnya acak, saya menggunakan fungsi shell berikut:
# 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
}
Saya menyebutkan ini karena saya percaya penting untuk menghafal lebih sedikit kata sandi dan alih-alih mengandalkan pengelola kata sandi untuk menyimpan string besar yang sulit ditebak. Rincian lebih lanjut tentang alasan di balik pilihan-pilihan itu dijelaskan dalam artikel tersebut dan ulasan manajer kata sandi saya .