En el diseño de una base de datos de back-end, el campo de la contraseña se supone que se debe marcar con bcrypt.
Hay dos enfoques
- sólo backend: password = bcrypt (plain_passsword)
- frontend + backend = password = bcrypt (sha1 (plain_password)), donde sha1 (plain_password) se calcula desde el lado del cliente, por ejemplo, JavaScript
La ventaja del segundo enfoque es que no se envía una contraseña simple a través del cable, por lo que incluso el HTTPS no funciona, no existe un riesgo de seguridad inmediato para nuestros usuarios que filtraron su contraseña simple.
Editar: mi pregunta es diferente de las preguntas existentes, ya que enfatizan en frontend vs backend, pero mi pregunta es backend vs frontend + backend