Passwort in .htusers
Wurzelzwerg
- webserver
Hallo allerseits,
2 Fragen:
1. Gibt es eigentlich das Perl-Script zum Verschlüsseln von Passwörtern, welches auf folgender Seite aufgerufen wird,
http://de.selfhtml.org/servercgi/server/htaccess.htm#verzeichnisschutz
auch zu Download (oder ein ähnliches, welches dengleichen Zweck erfüllt) ??
2. Wie kommt es, daß ein mehrfacher Aufruf mit dem gleichen Kennwort immer ein anderes Ergenis zurückliefert ?? PW-Überprüfungen kenne ich eigentlich so, daß das gewünschte PW verschlüsselt in der Datenbank gespeichert wird. Bei der Eingabe eines PW wird dieses dann auch versclüsselt und die beiden verschlüsselten Strings werden vergleichen. Das geht doch aber irgendwie schief, wenn das Ergebnis nicht eindeutig ist. Oder ??
vielen Dank schonmal für die Infos
hi,
- Wie kommt es, daß ein mehrfacher Aufruf mit dem gleichen Kennwort immer ein anderes Ergenis zurückliefert ??
Weil genau das das Salz in der Suppe bei Crypt ist (engl. "salt").
Siehe bspw. http://www.php-center.de/de-html-manual/function.crypt.html
gruß,
wahsaga
Hi!
- Gibt es eigentlich das Perl-Script zum Verschlüsseln [...]
Muß es unbedingt ein Perl-Script sein?
Wenn du dir Passwörter offline verschlüsseln willst, dann kannst du das Programm htpasswd nutzen, welches z.B. beim Apache-Server mitgeliefert wird.
Gruß,
rob
Hallo
- Gibt es eigentlich das Perl-Script zum Verschlüsseln von Passwörtern, welches auf folgender Seite aufgerufen wird,
http://de.selfhtml.org/servercgi/server/htaccess.htm#verzeichnisschutz
auch zu Download (oder ein ähnliches, welches dengleichen Zweck erfüllt) ??
die apache-Pakete enthalten für diesen Zweck das Programm htpasswd (Linux, UNIX, ...) bzw. htpasswd.exe (Windows), was übrigens auf der von Dir angeführten SELFHTML-Seite steht.
- Wie kommt es, daß ein mehrfacher Aufruf mit dem gleichen Kennwort immer ein anderes Ergenis zurückliefert ?
Das macht das Salz in der Suppe, ich meine Verschlüsselung.
Freundliche Grüße
Vinzenz
Hallo!
Das macht das Salz in der Suppe, ich meine Verschlüsselung.
Sehr interessant. Kappiert hab ichs nicht. Laut Wikipedia Artikel wird vom Passwort ein Hashwert genommen und in einer Variablen gespeichert.
Anschließend wird ein GUID erzeug. Dieser String wird an den Passworthash angehängt. Jetzt wird der Gesamtstring wieder gehasht. Dieser Wert wird jetzt in der Datenbank abgespeichert.
Dieser Algorithmus liefert immer einen neuen Wert.
Wie kann ich jetzt aber kontrollieren, ob das Passwort richtig eingegeben wurde? Wenn ich das eingegebene Passwort hashe, eine GUID anhänge und nochmal hashe, bekomme ich ja wieder einen anderen String als der, der in der Datenbank steht.
mfg
frafu
Hi,
Dieser Algorithmus liefert immer einen neuen Wert.
pro Salz.
Wie kann ich jetzt aber kontrollieren, ob das Passwort richtig eingegeben wurde?
Das selbe Salz verwenden.
Wenn ich das eingegebene Passwort hashe, eine GUID anhänge und nochmal hashe, bekomme ich ja wieder einen anderen String als der, der in der Datenbank steht.
Dem Du entnehmen kannst, welches Salz verwendet wurde. In der Praxis sieht das so aus, dass Du einfach das verschlüsselte Passwort als Salz nimmst.
Chea "Dieses Posting ist ganz schön gesalzen ;-)" tah
Hi Cheatah!
Chea "Dieses Posting ist ganz schön gesalzen ;-)" tah
Schmeckt trotzdem gut.
MfG H☼psel
Hallo!
Dem Du entnehmen kannst, welches Salz verwendet wurde. In der Praxis sieht das so aus, dass Du einfach das verschlüsselte Passwort als Salz nimmst.
Verstehe ich noch immer nicht. Das Salz wird in der htaccess Datei nicht abgespeichert. Dort steht nur der Username und das gehashte Passwort.
Laut http://de.selfhtml.org/servercgi/server/htaccess.htm#verzeichnisschutz liefert aber jeder Aufruf der crypt Funktion einen anderen Hash zurück.
Wo wird das Salz gespeichert?
mfg
frafu
Hi,
Verstehe ich noch immer nicht. Das Salz wird in der htaccess Datei nicht abgespeichert.
nein, aber im gecrypteten Passwort.
Dort steht nur der Username und das gehashte Passwort.
In der .htaccess?
Cheatah
Hallo!
Verstehe ich noch immer nicht. Das Salz wird in der htaccess Datei nicht abgespeichert.
nein, aber im gecrypteten Passwort.
Ja eben. Aber sonst nirgends. Aber laut dieser Beschreibung ändert sich das Salz ja bei jedem Verschlüsselungsvorgang, da ja eine GUID verwendet wird.
Wie erfolgt also die Überprüfung ob das eingegebene Passwort mit dem verschlüsseltem in der .htaccess übereinstimmt?
Dort steht nur der Username und das gehashte Passwort.
In der .htaccess?
Ja.
mfg
frafu
Moin.
Das macht das Salz in der Suppe, ich meine Verschlüsselung.
Sehr interessant. Kappiert hab ichs nicht. Laut Wikipedia Artikel wird vom Passwort ein Hashwert genommen und in einer Variablen gespeichert.
Das zu verschlüsselnde Passwort wird gehashed, das Salz (z.B. 2 Buchstaben) wird dabei "mitgehashed" und dann im Klartext (!) vorn an das "gehashde" PW angehangen. Um den PW-Check zu machen, wird das PW in der Passwortdatei (z.B. .htpasswd) gesucht, die ersten beiden Buchstaben ermittelt und mit denen als Salz das zu checkende PW gehashed. Ist das Ergebnis gleich dem in der Passwortdatei, hats der User richtig eingegeben.
Und warum der ganze Zeck mit dem Salz, wo erhöhter Salzgebrauch doch nur den Blutdruck steigert? Siehe Archiv.
Gruß Frank
Hallo!
Das zu verschlüsselnde Passwort wird gehashed, das Salz (z.B. 2 Buchstaben) wird dabei "mitgehashed" und dann im Klartext (!) vorn an das "gehashde" PW angehangen.
Genau das wollte ich wissen. Danke!
mfg
frafu
Hi,
- Gibt es eigentlich das Perl-Script zum Verschlüsseln von Passwörtern, welches auf folgender Seite aufgerufen wird, [...]
auch zu Download (oder ein ähnliches, welches dengleichen Zweck erfüllt) ??
der wesentliche Teil dieses Scripts besteht nur aus dem Befehl crypt(). Alles Notwendige dazu findest Du unter
perldoc -f crypt
[...] zurückliefert ?? [...] Oder ??
Überprüfe bitte mal Deine Tastatur. Die Fragezeichen-Taste meldet irgendwie immer ein Leer- und ein Fragezeichen zu viel.
Cheatah