Come già affermato, non è possibile decrittografare MD5 senza tentare qualcosa come l'hacking di forza bruta che è estremamente dispendioso in termini di risorse, non pratico e non etico.
Tuttavia si potrebbe usare qualcosa di simile per cifrare/decifrare le password/etc in modo sicuro:
$input = "SmackFactory";
$encrypted = encryptIt($input);
$decrypted = decryptIt($encrypted);
echo $encrypted . '<br />' . $decrypted;
function encryptIt($q) {
$cryptKey = 'qJB0rGtIn5UB1xG03efyCp';
$qEncoded = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($cryptKey), $q, MCRYPT_MODE_CBC, md5(md5($cryptKey))));
return($qEncoded);
}
function decryptIt($q) {
$cryptKey = 'qJB0rGtIn5UB1xG03efyCp';
$qDecoded = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($cryptKey), base64_decode($q), MCRYPT_MODE_CBC, md5(md5($cryptKey))), "\0");
return($qDecoded);
}
Utilizzando un metodo criptati con un sale sarebbe ancora più sicuro, ma questo sarebbe un buon passo successivo passato usando solo un hash MD5.
fonte
2013-03-04 05:02:22
Non decifrare MD5 ... – sachleen
hashing è un'operazione a senso unico, che significa che non può essere decifrato. Tuttavia, è possibile forzare la hash per forzare l'hash per trovare l'input (i) che lavora per esso. – Vulcan
md5 è un meccanismo di hashing della password vecchio e facilmente superabile, suggerisco di utilizzare l'ultimo algoritmo di crittografia della password. La codifica – KyelJmD