2009-08-31 2 views

risposta

17

Sha-1 è un hash unidirezionale. Non può essere invertito se non per l'uso di un attacco di forza bruta che richiederà milioni di anni.

Esistono alcuni database online che consentono di invertire l'hash delle parole/confiuazioni di parole comuni. Tuttavia, django aggiunge "sale" alla password prima di calcolare l'hash, quindi non è possibile invertire le password di django.

Ecco perché viene utilizzato un hash. Nessuno può scoprire la password, gli amministratori neanche sys :-)

+0

Una dimostrazione che p = np significherebbe che esiste un algoritmo – straykiwi

+0

In che modo Django lo decifra per consentire all'utente di accedere al pannello di amministrazione? –

+0

Non decodifica la password originale. Crittografa il tuo tentativo di password e lo confronta con il passwd già crittografato – tato

8

No, questo è il punto.

Se l'utente ha dimenticato la password, sarà necessario ripristinarla.

17

Sì, è possibile. Tutto ciò di cui hai bisogno è di qualche milione di anni, e un computer delle dimensioni del nostro sistema solare.

+2

o Abbey da NCIS. –

+1

Oppure un plasmobot ... http://www.sciencedaily.com/releases/2009/08/090827073256.htm =) – StingyJack

+1

o Chloe dal 24 –

1

Django sta usando SHA1 che è un hash a senso unico per l'hashing delle password e "sale" la password prima di loro la crittografia. Quindi ci vorrà molto più tempo (forse la nostra vita) per decrittografarli. Le password vengono sottoposte a hash in modo che nessuno possa decrittografarlo anche se hanno valori hash.

+0

_impossible_ è una parola grossa ... –

+0

@PaoloMoretti. Lo accetto. Ma il processo richiederà molto più tempo. Ecco perché ho usato la parola impossibile. Lo correggerò. Grazie per il consiglio. – arulmr