Frage: .htaccess Passwörter generieren mit crypt()

Alles, was PHP betrifft, kann hier besprochen werden.

Frage: .htaccess Passwörter generieren mit crypt()

Postby AlexPausB » 23. February 2005 11:50

Morsche,

auf Topsubmit gibt es eine Möglichkeit, sich Passwörter für .htacces
zu erstellen.

Meine Frage ist jetz: wie machen die das?

Schwester Google hat mir vieles von crypt() und 'salt' erzählt,
habe auch schon einiges probiert, jedoch bekomme ich nicht
das gewünschte Ergebnis... kann mir jmd verraten, wie's funktioniert?

Ich bin sehr zum Dank verpflichtet und rege mich nebenbei tierisch
über den rieeesen Aufriß auf, den der Georg W. zur Zeit veranstaltet.
AlexPausB
 
Posts: 471
Joined: 05. February 2003 11:19
Location: Fdorf

Postby Wiedmann » 23. February 2005 12:18

Du willst was machen? Oder anders gefragt, hast du ein Apache oder wirklich ein PHP Problem?

(welches Betriebsystem?)
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby AlexPausB » 23. February 2005 13:06

Naja im Prinzip bin ich einfach nur neugierig, wie die das auf o.g. Webseite machen und wollte das "nachbauen".

Ein Apache-Problem ist es nicht, eher ein Verständnis- und PHP-Problem.

Meine momentane Umgebung is Win2000.

Ebenso verstehe ich folgendes nicht:

Erstelle ich auf o.g. Webseite ein Passwort, kommt - anders wie zum Beispiel bei MD5 - bei einem gleichen String jedes mal ein anderes Passwort heraus.

Woher weiß dann der Apache, dass das korrekte Passwort eingeben wurde?
AlexPausB
 
Posts: 471
Joined: 05. February 2003 11:19
Location: Fdorf

Postby SNowborn » 23. February 2005 15:03

es wird vom server glaube ich jedes Mal das eingegebene PW auch verschlüsselt und geguckt, ob es mit einem der angegebenen verschlüsselten PWs übereinstimmt.

SNo
SNowborn
 
Posts: 7
Joined: 13. December 2004 13:50

Postby AlexPausB » 23. February 2005 15:54

Nunja, es kommt ja jedes Mal ein anderes Passwort raus...
AlexPausB
 
Posts: 471
Joined: 05. February 2003 11:19
Location: Fdorf

Postby jakimo72 » 03. March 2005 23:59

Code: Select all
<?php
$name1 = "scott";
$passwd1 = "tiger";
$name2 = "root";
$passwd2 = "xampp";
echo $name1.':'.crypt($passwd1)."\n";
echo $name2.':'.crypt($passwd2)."\n";
?>

Das Ergebnis einfach in eine Datei .htpasswd speichern
und darauf in Deiner .htaccess verweisen.
Schon klappt es.

Das magische daran ist, dass es immer wieder unterschiedliche
verschlüsselte Passwörter ergibt. Erst wenn man einen SALT-Wert
angibt, kommt immer das gleiche raus.

Es gibt verschiedene Verschlüsselungsfunktionen, die alles
das gleiche machen, aber mit unterschiedlicher Sicherheit.
Standard-DES sollte man möglichst nicht mehr verwenden.
MD5 ist für alles außer Hochsicherheitsbereiche OK.
Dieses Verfahren ist auf den allermeisten Systemen verfügbar
und wird dann standardmäßig eingesetzt.

Auch wenn es immer andere verschlüsselte Passworter
gibt, funktioniert dieser Code:
Code: Select all
$cryptpasswd = crypt('Hundekuchen');
echo 'abgespeichertes Passwort: '.$cryptpasswd."<br>\n";

$postpasswd = "Hundekuchen";
echo 'übergeben wurde folendes Passwort: '.$postpasswd.'<br>\n';

$temp=crypt($postpasswd,$cryptpasswd);

if($temp == $cryptpasswd)
  echo "Zugang ist frei!"
User avatar
jakimo72
 
Posts: 151
Joined: 07. February 2005 13:25
Location: Hamburg-Barmbek

Postby Wiedmann » 04. March 2005 09:20

jakimo72 wrote:
Code: Select all
echo $name1.':'.crypt($passwd1)."\n";
echo $name2.':'.crypt($passwd2)."\n";

Das Ergebnis einfach in eine Datei .htpasswd speichern
und darauf in Deiner .htaccess verweisen.
Schon klappt es.

Das wird nicht funktionieren, da:
AlexPausB wrote:Meine momentane Umgebung is Win2000.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany


Return to PHP

Who is online

Users browsing this forum: No registered users and 64 guests