PHP - Hashed Password: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „Hashed Passwords sind der aktuelle Stand (2020) zum Speichern von Passwörtern. In PHP lassen sich diese recht leicht verifizieren. In der Datenbank sieht es…“)
 
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 4: Zeile 4:
 
  $2y$10$7xhhJTrNvXtYCXswa6NjKOQwOM6Sj7R12BPD3xBZToKxO61q4KInm
 
  $2y$10$7xhhJTrNvXtYCXswa6NjKOQwOM6Sj7R12BPD3xBZToKxO61q4KInm
  
 +
== Passwort entschlüsseln ==
 
In PHP kann man es so entschlüsseln:
 
In PHP kann man es so entschlüsseln:
 
+
(Quelle: https://www.geeksforgeeks.org/how-to-secure-hash-and-salt-for-php-passwords/ Zugriff: 6/22)
 
<syntaxhighlight lang="php">
 
<syntaxhighlight lang="php">
 
<?php
 
<?php
Zeile 27: Zeile 28:
 
?>
 
?>
 
</syntaxhighlight>
 
</syntaxhighlight>
</syntaxhighlight>
+
 
 +
== Hintergrundinfos ==
 +
Oft sieht man Dollarzeichen gefolgt von anderen Zeichen in verschlüsselten Passwörtern. Dies ist die Bedeutung.
 +
$hash_type$random_salt$encrypted_password
 +
 
 +
Der Hash Type steht für den verwendeten Algorhythmus
 +
Mit dem zusätzlichen Salt verhindert man, dass gleiche Passwörter immer zur gleichen Zeichenfolge führen.
 +
Am Ende steht das verschlüsselte Passwort

Aktuelle Version vom 28. Juni 2022, 11:44 Uhr

Hashed Passwords sind der aktuelle Stand (2020) zum Speichern von Passwörtern. In PHP lassen sich diese recht leicht verifizieren.

In der Datenbank sieht es etwa so aus:

$2y$10$7xhhJTrNvXtYCXswa6NjKOQwOM6Sj7R12BPD3xBZToKxO61q4KInm

Passwort entschlüsseln[Bearbeiten]

In PHP kann man es so entschlüsseln: (Quelle: https://www.geeksforgeeks.org/how-to-secure-hash-and-salt-for-php-passwords/ Zugriff: 6/22)

<?php
  
  // Plaintext password entered by the user
  $plaintext_password = "Password@123";
  
  // The hashed password retrieved from database
  $hash = 
"$2y$10$8sA2N5Sx/1zMQv2yrTDAaOFlbGWECrrgB68axL.hBb78NhQdyAqWm";
  
  // Verify the hash against the password entered
  $verify = password_verify($plaintext_password, $hash);
  
  // Print the result depending if they match
  if ($verify) {
      echo 'Password Verified!';
  } else {
      echo 'Incorrect Password!';
  }
?>

Hintergrundinfos[Bearbeiten]

Oft sieht man Dollarzeichen gefolgt von anderen Zeichen in verschlüsselten Passwörtern. Dies ist die Bedeutung.

$hash_type$random_salt$encrypted_password

Der Hash Type steht für den verwendeten Algorhythmus Mit dem zusätzlichen Salt verhindert man, dass gleiche Passwörter immer zur gleichen Zeichenfolge führen. Am Ende steht das verschlüsselte Passwort