Add-on Code for Data Classification in Isolated Apps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Inflexible software development environments, such as iOS and Android, pose challenges in enabling data classification and encryption capabilities for standard applications, as they restrict interactions between third-party software packages and native applications, making it difficult to extend or modify existing applications without disrupting user workflows or requiring costly substitute applications.

Innovation Solution

A method is introduced that installs add-on code on terminal devices to interact with virtual keyboards, creating custom interfaces for data classification and modification, using hidden tags or accessibility services, and leveraging Push Notification services to enforce IRM capabilities without altering the standard application's environment or requiring source code intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If add-on code is installed to enable data classification and encryption capabilities, then security and extensibility are improved, but device complexity and installation requirements increase

Engineering Contradiction:
Improvedata protection capabilityVSAvoidsoftware architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system is divided into independent components: the standard application, the add-on code, and the virtual keyboard. Each component performs a specific function - the standard application handles core functionality, the add-on code provides security capabilities, and the virtual keyboard serves as the interaction interface. This segmentation allows the security features to be added without modifying the standard application's internal structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virtual keyboard acts as an intermediary between the user and the data classification system. Instead of directly modifying the standard application's data flow, the add-on code intercepts keyboard input events, processes them through classification logic, and returns modified input to the application. This intermediary approach enables security enforcement without disrupting the application's existing architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If substitute application is created to include classification and protection capabilities, then security functionality is improved, but development cost and user adaptation requirements increase

Engineering Contradiction:
Improveclassification capabilityVSAvoiddevelopment cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The add-on code is designed to work with multiple standard applications through a universal interface - the virtual keyboard protocol. Rather than creating customized solutions for each application, the same add-on code can be installed across different applications to provide classification and encryption capabilities. This multi-functionality reduces development costs and enables broad security enforcement.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Instead of modifying each standard application individually or creating expensive substitute applications, the solution copies the security functionality into a separate add-on module that interfaces through the existing keyboard mechanism. This allows the security capabilities to be replicated across multiple applications without rewriting their core codebases.

Inventive Principle:
Principle #26Copying

3Ease of operation

If virtual keyboard interaction is used to enable classification, then ease of operation is improved, but interface complexity increases

Engineering Contradiction:
Improveworkflow continuityVSAvoidinterface structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The add-on code presents itself as a homogeneous element within the existing virtual keyboard interface. It uses the same input methods, display formats, and interaction patterns as standard keyboards, making it visually and functionally indistinguishable from the native interface. This homogeneity allows users to operate the classification features without noticing any disruption to their familiar workflow.

Inventive Principle:
Principle #33Homogeneity

Solution Approach 2:

The virtual keyboard automatically handles the classification process without requiring users to manually configure or understand the underlying security mechanisms. As users type, the add-on code autonomously analyzes input, applies classification rules, and enforces security policies. This self-service approach simplifies operation while the complex classification logic runs automatically in the background.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10552634B2Method for allowing data classification in inflexible software development environments
Publication Date: 2020.02.04 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10552634B2 patent drawing
  • US10552634B2 patent drawing
  • US10552634B2 patent drawing

AI summary

Abstract system and method for enabling data modification, classification and enforcement of IRM capabilities in standard isolated software applications is disclosed, according to which an add-on code is installed on the terminal device of user that runs the standard application. The add-on code is adapted to interact with the virtual keyboard used by the standard application, to form a custom virtual keyboard to which the features of classifying data items(s) and/or of modifying the content of the data item are added, without changing the natural environment, the user is normally used to. Then a custom virtual keyboard that includes a designed UP interfacing objects is created, for adding inputs that are associated with classification and modification in the data item in the form of a hidden tag tot the content of the data item.