Messaging System Reliability via Sandboxed Render Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Messaging systems face issues with text messages causing application crashes and malware transmission, even if the content is not malicious, due to limitations in rendering and security vulnerabilities.

Innovation Solution

Implementing a dual-software approach where a first set of software tests the renderability of messages and attachments in a sandbox environment, with a second set rendering them within the messaging application, and employing separate sandboxes with varying entitlements to manage resource access and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single software instance processes and displays messages, then the system is simple to implement, but the system is vulnerable to crashes and malware attacks

Engineering Contradiction:
Improvemessage processing reliabilityVSAvoidsoftware architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the messaging system into separate software components: a first instance that processes and validates messages, and a second instance that displays messages. This segmentation isolates the processing logic from the display logic, so that crashes or malware in one instance do not directly affect the other, thereby improving reliability while maintaining manageable complexity through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary validation mechanism where the first software instance tests message renderability before the second instance displays the message. This intermediary step acts as a buffer that prevents potentially harmful or unrenderable messages from reaching the display component, improving system reliability without requiring complete architectural overhaul.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the messaging application directly displays all received messages, then the display speed is fast, but malicious or unrenderable messages can cause crashes or security issues

Engineering Contradiction:
Improvesecurity against malware and crashesVSAvoidmessage display speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary action by having the first software instance test and validate message renderability before the second instance displays the message. This pre-validation step ensures that only safe, renderable messages are passed to the display component, protecting against malware and crashes while maintaining efficient message processing through streamlined validation.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If separate software instances are used to test and display messages, then system reliability is improved, but the complexity of software management increases

Engineering Contradiction:
Improvemessage rendering reliabilityVSAvoidsoftware management ease
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent merges the functionality of message processing and display into a unified messaging application framework, where the first and second software instances operate as coordinated components within the same application ecosystem. This merging approach maintains reliability through separation of validation and display functions while simplifying management by keeping both instances under a single application umbrella with shared resources and coordination protocols.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11176021B2Messaging systems with improved reliability
Publication Date: 2021.11.16 APPLE INC
  • US11176021B2 patent drawing
  • US11176021B2 patent drawing
  • US11176021B2 patent drawing

AI summary

Improved messaging applications are described that use a first set of software to test rendering of a message, and if the test is successful the message is allowed to be presented. In one embodiment, a first set of software can attempt to test the renderability of a message and if the test is successful, the message can be stored in a message database. In one embodiment, the first set of software operates in a separate sandbox from a sandbox for a messaging application which displays the message. The first set of software can operate in a first process which is different than a process in which the messaging application runs.