Proxy Application Active App Recognition via Header Truncation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems fail to accurately and efficiently identify active applications on iOS devices in real-time, limiting external actors' ability to notify users of issues or track application usage, especially when virus shields or content filters block access.

Innovation Solution

A method and system that intercepts communications, truncates headers using regular expressions, and searches for identifying substrings to recognize active applications, using a proxy application both locally and remotely to send notifications and block communications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If header truncation and substring searching are used to identify applications, then recognition speed is improved, but measurement precision deteriorates

Engineering Contradiction:
Improverecognition speedVSAvoidapplication identification accuracy
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

The patent segments the application identification process into two phases: first using truncated header substrings for rapid initial identification, then using full header analysis or additional communication packets for verification. This segmentation allows the system to benefit from both fast substring matching and accurate full-header analysis, resolving the contradiction between speed and precision.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by extracting and storing identifying substrings from application headers in advance, creating a lookup table of characteristic patterns. During runtime, this pre-prepared substrate information enables rapid comparison and identification without requiring complete header analysis, thus improving speed while maintaining accuracy through the use of pre-validated identification patterns.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If complete header analysis is performed to ensure accurate application identification, then measurement precision is improved, but productivity deteriorates

Engineering Contradiction:
Improveapplication identification accuracyVSAvoidprocessing throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies partial action by analyzing only the necessary portions of communication headers rather than complete headers for every packet. The system extracts specific identifying substrings from relevant header fields (such as User-Agent, Host, or custom headers) and performs matching without processing the entire header structure, thus maintaining identification accuracy while improving processing throughput.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If virus shields or content filters block external access to protect device security, then reliability is improved, but information availability deteriorates

Engineering Contradiction:
Improvedevice securityVSAvoidapplication usage data
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent introduces an intermediary component that operates within the device's trusted environment (either as a local proxy application or through the OS's built-in proxy capabilities) to capture application communication data. This intermediary acts as a mediator between the application layer and external monitoring systems, extracting necessary information locally and transmitting only processed data externally, thereby maintaining security while enabling data collection.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11483420B2Fast network recognition of active applications for real time user notification
Publication Date: 2022.10.25 NETABPARK
  • US11483420B2 patent drawing
  • US11483420B2 patent drawing
  • US11483420B2 patent drawing

AI summary

In some embodiments, an active application is identified from an outgoing communication and/or what application is active on a device. In some embodiments, system will intercept and/or analyze a message sent by a computing device. For example, the system may run as an Internet proxy application on the device and/or on an Internet server. Optionally, the system reads message header and/or uses information from the header to determine what application sent the message. In some embodiments, the system includes a procedure that recognizes communications that are not of interest and/or discards these communications. Additionally or alternatively, the system includes a procedure that truncates a communication header and/or eliminates data not useful in determining the source of the communication. Optionally, the system uses a short list to identify the application and a long list when the application was not recognized based on the short list.