Der Hash des Benutzers in der DB sollte wie gespeichert werden?
So wie ihn die jeweils benutzte Funktion zurück gibt. Der Salt ist da schon mit drin. Was die Funktionen (jenseits von purem sha1 oder md5 zurück geben sieht ungefähr so aus:
$METHODE$rounds=RUNDEN$SALT$HASH oder, je nach Verfahren
Das ist wie CSV: Die $ dienen als Trennzeichen.
Bei Methoden mit fest stehender Rundenzahl entfällt $rounds=RUNDEN.
Beim verifizieren musst Du aber anders vorgehen: Du musst den hash mitsamst dem Salt erst aus der Datenbank holen und dann das Passwort verifizieren. Erst wenn das funktionierte kannst Du "den Benutzer reinlassen".
Mit der derzeit aktuellen Methode würde das so aussehen:
<?php
$password="geHeim";
$password_hash=password_hash($password, PASSWORD_DEFAULT);
echo $password_hash, "\n";
if ( password_verify($password, $password_hash) ) {
echo "verifiziert\n";
}