Cita:
Iniciado por kaninox Tengo una consulta, como puedo guardar una password en la base de datos de forma segura...
antes almacenaba en md5 y ahora en sha1 pero hasta donde se ahora se pueden decriptar?
alguna solucion o idea...
saludos
Descriptar, no se que será, desencriptar, no se pueden, por son métodos one way, pero md5 existen base de datos gigantes donde podes buscar el valor de tu clave hash.
Antes que los métodos anteriores yo te aconsejo que utilices la técnica salt, md5 es extremadamente veloz pero es más popularmente usado (por tanto las bd que exiten tiene más valores), por lo que sha1 sin ser paranoicos estaría más que bien, si queres algo más utilizá tiger, whirlpool, etc, me quedo con el primero.
Pero para utilizar salt haces:
Código PHP:
$clave = "123456";
$salt = sprintf("%02d",rand(0,999999)); // Este es un valor de dos números randomizado, te conviene utilizar letras y/o símbolo para hacerlo realmente valedero
$hash = md5("{$clave}:{$salt}").":{$salt}";
cuando quieras corroborar, extraes el salt que dejaste en el hash separado por los dos puntos y realizas el proceso de nuevo