Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Passwortfunktion

Die Dokumentation für PASSWORD() von MySQL Funktionszustände:

Die Funktion PASSWORD() wird vom Authentifizierungssystem in MySQL Server verwendet; Sie sollten es nicht in Ihren eigenen Anwendungen verwenden.

Lesen Sie „Sie speichern Passwörter wahrscheinlich falsch " für bessere Ratschläge zum Hashen und Speichern von Passwörtern.

MD5 und SHA-1 gelten als zu schwach, um sie für Passwörter zu verwenden. Die aktuelle Empfehlung lautet, SHA-256 zu verwenden.

Ich habe einen Patch zu MySQL beigetragen, um einen SHA2() zu unterstützen Funktion, und der Patch wurde akzeptiert, aber da sich ihre Roadmap geändert hat, ist nicht klar, wann sie es in ein veröffentlichtes Produkt schaffen wird.

In der Zwischenzeit können Sie Hashing und Salting in Ihrer Programmiersprache verwenden und den resultierenden Hash-Digest einfach in der Datenbank speichern. Wenn Sie PHP verwenden, ist SHA-256 im hash() Funktion.

Aktualisierung: MySQL 5.5.8 wurde im Dezember 2010 veröffentlicht und diese Version enthält Unterstützung für die SHA2() Funktion.