Zur Navigation

Bestätigungslink [2]

11 suerte (Gast)

ne deine erste variante ist die richtige hatte die falsche mit dem /111111 genannt sry.

also wie kann ich das denn hier erstellen


http://bla.de/bestaetigung.php?key=11111111

ich habe die datei bestaetigung.php und den automatisch generierten $key= 111; und wie kann dann


http://bla.de/bestaetigung.php?key=111 generieren?

oder ist es im grunde genommen nur

http://bla.de/bestaetigung.php + übergabe von $key=111 ?
also kann ich dann in der bestaetigung mit $key = 111 arbeiten?

sprich ich kann dann nachschaun bei welchen datenbank eintrag bestätigt 111 steht und kann den wert dann auf 1 also auf bestätigt setzen


DANKE

22.05.2008 23:20

12 Jörg Kruse

sprich ich kann dann nachschaun bei welchen datenbank eintrag bestätigt 111 steht und kann den wert dann auf 1 also auf bestätigt setzen

Ja, so kannst du das machen

22.05.2008 23:45 | geändert: 22.05.2008 23:47

13 Forum

In diesem Thread geht es um die Programmierung von Bestätigungs-Links. Ich habe tinas und Stefans Beiträge zur Frage, was ein Bestätigungslink ist und wo man diesen klicken muss, mal hierhin verschoben:

Was ist ein Bestätigungslink?

28.11.2009 22:22 | geändert von Jörg: 28.11.2009 22:25

... 5 Monate später ...

14 Kai (Gast)

Dieser Thread ist zwar schon ziemlich alt, aber ich möchte dennoch für Andere meine Methode hier posten.

$time = time();
$hash_init = "$_POST['username']$_POST['password']$_POST['email']$time";
$hash = md5($hash_init);

Im Prinzip ist es ganz simpel. Ich nehme die vom Benutzer gemachten Eingaben und füge diese in einem String zusammen. Anschließend hänge ich noch die aktuelle Systemzeit an den String an. Dies dient der Manipulationserschwerung.

Danach erzeuge ich aus dem String einfach einen MD5-Hash, welchen ich in die Datenbank in ein spezielles Feld ablege.

Aus dem selben Script heraus kann man nun die Bestätigungsemail mit dem passenden Link versenden.
Der Link ruft dann wiedeerum ein Script auf, welches die Daten dann überprüft und den entsprechenden Account freischaltet.

Warum diese Lösung?
Zum Einen kann man auf diese Art leicht sicherstellen, dass der verschickte Link nicht korrumpiert wurde. Wäre das der Fall, würde der Hash nicht mehr stimmen.
Zum Anderen ist diese Methode, richtig verwendet, recht sicher da man einen Hash nicht zurückrechnen kann.

Der Code ist natürlich stark vereinfacht aufgeschrieben, sollte aber eigentlich für jeden leicht verständlich und nachvollziehbar sein.

Gruß,

Kai

11.05.2010 21:40

15 Rudy

Vielleicht sollte man anmerken, dass es nicht wichtig ist, wie der Hash oder die Zeichenkette für den Bestätigungslink erzeugt wird. Ausschlaggebend für die Sicherheit ist die Länge und der Umfang des Zeichensatzes des Codes. Bei einem Hash ist der Zeichensatz schon mal eingeschränkt auf [0-9a-f], viele Buchstaben bleiben ungenutzt. Allerdings bietet die Länge von 32 Zeichen ausreichend Kidnapping-Schutz, da der Ausgangswert für den Hash sowieso kryptisch ist.

12.05.2010 23:00 | geändert: 12.05.2010 23:01

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]