Heim >Datenbank >MySQL-Tutorial >Wie verifiziert man gesalzene Passwörter auf einer Mitgliederseite sicher?

Wie verifiziert man gesalzene Passwörter auf einer Mitgliederseite sicher?

Barbara Streisand
Barbara StreisandOriginal
2024-12-04 09:18:12979Durchsuche

How to Securely Verify Salted Passwords in a Member Site?

So überprüfen Sie gesalzene Passwörter auf Ihrer Mitgliederseite

Die Einbettung von Sicherheitsmaßnahmen in die Benutzerauthentifizierung ist für den Schutz sensibler Informationen von entscheidender Bedeutung. Das Salten von Passwörtern verbessert die Verschlüsselung und verhindert unbefugten Zugriff. In diesem Artikel wird der Prozess der Überprüfung von Salted-Passwörtern anhand einer Datenbank und der Sicherstellung der Benutzerautorisierung erläutert.

Verifizierung von Salted-Passwörtern

Um ein Salted-Passwort zu überprüfen, führen wir die folgenden Schritte aus:

  1. Salz abrufen: Führen Sie eine Abfrage aus, um das mit dem verknüpfte Salz abzurufen Benutzername.
  2. Passwort und Salt kombinieren: Verketten Sie das eingegebene Passwort des Benutzers und den abgerufenen Salt.
  3. Hashen Sie die verkettete Zeichenfolge:Verwenden Sie ein Hashing Funktion wie SHA-256, um einen Hash-Wert für die Verkettung zu generieren string.
  4. Hashes vergleichen:Überprüfen Sie, ob der Hash-Wert aus Schritt 3 mit dem in der Datenbank gespeicherten Hash-Passwort übereinstimmt. Wenn sie übereinstimmen, ist das Passwort gültig.

Beispielcode für die Salted-Passwortverifizierung:

$servername = 'localhost';
$username = 'root';
$pwd = '';
$dbname = 'lp001';

$connect = new mysqli($servername, $username, $pwd, $dbname);

if ($connect->connect_error) {
    die('Connection failed: ' . $connect->connect_error);
}

$name = mysqli_real_escape_string($connect, $_POST['name']);
$password = mysqli_real_escape_string($connect, $_POST['password']);

$saltQuery = "SELECT salt FROM users WHERE name = '$name';";
$saltResult = mysqli_query($connect, $saltQuery);

if ($saltResult === false) {
    die(mysqli_error($connect));
}

$row = mysqli_fetch_assoc($saltResult);
$salt = $row['salt'];

$saltedPW = $password . $salt;
$hashedPW = hash('sha256', $saltedPW);

$sqlQuery = "SELECT * FROM users WHERE name = '$name' AND password = '$hashedPW';";
$sqlResult = mysqli_query($connect, $sqlQuery);

if (mysqli_query($connect, $sqlQuery)) {
    echo '<h1>Welcome to the member site ' . $name . '</h1>';
} else {
    echo 'Error adding the query: ' . $sqlQuery . '<br> Reason: ' . mysqli_error($connect);
}

Indem Sie diese Schritte und den Beispielcode in Ihr Mitglied integrieren Auf dieser Website können Sie gesalzene Passwörter effektiv überprüfen und die Benutzerautorisierung sicher und effizient sicherstellen.

Das obige ist der detaillierte Inhalt vonWie verifiziert man gesalzene Passwörter auf einer Mitgliederseite sicher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn