Come la maggior parte degli utenti, sto semplicemente cercando di trovare un modo sicuro per archiviare le password. Quello che non ho trovato qui (o forse è la mia mancanza di comprensione) è come recuperare un hash salato nel mio database e separare il sale dalla password hash, in particolare con sali unici per ogni password mantenendo la password di sale + in una singola colonna.Salare i miei hash con PHP e MySQL
Sto trovando tutti questi modi interessanti per crittografare le password (SHA-256, ma MySQL supporta solo SHA/1 e MD5?) E altre cose dal manuale PHP, ma non sono sicuro di come memorizzare e recuperare le password.
Quindi, finora questo è tutto quello che comprendo:
SHA('$salt'.'$password') // My query sends the password and salt
// (Should the $salt be a hash itself?)
Dopo di che mi sono perso con sali.
Recuperare la password senza sale è facile, ma il sale mi confonde. Dove posso ottenere nuovamente il valore da $ salt, specialmente se è unico e sicuro? Li nascondo in un altro database? Costante (sembra pericoloso)?
MODIFICA: La variabile chiave in HMAC dovrebbe essere salata o si tratta di qualcos'altro?
FWIW, MySQL 5.5 integrato con supporto SSL include un 'SHA2 () 'funzione che fornisce gli algoritmi hash SHA224, SHA256, SHA384 e SHA512. Se stai usando una versione precedente di MySQL, usa la funzione 'hash()' in PHP. –
Grazie ancora, Bill, questa è la seconda volta che hai aiutato! Sto usando 5.1 perché è venuto con WAMP (wampserver.com). Ho dovuto disinstallare il mio vecchio MySQL per installare questo. Sfortunatamente, non sono sicuro di come aggiornarlo ... Proverò a utilizzare PHP per la mia crittografia. – Tarik