Acabo de darme cuenta de que mi aplicación web está enviando contraseñas sin cifrar desde el formulario de inicio de sesión. Es así: he analizado, esa cadena enviada por el usuario desde el formulario de inicio de sesión está encriptada con MD5 (que es un error en sí misma, pero esa es una historia diferente) en el lado del servidor y se compara después de eso (las contraseñas en la base de datos están ocultas ).
He planteado el problema en mi rastreador de problemas interno, que debería reemplazarse con el uso de Javascript lib para hash contraseña directamente en el formulario de inicio de sesión, por lo que nunca se enviaría en texto sin formato. Inmediatamente recibí un comentario de uno de nuestros desarrolladores de que esto es incorrecto, ya que requiere que el usuario tenga activado Javascript. Y, ese problema debe resolverse mediante el uso de HTTPS, no mediante el uso de contraseñas de hashing en el lado del cliente.
Tengo mi opinión personal sobre todo esto " requiere Javascript para estar habilitado ", lo cual no es importante en este momento. Pero, me gustaría obtener una respuesta clara, cuál de nosotros está equivocado. ¿Realmente está obligando al usuario a habilitar Javascript un pecado más grande que el envío de su contraseña al servidor? ¿Y qué hay de la situación, cuando mi aplicación se ejecute en HTTP, no en el servidor HTTPS (por muchas razones)?