No pude encontrar reseñas sobre cookies seguras, así que he pensado un poco. (Ya tengo una base de datos de contraseñas "segura" con bcrypt y salt)
Pasos:
- El usuario inicia sesión
- Guardar el usuario + la cadena aleatoria en el ejemplo de memcache (
key = IP value + randomstring + username
) - Crear una nueva cadena
username + ip
- Cifre esta cadena con blowfish, la clave de cifrado será la cadena aleatoria almacenada en el memcache
- El usuario recibe una cookie cifrada
- Si el usuario vuelve a mi sitio y tiene una cookie - > Verifico si su IP está en el memcache, si es así, tome el valor que es randomstring & nombre de usuario
- Intente descifrar el valor de la cookie con la cadena aleatoria
- Verifique si la IP de solicitud y la IP almacenadas en la cookie son iguales y los nombres de usuario son iguales. (nombre de usuario de cookie vs nombre de usuario de memcache)
- Si tiene éxito, inicie sesión
¿Qué piensas?
Ahora hay dos cosas de las que me preocupo:
- ¿Se pueden falsificar las solicitudes de IP?
- ¿Es seguro mi memcache?