Foros del Web » Programando para Internet » PHP »

Encriptar datos en volumen con md5

Estas en el tema de Encriptar datos en volumen con md5 en el foro de PHP en Foros del Web. Hola foreros, me causa impresion que ahora que intento entrar al foro de PHP mi firefox me saca una advertencia diciendo que este es un ...
  #1 (permalink)  
Antiguo 05/11/2009, 11:26
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Encriptar datos en volumen con md5

Hola foreros,

me causa impresion que ahora que intento entrar al foro de PHP mi firefox me saca una advertencia diciendo que este es un sitio con contenido peligroso, sera acaso que tanto conocimiento puede afectar a los equipos

Pero bueno el caso es que me acabo de hacer un miniscript que toma todos los datos que tengamos almacenados en una bd y los encripta con md5, muy util para encriptar contraseñas de varios usuarios para usarlas en joomla

espero les sirva

Código php:
Ver original
  1. <?php
  2.  
  3. //conectamos a la Base de datos
  4. include('conexion.php');
  5.  
  6.  
  7. //Traemos todos los datos de la tabla
  8. $trae="SELECT * FROM jos_users";
  9. $cons1=mysql_query($trae) or die (mysql_error());
  10.  
  11.  
  12. //construimos el ciclo en el que trae el campo contraseña, lo encripta y actualiza en la BD hasta que se terminen los registros
  13. while ($row = mysql_fetch_assoc($cons1)){
  14.  
  15. //con esta linea obtenemos el campo password
  16. $pss=$row['password'];
  17.  
  18. //Con esta linea encriptamos la contraseña
  19. $pss1= md5($pss);
  20.  
  21. //Aqui actualiza los datos en la BD con la contraseña encriptada
  22. $actualiza="UPDATE jos_users SET password='$pss1' WHERE password='$pss'";
  23. $corre=mysql_query($actualiza) or die (mysql_error());
  24. $user=$row['username'];
  25. ?>
  26.  
  27. //muestra el reporte de cada accion
  28. <p><strong>Encriptando datos para el usuario :</strong><?php echo $user; ?>
  29. <?
  30. }
  31. ?>
__________________
Say no more.......
  #2 (permalink)  
Antiguo 05/11/2009, 11:32
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Encriptar datos en volumen con md5

Otra opción sería hacerlo en una única consulta:
Código MySQL:
Ver original 
Ya que MySQL dispone de la función MD5() para calcular el hash.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 05/11/2009, 18:21
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Respuesta: Encriptar datos en volumen con md5

Hola.

buen aporte, gracias, nadamas un cosejito que estaria bueno que le implementaras y es que se verifique que el pasword NO se encuentre encriptado por que de ser asi.

suponiendo que mi pass es 123, tras ejecutar una vez el script quedaria asi:
123 => 1f3870be274f6c49b3e31a0c6728957f

y si por alguna razon un registro marco error o hay nuevo y se ejecuta para aplicar esto a los nuevos registros pasaria lo siguiente:

mi password original era 123 tras encriptarlo queda asi: 1f3870be274f6c49b3e31a0c6728957f pero si pasa una de las dos situaciones que planteo ahora mi password seria 1f3870be274f6c49b3e31a0c6728957f y se volveria a encriptar quedando de la siguiente manera asdflkj46lkjsd897w45jkhsg98734, con lo que eso ya no corresponderia a 123 sino a 1f3870be274f6c49b3e31a0c6728957f

pero aun asi es un muy buen aporte gracias
  #4 (permalink)  
Antiguo 05/11/2009, 18:30
Avatar de luckystrikede11  
Fecha de Ingreso: octubre-2009
Ubicación: Concepcion, Chile
Mensajes: 240
Antigüedad: 14 años, 6 meses
Puntos: 17
Respuesta: Encriptar datos en volumen con md5

yo uso sha1.. usa una encriptacion de 40 caracteres y md5 32.. pero nose si es mejor o peor.
  #5 (permalink)  
Antiguo 05/11/2009, 18:39
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Respuesta: Encriptar datos en volumen con md5

lair, mañana trabajare en eso y lucky, de hecho alguien me dijo hoy que el md5 es menos seguro tratare de implementarlo con sha1, lo que pasa es qe inicialmente o hice pensando en joomla pero se adaptara a las necesidades
__________________
Say no more.......
  #6 (permalink)  
Antiguo 05/11/2009, 18:39
Avatar de almagropaco_  
Fecha de Ingreso: marzo-2008
Ubicación: Mar del Plata
Mensajes: 854
Antigüedad: 16 años, 1 mes
Puntos: 25
Respuesta: Encriptar datos en volumen con md5

MD5, ya no es tan seguro como antes, igual cada uno puede adaptar este script a su metodo de encriptacion, para verificar que ya no este escrito en MD5 la contraseña podria ser que la contraseña deba ser menor a 32 caracteres, si es de 32 caracteres ya esta encriptada, obviamente en el registro de usuario, no acepten 32 caracteres..
  #7 (permalink)  
Antiguo 05/11/2009, 19:05
Avatar de bioxido  
Fecha de Ingreso: diciembre-2008
Ubicación: $_SERVER['PHP_SELF']
Mensajes: 601
Antigüedad: 15 años, 4 meses
Puntos: 21
Respuesta: Encriptar datos en volumen con md5

yo lo que hago primero creo un numero random, cuando se registra un usuario un numero unico para ese usuario ( y no id) de 4caracteres...la pass que recivo por post la encripto en md5, despues al principio del md5 agrego el numero random y vuelvo a encriptar en md5...

Lo unico que tiene de 'malo' seria que tenes que obtener un campo mas de la DB cada vez que un usuario inicia sesion.
  #8 (permalink)  
Antiguo 06/11/2009, 12:05
Avatar de almagropaco_  
Fecha de Ingreso: marzo-2008
Ubicación: Mar del Plata
Mensajes: 854
Antigüedad: 16 años, 1 mes
Puntos: 25
Respuesta: Encriptar datos en volumen con md5

Hola, me parece que no deberiamos seguir comentando en este post, pero te respondo "bioxido", existen diferentes mecanismos, puedo encriptar la conteseña en md5 y tomar solo 15 caracteres, existen infinitas formas, pero si saben que mecanismo usas, podran volverlo a MD5 y averiguar lo que dice, pero tengamos en cuenta, que es muy dificil que entre a tu base de datos, dudo que alguien intente hacerlo, tienes que tener una web importante, o algun enemigo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:31.