Wie benutze ich das Passwortfeld für die Groß- / Kleinschreibung?

8

Ich habe eine Benutzeranmeldung, aber der Benutzer kann sich mit der Groß- und Kleinschreibung anmelden. Bedeutet, wenn Ihr Kennwort "test" ist, dann kann sich der Benutzer mit dem Kennwort "TEST" anmelden.
Ich möchte die Authentifizierung dieses Typs in meinem Passwortfeld vermeiden.

    
SKu 12.12.2011, 11:29
quelle

2 Antworten

13

Der einfachste Weg ist die Verwendung des binären Schlüsselworts in Ihrem Abfrage verwenden:

%Vor%

ODER

Verwenden Sie die strcmp in Ihrem PHP-Code:

Sie können dies auch verwenden, wenn Sie ein verschlüsseltes oder verschlüsseltes Passwort speichern, das ich empfehle.

    
Book Of Zeus 12.12.2011 11:32
quelle
5

Ich denke, Sie speichern Passwörter in klar. Das ist nicht nur ziemlich unsicher, es ist auch in den meisten Situationen unnötig. Mein Rat ist, Passwörter in zwei Spalten zu speichern, zum Beispiel:

%Vor%

Bevor Sie ein neues Passwort speichern, nehmen Sie das vom Benutzer angegebene Passwort ( $clear_password ), erstellen eine zufällige Zeichenfolge ( $salt ) und verwenden beide, um einen Hash zu erstellen ( sha1sum($salt . $clear_password ). Speichere sowohl das Salz als auch den Hash und verwerfe das Löschen-Passwort.

Um ein Passwort zu validieren, rufen Sie das gespeicherte Salt für den angegebenen Benutzer ab, generieren Sie den Hash und prüfen Sie, ob er mit dem Hash in DB übereinstimmt.

Diese Technik wird gesalzene Passwörter genannt.

    
Álvaro González 12.12.2011 11:44
quelle

Tags und Links