passord_verify() hash
bearbeitet von
Hallo
> ich möchte gern im groben wissen, wie `password_verify()` in _PHP_ funktioniert. Ich weis das der Hashwert der aus der Funktion `password_hash()` generiert wurde jedes mal ein anderer ist. Spielen `microtime()` usw. eine Rolle??? Sonst wüsste ich es mir nicht zu erklären.
Wie Regina bereits erklärte, wirtd mit einem Salt gearbeitet. Der Salt wird entweder vorgegeben oder automatisch generiert. Weiterhin können der zu verwendende Algorithmus und die Anzahl der Durchläufe angegeben oder die Vorgabewerte der Funktion genutzt werden.
Alle diese Werte (Salt, Algorithmus, Zahl der Durchläufe) sind hernach auch Bestandteile des Hashes des Passworts. Damit ist es möglich, den Vergleich mit der Funktion `password_verify` durchzuführen, da diese alle benötigten Informationen aus dem Hash, mit dem eine Passworteingabe verglichen werden soll, extrahieren kann. Die Passworteingabe wird, mit den selben Parametern wie der vorhendene Hash ebenfalls gehasht. Janachdem, wie der Vergleich ausfällt, kommt dann `true` oder `false` heraus.
Tschö, Auge
--
Eine Kerze stand [auf dem Abort] bereit, und der Almanach des vergangenen Jahres hing an einer Schnur. Die Herausgeber kannten ihre Leser und druckten den Almanach auf weiches, dünnes Papier.
Kleine freie Männer von Terry Pratchett