PHP: Optionen zur Generierung einer eindeutigen Benutzer-Schlüssel

Nach ein paar Tagen recherche auf Hash-Erzeugung von Zufallszahlen-oder unique-Schlüsseln, ich bin ein bisschen verwirrend jetzt.

Habe ich noch eine Letzte Sache, die ich möchte um es richtig zu machen, die der user-Taste. Ich möchte das speichern einer eindeutigen Schlüssel für jedes Mitglied/Nutzer, der sich anmeldet, auf meiner website. Also dieser Schlüssel muss eindeutig sein und nicht duplizieren. Ich bin am überlegen, verwenden Sie die Benutzer-E-Mails und hash mit timedate oder so...

Dann Frage ich mich, was ist der beste Weg, um erstellen Sie einen solchen Schlüssel -

Kann ich hash_hmac() das für mich tun?

Habe ich ein paar Dinge nicht zu verstehen, über hash_hmac() wenn - wie in diesem Beispiel aus dem php.net hash_hmac('ripemd160', 'The quick brown fox jumped over the lazy dog.', 'secret');

Also, was ist das "Geheimnis" - kann ich mir etwas anderes statt, wie ein timedate?
Ich gehe davon aus, dass ich ersetzen können, 'Der schnelle braune Fuchs sprang über den faulen Hund.' mit der E-Mail-Adresse?

oder vielleicht kann ich Portable PHP password hashing framework, dies zu tun?

die einzige Sache ist, dass es produziert ., $, und / die ich brauche, um Sie zu entfernen sonst bekomme ich Fehler, wenn ich bitte Sie den Schlüssel aus der URL.

so, ich könnte dies tun -

$hash = $phpass -> HashPassword('[email protected]'.$timedate)
$key = preg_replace("/[^a-zA-Z0-9]+/", "", $hash);

Bitte lassen Sie mich wissen, wenn Sie irgendwelche bessere Vorschläge.

ist eine einfache md5 () - Funktion nicht ausreichend für Ihre Zwecke? oder muss der string sein müssen, decodable? md5(), bei der Verwendung, d.h. eine Benutzer-ID (die sollte eindeutig sein, durch sich selbst, Sie sind mit einer DB) und sagen wir mal e-mail-Adresse wird ein string mit der festen Länge von 32 Zeichen, die Sie verwenden können, und ist fast unmöglich zu decodieren, die von einem 3rd-party
Was brauchen Sie, um diese einzigartige Benutzer-Taste?
Ich benutze es für die Identifizierung, wenn der Nutzer überprüft Ihre E-Mail-Adresse, etc. zum Beispiel, sende ich eine E-Mail wenn man sich registriert und Fragen Sie ihn/Sie zum klicken auf einen Bestätigungs-link wie - xx.com/verify/(key) - macht es Sinn?

InformationsquelleAutor laukok | 2011-01-26

Schreibe einen Kommentar