cómo proteger la clave pública de Android Market

4

manual de seguridad de Android dice que no es seguro mantener la clave pública del mercado solo como una cadena y debe estar oculto / codificado de alguna manera. Soy nuevo en Android. ¿Puede alguien darme un ejemplo de cómo se puede hacer? No lo sé, pero esta sería una tarea bastante común relacionada no con Android, sino también con otras aplicaciones.

    
pregunta Kishore 23.07.2011 - 06:46
fuente

1 respuesta

8

Esto puede sonar misterioso, pero una vez que entiendes el modelo de amenaza del que están hablando, todo tiene sentido. La página web a la que te vinculas habla sobre cómo evitar que otras personas pirateen tu aplicación para evitar la facturación en la aplicación.

Ejemplo: Supongamos que has creado un juego divertido que la gente puede jugar instalando tu aplicación en sus teléfonos Android. Usas la facturación en la aplicación para permitir que la gente compre artículos geniales que hacen que el juego sea más divertido: "La Espada de la Verdad", o algo así. Por supuesto, un pirata informático siempre podría intentar hacer una copia de su .apk y modificarlo para cambiar su código y obtener La Espada de la Verdad sin tener que pagarle. Puede que no estés muy feliz por eso. ¿Qué puedes hacer para protegerte contra esa amenaza?

Bueno, el manual de seguridad de Android le indica qué puede hacer para dificultar ese tipo de piratería y así proteger su flujo de ingresos. Lo importante a entender es: no hay una defensa fuerte. En esta situación, un atacante dedicado y motivado siempre ganará. Lo más que puedes esperar es introducir un Speedbump, para que sea un poco más difícil para alguien hackear tu juego. La esperanza es que esto será suficiente para reducir (pero no eliminar) la piratería y, de este modo, proteger su flujo de ingresos tan bien como sea posible. Eso es lo que la página web a la que has vinculado trata de ayudarte a hacer.

La página web de Android a la que has vinculado realmente explica esto bastante bien. Has citado de forma selectiva, pero si sigues leyendo las oraciones cercanas, hay una buena explicación: dice "La clave [pública] en sí no es información secreta, pero no quieres que sea fácil para un hacker o usuario malicioso para reemplazar la clave pública con otra clave ". Es cierto que no explicaron por qué te importa eso; Espero que mi explicación haya aclarado esto.

Además, en la parte superior, la página web dice: "Si es práctico, debe realizar la verificación de firmas en un servidor remoto y no en un dispositivo. Implementar el proceso de verificación en un servidor hace que sea difícil para los atacantes interrumpir la verificación. Procese por ingeniería inversa su archivo .apk ". En general, esta es la única forma en que puede defenderse de manera confiable contra los hackers que realizan ingeniería inversa y modifican su juego.

Para obtener más información sobre el tema general de evitar que los piratas informáticos hagan trampas en los juegos en línea, recomiendo el siguiente artículo (es legible, perspicaz, aún relevante hoy en día y simplemente fantástico):

respondido por el D.W. 23.07.2011 - 08:52
fuente

Lea otras preguntas en las etiquetas