Software Launch Warnings via Probabilistic Asset Screening
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computing devices lack effective mechanisms to identify and warn users about potentially problematic software applications, which can compromise security and user data.
Innovation Solution
Implementing a probabilistic data structure, such as a Bloom Filter, on computing devices to flag and manage software application assets identified as problematic, coupled with a management entity for analysis and communication to provide warning and remedial information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If an unrestricted environment is used to enable developers to write and install software applications freely, then developer flexibility and user choice are improved, but security and reliability deteriorate due to pervasive faulty and malicious applications
Solution Approach 1:
The system performs preliminary analysis of software applications before they are installed on computing devices. A management entity analyzes applications in advance and generates warnings about potentially problematic applications, allowing preventive action before installation occurs. This resolves the contradiction by maintaining developer flexibility while preemptively addressing security concerns.
Solution Approach 2:
The system introduces a management entity as an intermediary between developers and users. This intermediary analyzes software applications and provides warnings to users, serving as a mediator that maintains the unrestricted development environment while adding a layer of security oversight. The management entity acts as a buffer that allows both developer freedom and user security.
2Reliability
If a restricted environment with software application store vetting is implemented, then security is improved, but developer flexibility and ease of installation deteriorate
Solution Approach 1:
The system extracts the security analysis function from the installation process itself and separates it into a preliminary management entity that operates independently. This allows security vetting to be performed beforehand without restricting the installation mechanism, maintaining developer flexibility while ensuring security through extraction of the analysis function.
Solution Approach 2:
Security analysis is performed as a preliminary action before installation occurs. The management entity analyzes applications in advance and provides warnings, allowing developers to maintain flexibility in their development and distribution processes while security concerns are addressed beforehand through preliminary analysis rather than restrictive vetting.
3Reliability
If comprehensive analysis of all software applications is performed to identify problematic ones, then security is improved, but processing time and system complexity increase
Solution Approach 1:
The system segments the security analysis process into two parts: a preliminary analysis phase performed by the management entity before installation, and a runtime warning phase when users attempt to install or launch applications. This segmentation allows comprehensive analysis to be performed efficiently by dividing the processing into distinct stages, reducing overall processing time while maintaining thorough security checking.
Solution Approach 2:
Comprehensive analysis is performed as a preliminary action before installation occurs, allowing the management entity to pre-process security checks. By completing the analysis beforehand, the system avoids time-consuming analysis during installation or runtime, reducing processing time while maintaining comprehensive security checking through advance preparation.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
This Application sets forth techniques for displaying warnings when potentially problematic software applications are launched on computing devices. According to some embodiments, a computing device can implement the steps of (1) maintaining a probabilistic data structure that is based on a plurality of software application assets that have been flagged as problematic, (2) installing a software application that is comprised of at least one software application asset, (3) identifying, by interfacing with the probabilistic data structure and a management entity, that the at least one software application asset has in fact been flagged as problematic, (4) assigning, to the software application, an informational package that is received from the management entity and that pertains to the at least one software application asset, and (5) displaying, in association with launching the software application, a user interface that is derived, at least in part, from the informational package.