Estoy trabajando en una aplicación de plataforma móvil que me gustaría que los usuarios autenticaran en la web. Me preguntaba la mejor manera de hacer seguridad. El usuario está enviando una contraseña para HTTP a un servidor php que se autentica en una base de datos mysql en el mismo servidor. Obviamente, no quiero enviar la contraseña en texto plano a través de Internet, pero tampoco quiero hacer 2 hash SHA.Enviando contraseñas a través de la web
Esto es lo que el servidor se parece (en pseudocódigo)
$pass = $_POST['pass'];
if ((get PASSWORD where USERNAME = USERNAME) == SHA($pass)) return PASS;
Esto es bastante estándar y no creo que haya otra manera de hacer esto. Pero me preguntaba cómo debería preparar los datos antes de enviarlos por Internet.
+1 para una respuesta mucho más detallada que la mía. –
Gracias por las respuestas chicos. No tengo demasiada experiencia en programación web, creo que es hora de estudiar un poco más sobre seguridad. ¿Hay alguna guía que pueda darme la imagen general de cómo estas tecnologías funcionan juntas? Solo para obtener más información, este es un programa de Android donde el usuario debe crear un nombre de usuario/contraseña en la aplicación, y luego voy a implementar una interfaz web para que el usuario pueda interactuar con el teléfono. Por lo tanto, la única vez que se envía la contraseña a través de Internet es en la creación del usuario. – Falmarri