Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Laravel: Mostrar contraseñas

Estas en el tema de Laravel: Mostrar contraseñas en el foro de PHP en Foros del Web. Buenas, ¿Qué tal? Tengo un pequeño problema y es que soy algo novato con el framework Laravel de php. Tengo ya un pequeño sistemita, y ...
  #1 (permalink)  
Antiguo 15/06/2014, 10:07
 
Fecha de Ingreso: junio-2014
Ubicación: Santa Cruz
Mensajes: 5
Antigüedad: 9 años, 10 meses
Puntos: 0
Laravel: Mostrar contraseñas

Buenas, ¿Qué tal?

Tengo un pequeño problema y es que soy algo novato con el framework Laravel de php.

Tengo ya un pequeño sistemita, y el cliente me pide mostrar las contraseñas de los usuarios (se que es algo tonto y que va contra la seguridad del sistema, pero él asi lo quiere).

Mi problema esta que con la instrucción Hash::make($passord), encripto el password, ahi todo bien. Pero resulta que no encuentro la forma de hacer lo inverso a ello, osea... desencriptar.

Intente usar el Crypt::encrypt($password), junto con Crypt::decrypt($password), pero resulta que al hacer login no me reconoce dicha encriptación.

Si alguien con alguna posible respuesta puede ayudarme, se lo agradeceria bastante.

Saludos y gracias.
  #2 (permalink)  
Antiguo 15/06/2014, 12:38
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Laravel: Mostrar contraseñas

Hola y Bienvenido!

Tu duda no es de ningun framework asi no lo creas sino del uso general de los hash, que no siempre son reversibles.

Lo que haces AL COMPARAR, introduces la contraseña que le pides al usuario y le haces el MISMO proceso:


- Al registrarse le pides contrasena, la encriptas y la guardas

- Al loguearese, le pides contrasena y la encriptas y la comparas con la almacenada (ya encriptada)
__________________
Salu2!
  #3 (permalink)  
Antiguo 15/06/2014, 14:30
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Laravel: Mostrar contraseñas

Básicamente, como te dice @Italico76, si tu cliente quiere poder ver las contraseñas (medio innecesario), lo que deberías hacer sería implementar otro tipo de algoritmo de encriptación, uno reversible.
Pero tendrás problemas con todos los usuarios ya registrados. Con esos solo te quedaría darlos por vencidos y pedir reingreso de nueva contraseña, basada en el nuevo algoritmo.
Hay algunos que te pueden servir, por ejemplo los basados en Rijndael.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 16/06/2014, 11:24
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Laravel: Mostrar contraseñas

Cita:
Iniciado por heironeus Ver Mensaje

Mi problema esta que con la instrucción Hash::make($passord), encripto el password, ahi todo bien. Pero resulta que no encuentro la forma de hacer lo inverso a ello, osea... desencriptar.

Intente usar el Crypt::encrypt($password), junto con Crypt::decrypt($password), pero resulta que al hacer login no me reconoce dicha encriptación.
Claro que no te va funcionar, cuando tu usas Hash::make($password) usas el algoritmo Blowfish.
La solución rapida a tu problema es que agregues un campo adicional a tu tabla y en ese campo guardes la versión cifrada. De esa forma puedes usar Crypt como esperabas hacerlo. Esta forma es sencilla en apariencia y no la recomiendo.

La solución no tan rápida pero mas orientada a objetos es que implementes la interfase HasherInterface usando Crypt, También tienes que crear un service provider extendiendo la clase ServiceProvider y registrarlo en el app/config/app.php.
Si todo sale bien debes de poder hacer un Hash::Make($password) pero usando Crypt. Se que es un poco mas de trabajo pero te ahorrara molestias a futuro, aplicaras tus conocimientos de POO y conocerás mas la herramientas con la que decidiste abordar el proyecto.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 17/06/2014, 09:01
 
Fecha de Ingreso: junio-2014
Ubicación: Santa Cruz
Mensajes: 5
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Laravel: Mostrar contraseñas

Buenas a todos.

Al final hice lo que aconcejó @hhs, crear otro campo donde almaceno la version cifrada con el Crypt. Intenté hacerlo con la implementación de la interface Hasinterface y otro método más que vi por internet, pero... no tuve exite y me dió palo volver a repasarlo ya que el cliente lo queria ya.

Gracias a todos por la respuesta c:

Saludos!

Etiquetas: contraseñas, laravel, usuarios
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 16:21.