PHP - Hashed Password: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
 
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)
 
(Quelle: https://www.geeksforgeeks.org/how-to-secure-hash-and-salt-for-php-passwords/ Zugriff: 6/22)
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