PHP Passwort Hash entschlüsseln?
Hallo,
aktuell erstelle ich einen eigenen Passwort Manager.
Ich habe alles soweit eingestellt und läuft soweit.
Nun ist mein Problem, dass ich gerne die Passwörter Verschlüsseln möchte.
Da bin ich dann auf diese Website gestoßen
https://www.php-einfach.de/experte/php-sicherheit/daten-sicher-speichern/php-passwort-sicherheit/
dort habe ich folgenden Text für meine Website verwendet.
$hash = password_hash($passwort, PASSWORD_DEFAULT);
Nun möchte ich den Text aber wieder entschlüsselt haben.
Wie kann ich das am besten machen?
3 Antworten
Ein Hash ist keine Verschlüsselung daher ist auch keine Entschlüsselung dafür vorgesehen. Es handelt sich und eine Einwegfunktion, die nicht rückgängig (außer durch erraten oder Kollisionsttests) gemacht werden kann!
Nach dem Konzept von password_hash soll das Passwort nicht wieder entschlüsselt werden. Hash (und salt) werden gespeichert, aber nicht das Passwort selbst. Wenn der Wert mit einer Passworteingabe verglichen werden soll, wird die Eingabe auf dieselbe Art und Weise verschlüsselt und die Hashes werden einander gegenübergestellt.
Wie kann ich das den dann am besten machen?
Also ich möchte einfach das Passwort Verschlüsseln und dann wenn man auf der liste ist dann soll alles wieder sichtbar sein!
Dazu musst du eigentlich nichts wirklich verschlüsseln. Nimm ein input-Element, setze den Wert dort hinein und ändere via JS das type-Attribut (Wechsel zwischen password und text). Wenn das Passwort nicht initial im Feld stehen soll, kannst du es auch dynamisch nachladen lassen (schick via JavaScript und dem XMLHttpRequest-Objekt einen Request an den Server, wenn irgendein Event ausgelöst wird, z.B. der Klick auf einen Button) und so lange einfach irgendwas in das password-Feld schreiben.
Passwörter dürfen nicht entschlüsselt werden. Das ist nicht erlaubt.
Du kannst aber Inhalte durchaus vetschlüsseln und wieder entschlüsseln. Wir verwenden openssl Funktionen in PHP
"Passwörter dürfen nicht entschlüsselt werden" Woher nimmst du denn diese Erkenntnis? Wie funktioniert denn dann ein Passwortmanager? - Wo ja auch der Fragesteller explizit seine Anwendung sieht.
Wie kann ich das den dann am besten machen?
Also ich möchte einfach das Passwort Verschlüsseln und dann wenn man auf der liste ist dann soll alles wieder sichtbar sein!