El cifrado de aplicaciones móviles es confuso. ¿Es necesario cifrar la aplicación?
Hasta la fecha, la tecnología de ofuscación es el método de protección más básico para la protección de APK. También existen muchas herramientas de ofuscación JAVA, incluidas comerciales, gratuitas y de código abierto, la mayoría de las cuales ofuscan archivos de clase. También hay algunas herramientas que procesan primero el código fuente y luego las clases, lo que aumenta la intensidad de la ofuscación.
Las principales tecnologías de ofuscación actuales se pueden dividir en ofuscación de símbolos, ofuscación de datos, ofuscación de control, reorganización del flujo de control y ofuscación preventiva según los objetivos de ofuscación. En este sentido, el editor se centró en un análisis sencillo.
Primero, los símbolos son confusos
Hay mucha información en los archivos de clase que no tiene nada que ver con la ejecución del programa en sí, como nombres de variables, nombres de métodos, etc. todos los cuales tienen ciertos significados. Por ejemplo, si un método se llama getKeyLength(), entonces este método podría usarse para devolver la longitud de la clave. La ofuscación de símbolos consiste en codificar estos mensajes en representaciones sin sentido. Por ejemplo, todos los métodos están numerados a partir de método_001; todas las variables están numeradas a partir de varant_001; La confusión de símbolos puede traer ciertas dificultades a la descompilación del APK, protegiendo así la seguridad de la aplicación. /noticiasInfo? id=313
Para funciones privadas y variables locales, sus símbolos se pueden cambiar sin afectar la ejecución del programa. Sin embargo, a menudo es necesario conservar algunos nombres de interfaz, funciones públicas y variables miembro si otros módulos externos necesitan hacer referencia a estos símbolos; de lo contrario, los módulos externos no pueden encontrar los métodos y variables con estos nombres.