Digamos que tengo este código backend que codifica la contraseña del usuario
const salt = await bcrypt.genSalt(10); const hashedPass = await bcrypt.hash(req.body.password, salt);Y para la autenticación, solo uso la función Bcrypt Compare
const validated = await bcrypt.compare(req.body.password, user.password); Funciona. Pero digamos que también quiero saber la contraseña. ¿Hay una función bcrypt para eso? Porque hasta donde yo sé, lo único que puede hacer es comparar las contraseñas.
El objetivo principal del hashing de contraseñas es realizar una acción irreversible para que nadie, incluido usted, no pueda revertir el proceso y obtener la contraseña. Así que la respuesta es que no puedes saberlo. Una vez que se ha procesado, no hay vuelta atrás.
Hashing (ya sea MD5 salt hashing, SHA256/SHA512 o salt hashing) es una función unidireccional, no puede descifrarlo, en su lugar puede usar el cifrado RSA con la técnica de intercambio de claves diffie hellman.
La biblioteca Bcrypt es para contraseñas Hashing, si desea recuperar contraseñas, no puede hacerlo.
En su lugar, utilice RSA con la técnica de intercambio de claves Deffie Hellman para compartir claves de forma segura.