Software Classification via User Interface Signatures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software classification techniques are limited in their ability to automatically classify software without user intervention, particularly during the installation process, and often rely on static or dynamic analysis methods that are not comprehensive enough for accurate identification.
Innovation Solution
A method that involves identifying and analyzing user interface signatures from a group of user interfaces associated with the software, using computer vision to determine characteristics such as color and text, and generating a hash value to classify the software based on known signature information stored on a server device.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If static or dynamic analysis methods are used for software classification, then the classification process can be performed, but the accuracy and comprehensiveness of software identification is insufficient
Solution Approach 1:
The patent segments the software classification process into multiple distinct phases: static analysis phase (examining executable files, metadata, registry information), dynamic analysis phase (monitoring runtime behavior, API calls, system interactions), and user interface analysis phase (capturing and analyzing UI screenshots, text, and interaction patterns). Each phase generates specific features that are combined to form a comprehensive software fingerprint, thereby improving classification accuracy without overwhelming complexity through structured modularization.
Solution Approach 2:
The patent employs multiple parameter transformation techniques across different analysis phases. Static analysis extracts parameters from executable files, metadata, and registry entries. Dynamic analysis transforms runtime behavior into measurable parameters such as API call sequences and system interaction patterns. UI analysis converts visual elements into parameters including screenshot hashes, text extraction, and layout characteristics. These transformed parameters from multiple sources are integrated to create a comprehensive classification signature.
2Measurement precision
If comprehensive analysis methods are used to improve software identification accuracy, then classification precision improves, but the time and resources required for analysis increase
Solution Approach 1:
The patent implements preliminary action through static analysis performed before software execution. During this phase, the system extracts and analyzes executable file properties, metadata, embedded strings, and registry information to create an initial classification profile. This preliminary classification provides early insights that can guide subsequent dynamic analysis, allowing the system to focus resources on cases that require more intensive examination, thereby reducing overall processing time while maintaining accuracy.
Solution Approach 2:
The patent applies partial action by selectively intensifying analysis based on initial findings. If static analysis provides sufficient confidence for classification, the system may stop there. If uncertainty remains or the software exhibits suspicious characteristics, the system progressively engages dynamic analysis and UI analysis to the extent needed. This staged approach ensures comprehensive accuracy when necessary while avoiding unnecessary processing time for straightforward classification cases.
3Extent of automation
If automatic software classification is implemented, then user intervention is reduced, but the system requires comprehensive analysis capabilities that increase operational complexity
Solution Approach 1:
The patent implements self-service automation where the classification system autonomously performs all analysis phases without user intervention. The system automatically executes static analysis on software binaries, launches controlled dynamic analysis sessions, captures UI interactions, and processes all extracted features through machine learning models to generate classifications. This complete automation eliminates manual analysis steps while the modular architecture manages operational complexity through standardized interfaces and automated workflow orchestration.
Solution Approach 2:
The patent introduces intermediary components that mediate between different analysis phases and the final classification output. Feature extraction modules serve as intermediaries that standardize data from static analysis, dynamic analysis, and UI analysis into unified feature vectors. Machine learning models act as intermediaries that process these features and generate classification predictions. These intermediary layers decouple the complexity of multi-phase analysis from the user interface, enabling automatic classification while managing system complexity through standardized intermediate representations.
Data Source
AI summary
A device may receive an instruction to classify software. The device may identify a group of one or more user interfaces associated with the software based on receiving the instruction to classify the software. The device may determine a group of one or more user interface signatures associated with the group of one or more user interfaces. A user interface signature may include information, associated with a user interface in the group of one or more user interfaces, that may be used to classify the software. The device may generate information that identifies a classification of the software based on the group of one or more user interface signatures and based on known signature information. The known signature information may include information that corresponds to a correct software classification. The device may output the information that identifies the classification of the software.


