Cuál es el papel de la clave de la aplicación y la clave secreta en cada SDK

Estoy construyendo el SDK en el que necesito tomar la identificación de la aplicación y la clave secreta de aplicación de la aplicación que integrará mi androide SDK.

Veo que cada SDK está usando este id de aplicación de concepto y clave secreta. No sé cuál es el uso de esto? ¿Cómo esto hace seguro el sistema?

¿Puede alguien ayudarme en este tema.

El ID de la aplicación y la clave secreta son dos cosas diferentes. Permítanme tratar de abordar los dos por separado y luego atarlos juntos.

ID de la aplicación

El ID de la aplicación es simplemente una etiqueta de identificación única para una aplicación. Esto es para evitar superposiciones en la App Store y en el dispositivo. Si dos aplicaciones tienen el mismo ID de aplicación, se puede instalar una encima de la otra, borrar efectivamente la antigua y, quizá, secuestrar sus datos. El ID de la aplicación es sólo el primer paso para la SEGURIDAD . Para asegurar que no hay absolutamente ninguna manera de que ocurra el escenario anterior, usamos la clave secreta.

Llave secreta

La clave secreta es una implementación de seguridad, generalmente para el cifrado asimétrico. Echemos un vistazo a la definición de cifrado asimétrico de Wikipedia:

La criptografía de clave pública, también conocida como criptografía asimétrica, es una clase de protocolos criptográficos basados ​​en algoritmos que requieren dos claves separadas, una de las cuales es secreta (o privada) y una de ellas es pública. Aunque son diferentes, las dos partes de este par de claves están matemáticamente enlazadas.

La clave secreta es parte de un par de claves, la otra es la clave pública. La clave pública, como su nombre indica, está abiertamente disponible para el público. Idealmente, la clave secreta debería estar disponible sólo para una persona.

El par de teclas se utilizan para abrir un candado, en su caso para desbloquear aplicaciones. Cada aplicación tiene un bloqueo asimétrico único. Un bloqueo asimétrico se bloquea con una clave secreta y se abre con la clave pública, o viceversa. El propósito es IDENTIFICACIÓN . Sólo una persona puede tener la clave secreta. Así que cualquier aplicación de esta persona, sabemos que es definitivamente de esa persona y no un hacker / fuente dudosa. Es por eso que la clave secreta es importante.

Por lo tanto, estos dos conceptos trabajan mano a mano para traerle una mejor seguridad. Cuando utiliza API, a veces no necesita la clave secreta, sino sólo el ID de la aplicación para que el servicio principal que está utilizando las API conozca qué producto exacto está utilizando.

Básicamente se utiliza para la autorización. Esto a su vez permite a los creadores de SDK un mayor control sobre sus usuarios. Puedo pensar en algunas razones por las que un SDK requeriría una autorización:

  • Prevenir / bloquear ataques de spam en los servidores que el SDK posiblemente conecta a
  • Limitar el uso del SDK
  • Seguimiento del uso de estadísticas (por ejemplo, frecuencia de uso)
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.