Tengo una aplicación web con Servlets, MySQL y JSP, donde se hace un login con usuario y contraseña.
El problema es que quiero protegerme de que alguien capture la contraseña y el email, y usurpe un usuario. Y no sé como hacerlo.
Me han dicho que haga un hash (¿SHA256?) de las contraseñas en Javascript desde el cliente, pero eso es una chapuza, porque si alguien captura la contraseña, la va a capturar igual.
Entonces, ¿cómo lo hago? He estado mirando esta página:
http://www.securityartwork.es/2012/03/13/metodo-de-login-seguro-sin-ssl/
Y me ha llamado la atención cuando dice:
Cita:
Pero no entiendo lo que quiere decir, ¿algún alma caritativa me lo explica? La solución que creo más segura es la de “simular” la conexión SSL mediante un par de claves pública/privada por petición. De esta manera el servidor mandará la clave pública, que le servirá al navegador para cifrar la información, y guarda la clave privada, que sólo sirve para descifrar esa información. Para realizar esto haremos uso del Javascript de forma similar a la anterior. La diferencia es que esta vez cuando el cliente (navegador web) haga la petición a la pantalla de login, el servidor generará un par de claves nuevas.