Hauptindex | Abschnitt 3 | English | 日本語 | Optionen |
char *crypt(const char *key, const char *salt);
key ist ein vom Benutzer eingegebenes Paßwort.
salt ist eine zwei Zeichen lange Zeichenkette bestehend aus Zeichen der Menge [a-zA-Z0-9./]. Die Zeichenkette wird dafür verwendet, den Algorithmus auf 4096 unterschiedliche Arten zu beeinflussen.
Von den untersten 7 Bit jedes Zeichens von key wird ein 56-Bit Schlüssel genommen. Dieser 56-Bit Schlüssel wird verwendet umd mehrfach eine konstante Zeichenkette zu verschlüsseln (üblicherweise eine Zeichenkette aus lauter Nullen). Der zurückgegebene Wert zeigt auf das verschlüsselte Paßwort, eine Reihe von 13 druckbaren ASCII-Zeichen (die ersten beiden Zeichen repräsentieren den salt selbst). Der Rückgabewert zeit auf statische Daten, die bei einem weiteren Aufruf überschrieben werden.
Warnung: Der Schlüsselraum besteht aus 256 gleich 7.2e16 möglichen Werten. Eine vollständige Suche über diesem Schlüsselraum ist möglich mit massiv parallelen Computern. Software wie crack(1) ist verfügbar und durchsucht den Teil, der normalerweise von Menschen für Paßwörter benutzt wird. Daher sollten Paßwörder wenigstens übliche Namen und Wörter vermeiden. Die Verwendung des Programms passwd(1), das automatisch auf leicht zu knackende Paßwörter während der Eingabe prüft, wird empfohlen.
Der DES-Algorithmus selbst hat ein paar Eigenarten, mit denen die Verwendung von crypt(3) für etwas anders als Paßwortverschlüsselung eine schlechte Wahl wird. Wenn Sie vorhaben, die Schnittstelle crypt(3) für ein kryptografisches Projekt zu verwenden, tun Sie es nicht: holen Sie sich ein gutes Buch über Verschlüsselung und eine der weitläufig verfügbaren DES-Bibliotheken.
Wenn der salt mit $1$ beginnt, wird ein MD5-basierter Paßwort-Hash-Algorithmus verwendet. Der salt sollte aus $1$ bestehen, gefolgt von acht Zeichen.
Programme, die diese Funktion verwenden, müssen mit -lcrypt gelinkt werden.
3. September 1994 | CRYPT (3) |
Hauptindex | Abschnitt 3 | English | 日本語 | Optionen |
Bitte richten Sie Ihre Kommentare zu diesem Handbuch Seite Service, Ben Bullock. Privacy policy.
“ | If you are angry with someone, you should walk a mile in their shoes - then you'll be a mile away from them, and you'll have their shoes. | ” |