En términos generales, hay tres cosas a considerar aquí:
1. ¿Está transmitiendo algún dato que no debería ser indagado? ¿A sus usuarios les importará si descubren que todas sus transacciones han sido detectadas por un tercero y extraídas para obtener información personal? La respuesta en algunos casos es “no me importa”, pero …
2. ¿Puede su servidor back-end manejar la carga? Si sus transacciones son pequeñas y las conexiones se crean todo el tiempo, se necesita una cantidad de trabajo no trivial para configurarlas (el problema es el intercambio inicial de claves). Para transacciones HTTP1.1 o superiores de larga ejecución (donde se ejecuta más de una transacción a través de la conexión), esto no es un gran problema. En general, la mayoría de las aplicaciones no tienen que preocuparse por esto, pero si tiene muchos datos o tiene toneladas de usuarios …
- He hecho algunas aplicaciones. ¿Puedo abrir una tienda de desarrollo de aplicaciones?
- Cómo agregar una fuente RSS a mi revista Flipboard
- Cómo acceder a Snapchat en línea
- Cómo desarrollar una aplicación en internet
- Necesito servicios de desarrollo de aplicaciones web y móviles. ¿Cuanto cuesta?
3. ¿Tiene un certificado adecuado en su servidor back-end (o está incrustando su certificado en su cliente)? Si tiene un certificado autofirmado (o no válido), debe tener cuidado de incrustar el certificado correspondiente en la aplicación (de lo contrario, el cifrado es casi inútil; si simplemente ignora la validez del certificado como es tentador, literalmente podría estar enviando solicitudes a nadie).
Después de haber trabajado para una empresa de dispositivos de seguridad durante los últimos ocho años, diría que la mayoría de las veces HTTPS (específicamente TLS 1.1+) con hashes fuertes y claves de 2.048 bits son el camino a seguir para la mayoría de las aplicaciones (el riesgo de rastrear es demasiado grande para que la mayoría de las aplicaciones no lo hagan). Asegúrese de que su certificado de back-end sea sólido y que sea “legítimo” (es decir, asignado por una autoridad confiable) o que se haya agregado explícitamente al dB de confianza en el lado del cliente ¡Y RECHAZE LAS CONEXIONES QUE NO VALIDAN!
Estoy seguro de que todo esto suena más complicado de lo que es; en su mayoría solo necesita que el cliente y el servidor coincidan. Ah, y también puede hacer que el cliente se identifique con un certificado (para evitar navegadores web aleatorios que hurguen en su API), pero esa es otra discusión … ¡Buena suerte!