Application Wrapping Engine for Enterprise Security Compliance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In enterprise settings, IT departments face challenges in managing mobile devices owned by users to ensure compliance with enterprise policies, as they cannot install or configure applications on personal devices without user consent, and existing application wrapping techniques may not adequately address security and authentication requirements.

Innovation Solution

A management service uses a wrapping engine to decompile and modify third-party application packages by integrating security and authentication components, generating a resource index, and compiling a managed application package that includes both original and management components, ensuring unique resource identifiers and maintaining original application functionality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If application wrapping techniques are used to add security features to third-party applications, then security compliance is improved, but application functionality and user experience may deteriorate

Engineering Contradiction:
Improvesecurity complianceVSAvoidapplication functionality
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent segments the application package into distinct components: original application code, management component code, and resource files. The wrapping engine processes each segment separately, decompiling the original package, injecting management components with specific resource identifiers, and recompiling while preserving the original application's functionality while adding security compliance

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a wrapping engine as an intermediary tool that mediates between the original third-party application and the enterprise's security requirements. This intermediary automatically performs decompilation, resource identifier generation, component injection, and recompilation, thereby enforcing security policies without requiring direct modification of the original application by users

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If manual configuration of security features is required for each application, then security control is improved, but IT department workload and time consumption worsen

Engineering Contradiction:
Improvesecurity controlVSAvoidIT department workload
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a self-service mechanism where the wrapping engine automatically performs all security configuration tasks. The engine generates unique resource identifiers, decompiles application packages, injects appropriate management components, and recompiles the applications without requiring manual IT intervention for each application, thereby reducing workload while maintaining security control

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the parameter of security configuration from manual to automated processing. The wrapping engine systematically processes multiple application packages by generating resource identifiers following specific formatting rules (e.g., prefixing with '0x7f0' and appending sequential numbers), transforming security management into a scalable automated process

Inventive Principle:
Principle #35Parameter changes

3Ease of manufacture

If resource identifiers are not properly managed during component integration, then integration simplicity is improved, but resource conflicts and compilation errors worsen

Engineering Contradiction:
Improvecomponent integrationVSAvoidresource identifier uniqueness
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent applies preliminary action by generating unique resource identifiers for management components before the actual integration process. The wrapping engine creates these identifiers following specific formatting conventions (e.g., '0x7f0' prefix with sequential numbering) during the decompilation and analysis phase, ensuring uniqueness is established before component injection and compilation occurs

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10430166B2Resource injection for application wrapping
Publication Date: 2019.10.01 OMNISSA LLC
  • US10430166B2 patent drawing
  • US10430166B2 patent drawing
  • US10430166B2 patent drawing

AI summary

Disclosed are various approaches for injecting resources into wrapped applications. A computing device first obtains a compiled version of a target application package. The computing device then decompiles the compiled version of the target application package to generate a source code version of the target application package. Then, the computing device combines the source code version of the target application package with management component source code. Next, the computing device generates an application resource index. Subsequently, the computing device, modifies the management component source code based at least in part on the application resource index. Finally, the computing device compiles the combined source code version of the target application package and the management component source code to generate a managed application package.