2010-09-01 32 views
5

Ok. è chiaro che uno deve memorizzare la password hash nel database ma nel caso in cui un utente non ricordi la password e voglia recuperarla, ovviamente l'utente non gradirà avere la password con hash. Se la password è stata sottoposta a hash con md5 o ulteriori come salt e sha1, allora come recuperare la password.PHP dehashing la password

+3

Un hash è come un tritacarne. Puoi trasformare una mucca in carne macinata, ma non puoi trasformare la carne macinata in una mucca. –

risposta

17

C'è una sola risposta semplice: non è possibile.

Beh, teoricamente si potrebbe, ma potrebbe richiedere molti anni per password se sono abbastanza lunghi. Dopotutto, questo è il punto delle password di hashing in primo luogo: rendere i dati effettivamente inutilizzabili da un utente malintenzionato (o almeno proteggere la password in chiaro dell'utente, che è un dato sensibile.)

Basta che il sito invii un "cambia la password" e-mail contenente un link a una pagina in cui l'utente può modificare la sua password. Questo è il modo in cui la maggior parte dei siti professionali gestiscono questo dilemma.

+6

e questo è il motivo per cui la forza della password della maggior parte dei siti professionali equivale alla forza della password dell'account e-mail che usi per registrarti! –

+0

È vero :) Tuttavia, per questo, tuttavia, supera le domande di sicurezza. – hb2pencil

+1

http://tools.benramsey.com/md5/ md5 hash reverse tool. Tuttavia, le buone password probabilmente non esisteranno nel db. –

3

La sicurezza dell'hash anziché crittografare la password è che non è possibile annullare un hash. Se è possibile rimuovere la password e fornire all'utente la propria password di testo normale, qualsiasi hacker può invertire la password con hash che si utilizza per la registrazione e accedere e "dehash" per ottenere la password dell'utente.
Questa è una funzionalità, non un bug.

1

hashing indica "non può essere richiamato".

Se un utente non ricorda la propria password, non ne ha sicuramente bisogno.
Basta creare un altro casuale e inviarli.
Non è un grosso problema.

0

sì..uno può aver dimenticato la sua password..la buona pratica mentre si utilizza la password con hash sarebbe quella di fare in modo che l'utente digiti l'indirizzo email dell'account di cui si desidera reimpostare la password, quindi il sistema resetterà il password degli utenti con un'altra password generata. La password hash MD5 è quasi impossibile recuperare la password originale da quella con l'hash

0

Fai sempre attenzione ai siti che possono inviarti via e-mail la password che usi. Ciò significa che la tua password è facilmente visibile da chiunque abbia accesso al database delle password, il che è particolarmente pericoloso se riutilizzi le password.

Per il ripristino della password, si consiglia di utilizzare "domande sicure" con risposte crittografate.

È opportuno che tutti coloro che gestiscono siti Web tengano i propri clienti ragionevolmente al sicuro dagli hacker.

Problemi correlati