Menu
Menu
inquire
DexProtector iOS documentation

Documentation

Android documentation
iOS menu

iOS

Introduction to DexProtector

1. What is DexProtector?

DexProtector is the complete, offline, one-click security solution to secure apps and libraries on both Android and iOS platforms. Here’s how it works:

DexProtector first analyzes, then secures, then signs your app. And once your app has been released, DexProtector can continue to monitor and protect it during runtime (RASP), with all data about risks, threats, and attacks sent automatically to your account in Licel’s Attack Telemetry and Threat Intelligence Service (Alice).

DexProtector’s protection mechanisms include:

  • Code hardening and resource hardening through obfuscation and encryption, to prevent static analysis and reverse engineering
  • Runtime Application Self-Protection (RASP), with constant checks on the operating environment and communications network, to prevent dynamic analysis and Man-in-the-Middle attacks
  • Integrity checks, to prevent code tampering and cloning
  • Dedicated CryptoModule, isolating cryptographic data and processing in a Trusted Execution Environment to prevent interception of cryptographic keys and calculations

DexProtector works directly with compiled packages (APKs, AABs, AARs, IPAs, xcarchives, and iOS Frameworks), with no coding necessary at your end; all you need to do is download DexProtector, locate your package, specify your configuration options, and then Run Protection.

2. The DexProtector process

  1. Feed DexProtector your APK/AAB/AAR/IPA/xcarchive/iOS Framework file as an input.
  2. Choose your protection settings (using DexProtector’s configuration file, or via the ‘Tune Protection Settings’ window in DexProtector Studio).
  3. DexProtector analyzes your package, locating every element specified for protection.
  4. DexProtector systematically secures your package, applying its protection mechanisms at bytecode and native levels to classes, methods, strings, and resources, and integrating its Runtime Application Self-Protection engines automatically
  5. DexProtector outputs the now-protected APK/AAB/AAR/IPA/iOS Framework file, signed as specified in your configuration: ready for testing or release as soon as you choose.
  6. Once your app has been released, DexProtector can continue to monitor its security as it is being used, with all data about risks, threats, and attacks being sent automatically to your account in Licel’s Attack Telemetry and Threat Intelligence Service (Alice).

3. DexProtector Studio

DexProtector Studio is our desktop application, included with every DexProtector license. Studio offers a straightforward GUI where you can control every aspect of the DexProtector protection process. Studio allows you to:

  • activate your DexProtector license
  • observe DexProtector’s analysis of your input file
  • configure the protection settings for your project
  • create protection profiles
  • visualize exactly how DexProtector’s protection mechanisms are applied to your code and resources
  • manage your Alice integration

4. Alice - Licel’s Attack Telemetry and Threat Intelligence System

Once your app has been released, DexProtector continues to monitor its security as it is being used anywhere in the world, with all data about risks, threats, and attacks being sent automatically to your account in Licel’s Attack Telemetry and Threat Intelligence Service (Alice).

Alice offers an easy-to-use dashboard where you can keep track of key incidents as they occur, including any cases of HTTP public key pinning anomalies, tampering, and crashes. You can view these incidents according to when and where they took place, and you can tailor the output data to suit your reporting needs.

DexProtector and Alice can also work in combination with your own risk analysis system, so that you have the security monitoring information you need in the form that works best for your organization.

For more information, or to request a trial or full license for DexProtector, please get in touch via the contact form.