si tratta di una funzione hash che converte una stringa in una sequenza di caratteri (tipicamente esadecimali).Originariamente inviato da timberwolf
googlando l'argomento sul web ho scoperto che per inserire una password criptata basta usare un comando del genere:
$password = sha1($password);
quello che non capisco é se il campo nel db deve essere un semplice campo txt o deve essere di un tipo particolare..
e siccome il comando sopra riportato é per il PHP, lato MYSQL come si risolve?
ti basta un campo CHAR per contenerla.
---
Lato "sicurezza" dovresti "salare" la password (aggiungendo in testa ed in coda alla stringa una sequenza di caratteri tipo DMN"@@1!;|)), e magari ripetere un migliaio di volte la codifica con un ciclo
qualcosa tipo
codice:=sha1('"DMNNWB"+password+"N22mx|à")
for i:=1 to 1000
codice:=sha1(codice)
"salare" rende difficile usare le rainbowtable; il reiterare più volte rallenta gli attacchi brute force. Se poi vuoi fare anche meglio fondi due hash diversi
for i:=1 to 1000
codice:=sha1(md5(codice))

Rispondi quotando