Salzing meine Hashes mit PHP und MySQL
Wie die meisten Benutzer versuche ich nur, einen sicheren Weg zum Speichern von Passwörtern zu finden. Was ich hier nicht gefunden habe (oder vielleicht ist es mein Unverständnis), ist, wie ich einen gesalzenen Hash in meiner Datenbank abrufen und das Salt vom gesalzenen Passwort trennen kann,insbesonder mit eindeutigen Salzen für jedes Kennwort, während das Salt + -Kennwort in einer einzigen Spalte gespeichert wird.
Ich finde all diese coolen Möglichkeiten zum Verschlüsseln von Passwörtern (SHA-256, aber unterstützt MySQL nur SHA / 1 und MD5?) Und andere Dinge aus dem PHP-Handbuch, bin mir aber nicht sicher, wie man die Passwörter speichert und abruft.
So, soweit das alles ist, was ich verstehe:
SHA('$salt'.'$password') // My query sends the password and salt
// (Should the $salt be a hash itself?)
anach bin ich mit Salzen verlore
Das Passwort ohne Salt zu erhalten ist einfach, aber das Salt verwirrt mich. Woher bekomme ich den Wert wieder von $ salt, besonders wenn es einzigartig und sicher ist? Verstecke ich sie in einer anderen Datenbank? Konstante (scheint unsicher)?
BEARBEITEN Soll die Schlüsselvariable in HMAC Salt sein oder ist das etwas anderes?