elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  MD5...
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: MD5...  (Leído 2,390 veces)
Xaina

Desconectado Desconectado

Mensajes: 39



Ver Perfil
MD5...
« en: 17 Mayo 2008, 19:39 pm »

Buenas, estaba buscando el algoritmo del MD5 en php y me encontre que se puede usar  directamente en Mysql usando esta linea:

Código:
Insert into usuarios (nick,clave) values ('usuario',MD5('contraseña'));

todo bien... pero... sabiendo que la desencriptación es imposible en este caso, si deseo hacer una comparación desde php cuando un supuesto usuario introduzca la contraseña ¿como lo haria? lei que pueden haber diferencias entre la cifrado hecha desde php a la que usa el mysql.

Entre los diferentes tipos de encriptacion que trae el mysql (según lo que lei) ¿cual es el mas seguro? --> MD5, SHA o SHA1, AES, etc.

Edito:

bueno, investigando encontre esto:

Código
  1. <?
  2.   $contraseña = md5 ( $contraseña );
  3. ?>
  4.  
ç

al parecer eso basta para cifrar la contraseña, pero... ¿habra alguna diferencia entre la cifrado elaborada en php a la realizada directamente en mysql?

¡saludos! Xaina


« Última modificación: 17 Mayo 2008, 20:17 pm por Xaina » En línea

Ertai
Colaborador
***
Desconectado Desconectado

Mensajes: 2.025


Ralph Wiggum


Ver Perfil
Re: MD5...
« Respuesta #1 en: 17 Mayo 2008, 20:02 pm »

Exacto, para hacer un login tendrias que usar la funcion en php md5() para cifrar la contraseña usada y compararla con el hash (la contraseña en md5) que tienes guardada en la base de datos.

Que yo sepa, no tendria que haber ninguna diferencia entre el MD5 de MySQL y el de PHP, de hecho, yo uso los dos y son identicos (sino, perderia toda la gracia del sistema).

No hay ninguno seguro al 100%, pero seguramente, el más difícil de romper por fuerza bruta, sea SHA1.

Suerte.


En línea

Si la felicidad se comprara, entonces el dinero sería noble.

Código:
void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}
Xaina

Desconectado Desconectado

Mensajes: 39



Ver Perfil
Re: MD5...
« Respuesta #2 en: 17 Mayo 2008, 20:22 pm »

Muchas gracias por responder Ertai, me dejas un poco más clara, llegue leer en otro foro, el caso de un joven que usaba los dos metodos antes mencionado y en la comparación no funcionaba a pesar de usar la misma contraseña y el problema según él, era que una de las dos tenia caracteres en mayuscula que el otro hash no tenia. Ahora no se si eso sea verdad...

Seguire investigando quizás use SHA1, espero que tambien se pueda usar en php al igual que MD5, incluso estudio la posibilidad de usar el JS para cifrar la contraseña antes de enviarla al servidor para su comparación.

Xaina
En línea

Ertai
Colaborador
***
Desconectado Desconectado

Mensajes: 2.025


Ralph Wiggum


Ver Perfil
Re: MD5...
« Respuesta #3 en: 18 Mayo 2008, 21:27 pm »

Hay otros pequeños trucos para incrementar la seguridad, ya que te veo muy en el tema.

Por ejemplo, puedes hacer un doble hash

Código
  1. $foo = md5(sha1($pass));

Otra idea es poner, por ejemplo, un prefijo y sufijo

Código
  1. $foo = md5(sha1("87sdfv-´+'" . $pass . "sd34+435´"));

Saludos  ;)
En línea

Si la felicidad se comprara, entonces el dinero sería noble.

Código:
void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines