Si tengo una aplicación móvil con un servidor HTTPS, ¿debo enviar las consultas desde la aplicación de forma diferente a enviarla a HTTP?

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 …

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!

More Interesting

Soy el fundador de Pyke Messenger (iOS) y actualmente estoy tratando de escalar en Amsterdam. ¿Cómo resuelve el problema del huevo y la gallina con los usuarios de su aplicación hiperlocal?

Quiero usar Amazon Web Services para mi aplicación de Android. ¿Cuál de sus productos debo usar?

Cómo construir una aplicación de mensajería multiplataforma

Mi sitio web, WordBrewery.com, se creó con Angular 2. Quiero crear rápidamente una aplicación móvil (Android e iOS). ¿Debo usar React Native o Ionic 2?

Estoy lanzando una empresa de aplicaciones móviles. ¿Cuáles son algunos libros que necesito leer para tener éxito?

Quiero desarrollar aplicaciones móviles para recarga en línea. ¿Dónde debo comenzar? ¿Qué lenguaje de programación y habilidades necesitaré y cuáles son sus costos?

Cómo hacer una aplicación uber

Si tengo 1,000,000 de usuarios en mi sitio / aplicación y quiero vender sus direcciones de correo electrónico o números, ¿cuánto valdrían los detalles?

Cómo recuperar su cuenta de Snapchat si se eliminó

Soy un principiante en el desarrollo de aplicaciones de Android. ¿Cuáles son los mejores proyectos que pueden ayudarme a aprender, así como a obtener una valiosa experiencia, pero que son lo suficientemente simples como para que un principiante los maneje?

Acabo de desarrollar una aplicación móvil de Android que puede acceder a la base de datos Oracle utilizando un servicio web API que probé en el emulador y está funcionando bien. Sin embargo, para implementarlo en un dispositivo real, ¿necesito alojar la aplicación web para poder publicar los datos de mi cliente en la URL de la aplicación web?

Siempre quiero crear mi sitio web de competencia en línea y una aplicación de Android, pero siempre abandono la idea, ya que perturbará mis estudios. ¿Qué tengo que hacer?

Quiero aprender programación y terminar como desarrollador de aplicaciones. ¿Cómo empiezo?

Estoy construyendo mi primera aplicación de Android. ¿Me puede decir el proceso de monetización y sugerir paso a paso qué adiciones debo agregar y cómo exactamente?

Acabo de descargar la aplicación Greenify de la tienda. No sé por dónde empezar y cómo usarlo. ¿Cómo va a ahorrar la energía de mi batería?