Name="Sichere Passwörter generieren" Stich="Passwort Perl Vokale Konsonanten urandom random mimencode" Zeit="Mit Jun 26 19:33:37 MEST 2002" Kurz="Passwörter sollten mindestens acht Zeichen haben - und Sonderzeichen und am Besten noch alle paar Tage geändert werden." Lang=" Wenn man sich Passwörter ausdenkt, wird man vielleicht einfach zu erratene nehmen, wie zum Beispiel linurulz oder msisstincking. Dabei gibt es mehrere Methoden, sicherere Passwörter zu generieren: `exCodes` iblech@Hitachi:~/tLipps > head -c 13 /dev/urandom | mimencode cM2R1Ei6sk6azGxWUQ== iblech@Hitachi:~/tLipps > head -c 13 /dev/urandom | mimencode Qcv7cH2Af664Du759Q== iblech@Hitachi:~/tLipps > head -c 13 /dev/urandom | mimencode wf+NGhzrzgJCMJmMAA== iblech@Hitachi:~/tLipps > head -c 13 /dev/urandom | mimencode xnxEv16Y1eeEUem4lA== iblech@Hitachi:~/tLipps > perl -w ~/c/superwords.pl 13 jqudoquvjv iblech@Hitachi:~/tLipps > perl -w ~/c/superwords.pl 13 apecuqafif iblech@Hitachi:~/tLipps > perl -w ~/c/superwords.pl 13 awuxydjzin `exCodee` Die erste Methode ist die sicherste - head schreibt die 13 Zeichen von /dev/urandom - ein Pseudo-Gerät, welches zufällige-Zeichen ausgibt, in eine Pipe, von wo mimencode die Steuerzeichen entfernt (Es sein angemerkt, dass es keine wirklich zufälligen Zeichen sind, sondern nur Pseudo-zufällig, aber das ist eine schwierige Geschichte...).
Die zweite Methode ist unsicherer, dafür aber leichter zu merken: Vokal und Konsonant wechseln sich ab. Dies hat zur Folge, dass man (zumindest oft) die Passwörter noch aussprechen kann.
Das Skript, Download: `exCodes superwords.pl` #!/usr/bin/perl -w # superwords.pl - A password-generator # Copyright (C) Mit Jun 26 19:47:52 MEST 2002 - now Ingo Blechschmidt `cat gpl.lic` `cat add.lic` @vocals = ( "a", "e", "i", "o", "u", "y", "j" ); @konsonants = ( "b", "c", "d", "f", "g", "h", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "w", "x", "z" ); \$laenge = \$ARGV[0]; \$i = 0; for(\$i = 0; \$i <= \$laenge / 3; \$i++) { print \$vocals[rand 7]; # print \$konsonants[rand 19]; print \$konsonants[rand 19]; } print "\n"; `exCodee` " case $1 in Name) echo $Name; exit;; Stich) echo $Stich; exit;; Zeit) echo $Zeit; exit;; Kurz) echo $Kurz; exit;; Lang) echo $Lang; exit;; esac # if [ "$1" = "Name" ]; then echo $Name; fi mself_vA="txt/0022.txt txt/0023.txt txt/0031.txt txt/0039.txt txt/0049.txt txt/0051.txt txt/0053.txt txt/0082.txt txt/0083.txt "