Foros del Web » Programando para Internet » PHP »

Campo Password mysql

Estas en el tema de Campo Password mysql en el foro de PHP en Foros del Web. Hola compañeros Como hace uno para cuando se registren usuarios en nuestro sistema con un login y un password, el password no se pueda ver ...
  #1 (permalink)  
Antiguo 16/07/2008, 22:31
 
Fecha de Ingreso: diciembre-2007
Mensajes: 427
Antigüedad: 16 años, 4 meses
Puntos: 35
Campo Password mysql

Hola compañeros

Como hace uno para cuando se registren usuarios en nuestro sistema con un login
y un password, el password no se pueda ver ingresando al mysql. es decir se vea cifrado en la tabla de mysql.
  #2 (permalink)  
Antiguo 16/07/2008, 23:12
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Campo Password mysql

Primero en el registro lo encriptas
Código PHP:
$passwd md5($pass); 
luego en el login
Código PHP:
$passwd md5($_POST[pass]); 
  #3 (permalink)  
Antiguo 17/07/2008, 00:21
 
Fecha de Ingreso: enero-2007
Ubicación: Sevilla
Mensajes: 362
Antigüedad: 17 años, 3 meses
Puntos: 11
Respuesta: Campo Password mysql

Como te comenta vmac179, no existe campo password en mysql, lo que si puedes hacerlo encriptarlo con md5

Saludos
__________________
Si te he ayudado vota en mi carma.

Servicios Web
Videojuego Online
  #4 (permalink)  
Antiguo 17/07/2008, 00:36
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Respuesta: Campo Password mysql

Holas

Me podrian explicar como funciona y como adaptarlo a mi pequeño formulario? Uso MySQL, y tengo los campos Username y Password, y los envio con mi formulario comun y corriente, como adaptaria la encriptacion/desencriptacion?

Espero su ayuda

Saludos
__________________
CabaSoft Networks
  #5 (permalink)  
Antiguo 17/07/2008, 09:54
 
Fecha de Ingreso: diciembre-2007
Mensajes: 427
Antigüedad: 16 años, 4 meses
Puntos: 35
Respuesta: Campo Password mysql

Y eso q quiere decir el campo del formulario es $pass y el que inserto en la base de datos es passwd??
  #6 (permalink)  
Antiguo 17/07/2008, 12:27
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Campo Password mysql

para empezar, en la base de datos, el campo 'password' debe ser un campo varchar, de 32 caracteres de longitud, que es el tamaño de cualquier cadena de texto encriptada con md5
luego, en la pagina php, cuando envias el formulario y antes de hacer la consulta sql, debes hacer algo similar a esto

$pass = md5($_POST['pass']);

luego haces la sentencia SELECT de sql normalmente, md5 no admite desencriptacion, con lo que debes comparar los datos encriptados

creo que ha quedado claro :)
  #7 (permalink)  
Antiguo 17/07/2008, 13:09
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Respuesta: Campo Password mysql

Holas

Perdon por preguntar aca, es que necesito lo mismo y no voy a crear un Post para preguntar sobre el tema...

Ahora, ese lo entendi, lo que no me queda claro es, a la hora del Login? Va el mismo codigo??

Saludos y Gracias
__________________
CabaSoft Networks
  #8 (permalink)  
Antiguo 17/07/2008, 13:21
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Campo Password mysql

Cita:
Iniciado por nicolyto77 Ver Mensaje
Holas

Perdon por preguntar aca, es que necesito lo mismo y no voy a crear un Post para preguntar sobre el tema...

Ahora, ese lo entendi, lo que no me queda claro es, a la hora del Login? Va el mismo codigo??

Saludos y Gracias
Si, para el Login tienes que codificar la contrasena enviada para compararla con la de la DB (Que ya esta codificada) ya que md5 no tiene vuelta atras. Por eso tienes que encriptar en el login para luego comparar.
  #9 (permalink)  
Antiguo 17/07/2008, 13:26
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
De acuerdo Respuesta: Campo Password mysql

Muchas gracias

Lo voy a probar a ver que sale, y cualquier cosa posteo denuevo en busca de una mano

Saludos
__________________
CabaSoft Networks
  #10 (permalink)  
Antiguo 20/07/2008, 16:19
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
De acuerdo Respuesta: Campo Password mysql

Holas amigos

He probado el sistema, pero no lo puedo incorporar. El encriptado va de lujo!! Perfecto.

Pero a la hora de Desencriptar, debo pegar el codigo encriptado para loguearme porque no encuentro la forma de comparar las encriptadas...

El codigo es este de mi LOGIN:

Código PHP:
if (isset($_POST['username'])) {
  
$loginUsername=$_POST['username'];
  
$password=md5($_POST['password']);
  
$MM_fldUserAuthorization "";
  
$MM_redirectLoginSuccess "color.php";
  
$MM_redirectLoginFailed "login_error.php";
  
$MM_redirecttoReferrer false;
  
mysql_select_db($database_FS$FS);
  
  
$LoginRS__query=sprintf("SELECT username, password FROM md5 WHERE username=%s AND password=%s",
    
GetSQLValueString($loginUsername"text"), GetSQLValueString($password"text")); 
No funciona asi... Espero una mano, se los ruego.

Saludos
__________________
CabaSoft Networks
  #11 (permalink)  
Antiguo 20/07/2008, 21:09
 
Fecha de Ingreso: julio-2008
Ubicación: México
Mensajes: 150
Antigüedad: 15 años, 9 meses
Puntos: 4
Respuesta: Campo Password mysql

Creo que ya quedó claro lo de como insertar encripatada una cadena a la base de datos. Ahora si de lo que se trata es de un proceso de login o validacion de usuarios, tomando en cuenta que NO es posible desencriptar la cadena, nosotros tenemos que comparar la cadena que ingresa el usuario con la de la base de datos, para ello tendriamos que recibir la variable que llega por el formulario de login, encriptarla con md5 y compararla.

Aqui te dejo un ejemplo, espero que quede claro:

Código PHP:
$query    =    "SELECT * FROM administrador WHERE (user='".$_POST['user']."') AND (pass='".md5($_POST['pass'])."') LIMIT 1"
  #12 (permalink)  
Antiguo 20/07/2008, 23:14
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
De acuerdo Respuesta: Campo Password mysql

Holas

Muchas Gracias!!!

Funciono a la perfeccion!! Luego de 144502 intentos fallidos

Una cosa a modo de aprender, cuando yo muestre los datos a mi usuario... se vera su contraseña (123456) o su hermoso codigo de encriptacion (e10adc3949ba59abbe56e057f20f883e) ???

Y otra cosa mas, cuando voy a hacerle Actualizar los datos al usuario, tengo que Volver a encriptar en la consulta UPDATE?

Saludos
__________________
CabaSoft Networks
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 11:44.