Auge: passord_verify() hash

Beitrag lesen

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, wird 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 vorhandene Hash ebenfalls gehasht. Jenachdem, 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