Ciao, in una tabella mysql ho un campo password settato con la funzione omonima per criptare la stringa del record, ma come posso fare ad indicare da php che la password deve essere decodificata ? Praticamente non mi fa mai entrare...
Ciao, in una tabella mysql ho un campo password settato con la funzione omonima per criptare la stringa del record, ma come posso fare ad indicare da php che la password deve essere decodificata ? Praticamente non mi fa mai entrare...
se hai usato MD5 non puoi, il processo di criptazione è one-way.
puoi confrontare la password che prendi da un form (????) così:
codice:// $_POST['password'] password presa dal form // $row['password'] password criptata presa dal db if (md5($_POST['password']) == $row['password']) echo "ok"; else echo "errore";
think simple think ringo
password è una criptazione non reversibile. Per confrontarla devi fornire la password criptata.
... where pwd = password('parola')....
ah perfetto è one-way... grazie a tutti, ciao![]()
scusate ancora una cosa: md5 può essere decriptata ?
la funzione md5 che è presente, per fortuna, sia in php e mysql (la funzione è identica per tutti e 2) è one-way --- una volta criptata non puoi risalire a quella in chiaro ... solo utilizzando una stringa in chiaro e criptarla con md5 puoi fare i confronti
in sintesi a quello che hai chiesto è NOOOOO
Assolutamente no. L'unico modo di forzarla sarebbe un brute force sulla parola password. Se la pwd è semplice e con un poco di fortuna la si può indovinare, nel senso di avere lo stesso risultato hash, ma se solo sono 6 caratteri di pwd e con poco senso logico, cioè non una parola a senso compiuto, hai voglia di tentare.Originariamente inviato da jetpower
scusate ancora una cosa: md5 può essere decriptata ?
Per inciso password (mysql) produce un hash di 16 caratteri esadecimali (64 bit), mentre MD5() ne produce uno di 32 (128 bit) e SHA1() ne produce 40 (160 bit) con php5 pare ci sia una opzione per averne solo 20 di quest'ultimo.
Il prodotto di queste funzioni non è in realtà una "criptazione" ma qualcosa di più simile ad un "checksum". Quindi la stringa esadecimale ottenuta è il risultato di una serie di operazioni ben stabilite, di pubblica conoscenza e sempre ripetibile. La forza della password sta nel numero dei caratteri che la compongono. Dovrebbero essere sempre con non meno di 6 digit e comprensiva di qualunque carattere.
![]()
questo pero' è un discroso di sicurezza, non di programmazione
Solo tu sai che intendi dire. Se ritieni che sono OT segnala il post ad un mod. Diversamente il tuo commento lascia il tempo che trova.Originariamente inviato da pieroseko
questo pero' è un discroso di sicurezza, non di programmazione
![]()
o dai sempre a litigare...piuttosto venite a leggere il mio 3d col titolo [mysql] query su date!
![]()