Come ottenere la password in forma utilizzabile (decrittazione)
Se la "password criptata" è stata implementata correttamente e in modo sicuro, in realtà non è una password criptata. È un "hash salato" di una password. Più specificamente, la password viene in qualche modo combinata con una stringa casuale di caratteri - diciamo, per esempio, che vengono aggiunti 8 caratteri casuali alla password. La stringa risultante viene poi sottoposta a hash usando un algoritmo come MD5, SHA-1 o SHA-256. L'"hash salato" che viene memorizzato nel campo "password criptata" del database utente diventa quindi la stringa di sale di 8 caratteri, seguita dalla rappresentazione stringa dell'hash (forse codificata usando Base64).
Dato solo l'hash salato, come si fa a "invertire" il processo e capire quale password ha generato l'hash salato? A meno che non si possa sfruttare una vulnerabilità nota nell'algoritmo di hashing, non è possibile farlo in un lasso di tempo ragionevole; si dovrebbe eseguire un attacco di forza bruta, molto probabilmente calcolando gli hash salati di quintilioni (o più) di password indovinate finché qualcosa alla fine calcola lo stesso valore. E anche se si calcola lo stesso valore, non c'è garanzia che sia la password originale - potresti semplicemente aver incontrato una collisione nell'algoritmo di hashing. Ma forse questo è abbastanza buono, se volete solo autenticarvi con successo nell'applicazione.
Quasi probabilmente, il Sole sarà diventato una gigante rossa, avrà inghiottito la Terra, avrà finito il carburante, e poi si ridurrà di nuovo ad una nana bianca molto, molto prima che troviate la password (o una collisione nell'hashing), specialmente se la stringa di sale è lunga 16 caratteri, e l'algoritmo di hashing è SHA-256. Hackerare l'applicazione probabilmente non vi servirà a molto a questo punto, ma se è ancora una priorità abbastanza alta per voi che state ancora eseguendo il vostro programma di cracking della password, allora mi congratulo per la vostra persistenza!
Articoli simili
- Qual è il miglior sistema operativo Window 64 Bit per un PC con Celeron 1.1 Ghz e 2GB di RAM (1.87GB utilizzabile)?
- Quanta memoria interna utilizzabile è rimasta nel Moto G Turbo Edition dopo l'aggiornamento ad Android 6.0 (Marshmallow)?
- Qual è il vantaggio dei password manager come LastPass rispetto alla sincronizzazione delle password integrata come Firefox Sync?
- Come aprire i miei file PDF se sono bloccati con una password ma ho dimenticato la password che ho usato