Isch habs. hab in einem Verwaltungstool aus dem Internet eine brauchbare Routine gefunden, wie htpasswd-Kennwörter erstellt werden können. Ist sicherlich nur eine Möglichkeit, aber wie ich finde eine relativ einfache.
Hier die kleine Routine. Was ich halt bisher nicht wusste, die verschlüsselten Kennwörter ändern sich bei jeder neuen Generierung des gleichen Kennworts.
Nun brauch ich gar nicht mehr serverseitig versuchen, mit htpasswd die Kennwörter zu erstellen, denn hiermit kann ich das .htpasswd-File direkt schreiben.
Gruß, Chriss
Hier die kleine Routine. Was ich halt bisher nicht wusste, die verschlüsselten Kennwörter ändern sich bei jeder neuen Generierung des gleichen Kennworts.
PHP-Code:
<?php
//Das Kennwort im Rohzustand
$passwordalt = "test";
//Zunächst wird eine Zufallszahl erstellt: rand()
//Aus dieser Zufallszahl wird eine eindeutige ID erstellt: uniqid()
//Diese eindeutige ID wird mit nach MD5-Standard verschlüsselt: md5()
$schritt1 = md5(uniqid(rand()));
//Der aus Schritt 1 erstellte String wird abgeschnitten.
//Von der ersten Stelle an, über zwei Stellen Längt: substr()
//Unn fertig ist unsere wunderbare zweistellige Zufallszahl
$schritt2 = substr($schritt1, 0, 2);
//Das neue Passwort wird verschlüsselt: crypt()
//Zum Verschlüsseln mit crypt() werden zwei Werte benötigt:
//Das unverschlüsselte Kennwort und unsere Zufallszahl
$passwordneu = crypt($passwordalt, $schritt2);
//Als Ausgabe erhalten wir ein Kennwort, das zumindest beim meinem
//Provider (SCO Unix, Apache) und auf meinem Testwebserver (Windows, Apache) funktioniert.
echo $password;
?>
Gruß, Chriss
Kommentar