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

Wie verwende ich AES_ENCRYPT richtig?

Typischerweise besteht keine tatsächliche Notwendigkeit, ein Passwort rückzuverschlüsseln. Das Vorhandensein dieser Fähigkeit verringert von Natur aus die Sicherheit des Systems. Verwenden Sie stattdessen eine irreversible Hash-Funktion. Ich schlage SHA-256 (oder größer) vor, das ein String-Ergebnis erzeugt:

 SHA2 (CONCAT (user.name, user.password, 'some salt', user.id), 256)

Ich habe auch frustrierte Bulk-Regenbogentabellen vor jeglicher Verwendung durch das Einfügen anderer Daten, die immer zum Zeitpunkt der Passwortvalidierung bekannt sind.

SHA2 erfordert MySQL 5.5 oder höher. Wenn Sie eine frühere Version verwenden, SHA1() ist fast genauso gut und im Allgemeinen viel besser als MD5 , AES usw.