sql >> Databasteknik >  >> RDS >> Mysql

password_hash, password_verify, MySQL missförstånd?

Du kan inte hasha indata och sedan fråga mot den i databasen, eftersom hashen kommer att använda ett annat slumpmässigt salt varje gång. Så du kan hasha samma lösenord tusen gånger och få 1000 olika resultat.

Du behöver helt enkelt bara fråga DB för posten som är relaterad till användarnamnet, och sedan jämföra lösenordshash som returneras från DB med inmatningslösenordet med password_verify() .

Dessutom, när du initialt skriver hashen till databasen vid skapande av lösenord (med password_hash() ) det finns ingen anledning att undkomma hashen. password_hash() används inte alls i lösenordsverifieringsprocessen.



  1. phpMyAdmin på MySQL 8.0

  2. Vilka är de 6 huvudkomponenterna i Microsoft Access?

  3. MySQL lagrad procedur med parametrar

  4. Ställa in standardtidszon på MySql Server via PhPMyAdmin