¿Cuáles son algunos códigos que pueden ayudar al usuario de un sitio web a recuperar su contraseña, por ejemplo, PHP 5.6?

TLDR, si puede recuperar una contraseña para un usuario, su sistema de autenticación está dañado e inseguro.

PHP tiene métodos de administración de contraseña incorporados. Casi definitivamente deberías estar usándolos. Este no es el lugar para reinventar la rueda porque la criptografía es difícil.

La contraseña de un usuario debe ser salada y cifrada antes de ser almacenada en la base de datos. Luego, al comparar la contraseña en el intento de inicio de sesión del usuario, ejecuta la contraseña intentada a través del mismo algoritmo de hash, usando la misma sal y luego verifica su base de datos para ver si el hash de contraseña resultante coincide con el de la base de datos.

El hash es un algoritmo unidireccional, lo que significa que no puede tomar un hash y revertirlo para averiguar cuál era el valor original. Dado que una implementación adecuada solo almacenaría un hash de contraseña en una base de datos, es imposible recuperar la contraseña original.

El enfoque correcto es permitir a un usuario RESTABLECER su contraseña en lugar de recuperarla. Luego, el hash para la nueva contraseña reemplazaría la anterior en su tabla de usuarios.

La mayoría de los sitios web basados ​​en php protegidos con contraseña almacenan sus contraseñas en una base de datos, probablemente MySQL.

Tendría que usar phpMyadmin, suponiendo que tiene acceso a la base de datos en cuestión y no tratando de entrar en lo que no debería estar rompiendo, y cambiar la contraseña a MD5 o texto claro y luego ingresar la contraseña en el área de nombre de usuario, luego cambie la contraseña nuevamente después de iniciar sesión para darle un mejor cifrado nuevamente.

Por lo tanto, no se necesita codificación. Buenas noticias ¿eh?

Hoy en día el siguiente enfoque se hace popular:

1. Utilice la función “Iniciar sesión con”. Hay varios módulos independientes que hacen todo por usted y tienen ejemplos de cómo implementar la generación y el almacenamiento de contraseñas.

2. Cuando el usuario se registre, pídale solo un correo electrónico. Genere la contraseña y se la envíe por correo electrónico. Restauración de contraseña implementada de la misma manera: regenere la contraseña y envíela al correo electrónico registrado.

Es mejor que use la identificación del usuario, al usar la identificación puede recuperar la contraseña del usuario. Pero recuerde que a veces las contraseñas se cifran con md5 o cualquier otro algoritmo. Recuerde descifrar la contraseña antes de mostrarla.

No se trata del código, si conoces la técnica podrás implementarlo porque es bastante simple

Mientras se registra, solicite al usuario una respuesta secreta y guárdela en la base de datos con su otra información

Si perdió su contraseña y navegó a la página “Restaurar contraseña”, pídale que ingrese la identificación, el correo electrónico y la respuesta secreta.

Cree una consulta que seleccione de la base de datos una fila que tenga la misma información que ingresó, si hay una fila con el mismo correo electrónico, ID y la respuesta secreta que ingresó, puede pedirle que ingrese una nueva contraseña. Estás bastante seguro de que él es el verdadero propietario de la cuenta.

O simplemente puede pedirle que ingrese el correo electrónico que usó durante el registro y enviarle la contraseña por correo electrónico, si él es el propietario del correo electrónico, entonces él es el propietario de la cuenta.