apg - generiert mehrere zufällige Passwörter
apg [-a algorithm] [-M mode] [-E char_string] [-n num_of_pass] [-m min_pass_len] [-x max_pass_len] [-r dictfile] [-b filter_file] [-p min_substr_len] [-s] [-c cl_seed] [-d] [-y] [-l] [-t] [-q] [-h] [-v]
apg generiert mehrere zufällige Passwörter. Es verwendet mehrere Algorithmen zur Passwortgenerierung (derzeit zwei) und einen integrierten Pseudozufallszahlengenerator.
Der Standardalgorithmus ist ein Algorithmus zur Generierung aussprechbarer Passwörter, der von Morrie Gasser entwickelt und in A Random Word Generator For Pronounceable Passwords National Technical Information Service (NTIS) beschrieben wurdeAD-A-017676. Das Originalpapier ist sehr alt und wurde noch nie online gestellt, daher muss ich die in FIPS-181 beschriebene NIST-Implementierung verwenden.
Ein anderer Algorithmus ist ein einfacher Algorithmus zur Generierung zufälliger Zeichen, der jedoch vier benutzerdefinierte Symbolsätze verwendet, um zufällige Passwörter zu erzeugen. Das bedeutet, dass der Benutzer die Art der Symbole auswählen kann, die im Passwort erscheinen sollen. Symbolsätze sind: numerischer Symbolsatz (0,...,9), Großbuchstaben-Symbolsatz (A,...,Z), Kleinbuchstaben-Symbolsatz (a,...,z) und Sonderzeichen-Symbolsatz ( #,@,!,...).
Der integrierte Pseudozufallszahlengenerator ist eine Implementierung des in Anhang C von ANSI X9.17 oder RFC 1750 beschriebenen Algorithmus mit der Ausnahme, dass er CAST verwendet > oder SHA-1 anstelle von Triple DES. Es verwendet die Ortszeit mit einer Genauigkeit von Mikrosekunden (siehe gettimeofday(2)) und /dev/random (falls verfügbar), um den anfänglichen Zufallsstartwert zu erzeugen.
apg bietet auch die Möglichkeit, die Qualität generierter Passwörter mithilfe eines Wörterbuchs zu überprüfen. Sie können diese Funktion nutzen, wenn Sie die Befehlszeilenoptionen -r dictfile oder -b filtername angeben, wobei dictfile ist der Name der Wörterbuchdatei und filtername ist der Name der Bloom-Filterdatei. In dieses Wörterbuch können Sie Wörter einfügen (eins pro Zeile), die nicht als generierte Passwörter erscheinen sollen. Zum Beispiel: Benutzernamen, gebräuchliche Wörter usw. Sie können sogar eines der Wörterbücher verwenden, die mit Dictionary Password Crackern geliefert werden. Die Bloom-Filterdatei sollte mit apgbfm(1) erstellt werden )-Dienstprogramm, das in der apg-Distribution enthalten ist. In zukünftigen Versionen plane ich, einige andere Techniken zur Überprüfung von Passwörtern (z. B. Musterprüfung) zu implementieren, um das Leben einfacher zu machen.
Verwenden Sie einen Algorithmus zur Passwortgenerierung.
0 – aussprechbare Passwortgenerierung (Standard)
1 – Passwortgenerierung mit zufälligen Zeichen
Generieren Sie die Anzahl der Passwörter num_of_pass. Der Standardwert ist 6.
Generieren Sie ein Passwort mit der Mindestlänge min_pass_len. Wenn min_pass_len > max_pass_len, dann max_pass_len=min_pass_len. Die standardmäßige Mindestlänge des Passworts beträgt 8.
Passwort mit maximaler Länge max_pass_len generieren. Wenn min_pass_len > max_pass_len, dann max_pass_len=min_pass_len. Die standardmäßige maximale Passwortlänge beträgt 10.
Verwenden Sie für die Passwortgenerierung die mit mode angegebenen Symbolsätze. mode ist eine Textzeichenfolge bestehend aus den Zeichen S, s, N, n , C, c, L, l. Wo:
Der Generator muss für jedes generierte Passwort einen speziellen Symbolsatz verwenden.
Der Generator sollte einen speziellen Symbolsatz für die Passwortgenerierung verwenden.
Der Generator muss für jedes generierte Passwort einen Zahlensymbolsatz verwenden.
Der Generator sollte für die Passwortgenerierung einen Zahlensymbolsatz verwenden.
Der Generator muss für jedes generierte Passwort einen Großbuchstabensatz verwenden.
Der Generator sollte für die Passwortgenerierung den Großbuchstabensatz verwenden.
Der Generator muss für jedes generierte Passwort einen Kleinbuchstaben-Symbolsatz verwenden (immer vorhanden, wenn ein aussprechbarer Passwortgenerierungsalgorithmus verwendet wird).
Der Generator sollte für die Passwortgenerierung einen Satz kleiner Buchstaben verwenden.
Wird nicht mehr unterstützt. Verwenden Sie stattdessen die Option -E char_string.
Modus darf nicht länger als 4 Zeichen sein.
Hinweis:
Die Verwendung von L, M, S, C verlangsamt den Prozess der Passwortgenerierung.
Examples:
-M sncl -M SNCL -M Cn
Exclude characters in char_string from password generation process (in pronounceable password generation mode you can not exclude small letters). To include special symbols that can be recognized by shell (apostrophe, quotes, dollar sign, etc.) in char_string use the backslashed versions.
Beispiele:
Der Befehl apg -a 1 -M n -n 3 -m 8 -E 23456789 generiert einen Satz Passwörter, der wie folgt aussieht:
10100110 01111000 11011101
Der Befehl apg -a 1 -M nc -n 3 -m 26 -E GHIJKLMNOPQRSTUVWXYZ generiert einen Satz Passwörter, der wie folgt aussieht:
16A1653CD4DE5E7BD9584A3476 C8F78E06944AFD57FB9CB882BC 8C8DF37CD792D36D056BBD5002
Überprüfen Sie generierte Passwörter auf ihr Erscheinen in dictfile
Überprüfen Sie generierte Passwörter auf ihr Erscheinen in filter_file. filter_file sollte mit dem Dienstprogramm apgbfm(1) erstellt werden.
Diese Option weist apg(1) an, jeden Teilstring des generierten Passworts auf sein Vorkommen in filter_file zu prüfen. Wenn einer dieser Teilstrings in der filter_file gefunden würde, würde das generierte Passwort abgelehnt und apg(1) würde ein anderes generieren. min_substr_len gibt die minimale zu prüfende Teilzeichenfolgenlänge an. Diese Option ist nur aktiv, wenn die Option -b definiert ist.
Bitten Sie den Benutzer um eine zufällige Reihenfolge für die Passwortgenerierung
Verwenden Sie cl_seed als zufälligen Startwert für die Passwortgenerierung. Ich verwende es, wenn ich Passwörter in einem Shell-Skript generieren muss.
Beispiele:
-c /dev/urandom -c /tmp/seed_file
Verwenden Sie KEINE Trennzeichen zwischen generierten Passwörtern. Ich verwende es, wenn ich Passwörter in einem Shell-Skript generieren muss.
Generierte Passwörter und verschlüsselte Passwörter drucken (siehe crypt(3))
Leiser Modus (keine Warnungen drucken)
Durch Buchstabieren generierte Passwörter. Nützlich, wenn Sie das generierte Passwort per Telefon lesen möchten.
WARNUNG: Denken Sie zweimal darüber nach, bevor Sie Ihr Passwort telefonisch lesen.
Drucken Sie die Aussprache für das generierte aussprechbare Passwort aus. Wird ignoriert, wenn -a 1 gesetzt ist.
Hilfeinformationen drucken und beenden
Versionsinformationen drucken und beenden
apg -a 0 -M sncl -n 6 -x 10 -m 8
Wenn Sie wirklich sichere Passwörter generieren möchten, sollten Sie die Option -s verwenden. Um die Verwendung von apg zu vereinfachen, können Sie ein kleines Shell-Skript schreiben. Zum Beispiel:
[begin]----> pwgen.sh #!/bin/sh /usr/local/bin/apg -m 8 -x 12 -s [ end ]----> pwgen.sh
Bei erfolgreichem Abschluss seiner Aufgabe wird apg mit dem Exit-Code 0 abgeschlossen. Ein Exit-Code von -1 weist darauf hin, dass ein Fehler aufgetreten ist. Textfehler werden in den Standardfehlerstrom geschrieben.
Wenn /dev/random nicht verfügbar ist, zeigt apg eine entsprechende Meldung an.
Keine.
Keine. Wenn Sie einen gefunden haben, senden Sie bitte eine Fehlerbeschreibung an den Autor.
apgbfm(1)
Adel I. Mirzazhanov,
Projekthomepage: http://www.adel.nursat.kz/apg/