Estoy desarrollando un programa que contiene una función de inicio de sesión en C ++. El problema es que no sé cómo desarrollarlo en mi situación. Quiero ejecutar el software en una frambuesa pi, solo tiene una CPU programada en 1 GHZ y 512 MB de memoria. La memoria no causará ningún problema, pero la CPU sí.
El problema es que no puedo dedicar mucha potencia de CPU al cifrado, claro que cifro todas las contraseñas, pero no puedo cifrar la conexión. Esto es porque creo que HTTPS es demasiado pesado. No HTTPS no es un problema real porque los datos no están clasificados, pero quiero asegurarme de que nadie más pueda capturar las acciones de conexión y preforma.
Esto es lo que diseñé hasta ahora:
Las funciones de inicio de sesión validan al usuario, si se proporciona un nombre de usuario y una contraseña correctos, el usuario obtiene un número cifrado único. El usuario debe enviar este número cada vez para acceder a su cuenta.
El problema:
El problema es que cada uno puede capturar el número único del usuario, y podría usar este número para iniciar sesión en su cuenta. ¿Cómo puedo desarrollar una función de inicio de sesión sin este problema? Puedo usar la IP de los usuarios en el número cifrado, pero esto no es seguro cuando el pirata informático tiene acceso a la red de destino.
Además, el usuario envía sus credenciales a través de la red. Supongo que también puedo preformar algo del lado del cliente de cifrado, pero esto no es muy útil para mi CPU porque necesito hacer más ciclos de cifrado en mi servidor.