Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo encripta DexGuard las clases?

Quiero comprobar cómo funciona DexGuard, pero parece que no tiene una versión de prueba gratuita.

¿Puede DexGuard cifrar una aplicación de Android? ¿O simplemente obscurece el código? ¿Cómo funciona el cifrado DexGuard? Si pudiera proporcionar código de una aplicación de ejemplo ejecutada con DexGuard antes y después de la descompilación, sería genial.

  • Phonegap 2.4 Configuración de Proguard para Android
  • Android Roboguice proguard warning
  • Proguard config para facebook sdk. Eliminar todo excepto el análisis
  • ¿Cómo detiene Proguard de eliminar los parámetros de tipo?
  • El uso de ProGuard causa NoSuchFieldError para ACRA
  • La aplicación en la liberación se bloquea, mientras que en depuración no
  • Proguard retrace la confusión de salida
  • No se puede generar APK firmado desde el estudio de Android "Error de ejecución para la tarea": ​​packageRelease '"
  • 3 Solutions collect form web for “¿Cómo encripta DexGuard las clases?”

    ProGuard proporciona ofuscación de nombre: puede reemplazar los nombres originales de clases, métodos y campos por nombres cortos y sin sentido. DexGuard además proporciona cifrado de cadena y cifrado de clase. El término encriptación puede ser confuso en este contexto, ya que estos son básicamente tipos más agresivos de ofuscación. Las cadenas y clases designadas se almacenan en algún formato cifrado intencionalmente complejo y se descifran en tiempo de ejecución con claves y algoritmos que están necesariamente disponibles para la aplicación. De alguna manera, el mercado de Google Play puede cifrar aplicaciones completas para Android 4.1. El entorno de tiempo de ejecución entonces descifra la aplicación antes de que se ejecute, de manera controlada.

    (Soy el desarrollador de ProGuard y DexGuard – no dude en ponerse en contacto si está interesado)

    DexGuard en versión antigua usando "DES" Alg para cifrar la clase especificada. Posteriormente cambia "AES" alg. Después de cifrar la clase Especificada, almacena los datos cifrados en otra clase a través del formato de matriz de datos con el método de descifrado. El método de descifrado que es un bloque estático en Dex es un método de formato clinit que se ofuscó utilizando la ofuscación de flujo de control y la ocultación API. Por lo tanto, es un poco para deobfuscate el método de descifrado. En otras clases, haga referencia al cambio de clase especificado al opcode de reflexión. Cada vez que se ejecuta el APK, la clase encriptada se descifrará primero en el método estático. Y las clases descifradas se cargarán en la memoria del dvm usando la API de reflexión. Por lo que otra clase puede hacer referencia a la clase especificada correctamente. Eso es. En mi opinión, DexGuard es una herramienta de ofuscación muy potente. Si cada ofuscación de funciones se aplica a APK, le costará mucho tiempo invertir todo el programa real.

    Aunque usan el término encriptación, parece que es realmente ofuscación. Digo esto simplemente porque aunque pueden cifrar ciertas cadenas / valores … el hecho de que la clave de cifrado también debe ser almacenado en la aplicación significa que están proporcionando un "bloqueo" para el código, mientras que al mismo tiempo el empaquetado de la clave " con eso.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.