Mobile Application Runtime Security via Code Encryption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current mobile device security measures fail to adequately protect against unauthorized code theft, IP theft, access to user data, cracking of source code, decompilation, modification, and debugging of applications during runtime, with a lack of comprehensive security frameworks for application runtime security.
Innovation Solution
A method involving decompiling mobile application files to extract classes, methods, and assets, watermarking and encrypting them, generating random strings, and storing encryption keys for decryption during runtime, along with real-time monitoring for rooting, debugging, and threat detection to secure applications and prevent unauthorized access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If application code is encrypted and secured during installation, then code theft and decompilation are prevented, but runtime security and source code protection remain vulnerable
Solution Approach 1:
The patent applies preliminary action by performing decompilation, watermarking, and encryption of application code before installation on the mobile device. The security framework pre-processes the application package to extract classes, methods, and assets, then applies protective measures in advance. This ensures that when the application runs, the code is already protected against reverse engineering and theft.
Solution Approach 2:
The patent introduces an intermediary security framework that mediates between the application code and the mobile device environment. This framework includes a security module that intercepts application execution, monitors runtime behavior, and manages encryption keys. The intermediary layer protects the application without requiring modifications to the core application logic.
2Reliability
If comprehensive security measures are implemented for runtime protection, then code theft and data access are prevented, but installation and operation complexity increases
Solution Approach 1:
The security framework implements self-service by automatically managing its own operations without requiring user intervention. The system autonomously performs decompilation, watermarking, and encryption during installation, and continuously monitors runtime conditions without user involvement. Security decisions are made automatically based on predefined policies and threat detection.
Solution Approach 2:
The patent applies parameter changes by dynamically adjusting security parameters based on runtime conditions. The framework monitors parameters such as device state, application behavior, and environmental factors, and modifies security measures accordingly. This allows comprehensive protection while adapting to different operational contexts, maintaining ease of use.
3Ease of operation
If encryption keys are stored in lower layers of file-package, then decryption during runtime is enabled, but security against key extraction is reduced
Solution Approach 1:
The patent applies the nested doll principle by storing encryption keys within the file-package structure itself, specifically in lower layers that are part of the application archive. The keys are nested within the application data, allowing them to be accessed during runtime decryption while remaining protected from external extraction. This nested storage enables both convenience and security.
Solution Approach 2:
The framework performs preliminary action by pre-storing encryption keys in the file-package during the build process. This ensures that when the application is installed and needs to decrypt its code, the keys are already available in the lower layers of the package structure. This advance preparation enables efficient runtime decryption without compromising security, as the keys are embedded in the application structure itself.
Data Source
AI summary
A system and methods for securing an application package of a software application prior to installation and during the usage of the software application on mobile device is disclosed. The system comprises an application server configured for communicating the application package to a security server. The security server comprises one or more modules for adding multiple layers of security into the application package prior to recompilation and installation on mobile device. Further, the security server is configured for monitoring the application during runtime on the mobile device for detecting any abnormal environment and/or malware. The security server further communicates an alert to the user of the mobile device, a developer at the application server and blocks the application from usage. Various other embodiments are disclosed herein.


