Secured Inter-Application Communication via Unique Port IDs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing mobile authentication methods face security risks due to confusion between similar custom URL schemes of different mobile applications, leading to potential interception of confidential information by malicious apps.

Innovation Solution

Implementing secured inter-application communication using Inter-Process Communication (IPC) and single sign-on mechanisms, where a mobile operating system assigns end points with unique port IDs for secure communication between mobile applications, and utilizing OAuth protocol for trusted application verification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If custom URL schemes are used for inter-application communication, then application integration and information sharing are enabled, but security risks increase due to potential interception by malicious applications

Engineering Contradiction:
Improveinter-application communication capabilityVSAvoidinformation security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces an intermediary authentication mechanism that mediates between applications attempting to communicate. The operating system acts as an intermediary by verifying authentication tokens and granting permission only to authorized applications, thus enabling secure inter-application communication while preventing malicious interception.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements preliminary authentication actions before allowing inter-application communication. Applications must obtain and present authentication tokens before establishing communication channels, ensuring that security verification occurs in advance rather than during the communication process.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If authentication mechanisms are implemented to verify application trust, then security is improved, but system complexity increases

Engineering Contradiction:
Improveapplication verification securityVSAvoidauthentication system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a self-service authentication mechanism where applications autonomously obtain and manage their own authentication tokens without requiring complex centralized verification. Each application independently proves its trustworthiness through token presentation, simplifying the overall system architecture while maintaining security.

Inventive Principle:
Principle #25Self-service

3Reliability

If unique port IDs are assigned to endpoints for secure communication, then communication security is enhanced, but device resource consumption increases

Engineering Contradiction:
Improvecommunication securityVSAvoiddevice resource usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent makes port IDs universal by allowing them to serve multiple functions: they act as both unique identifiers for secure communication channels and as resource management handles. The operating system reuses port ID spaces across different applications and communication sessions, reducing the total number of unique ports needed while maintaining security isolation.

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

Data Source

PatentUS10148640B2Secured inter-application communication in mobile devices
Publication Date: 2018.12.04 SALESFORCE INC
  • US10148640B2 patent drawing
  • US10148640B2 patent drawing
  • US10148640B2 patent drawing

AI summary

This disclosure describes a method for accessing network resources which includes receiving by a first application in a mobile computing device sign-in information from a user and enabling the user to sign in to a second application with the first application to access network resources from a resource server based on (a) a first application identification (ID) of the second application, (b) the user authorizing the second application to the resource server, and (c) receiving an authorization grant from the resource server to enable the second application to access the network resources, the mobile computing device coupled with the resource server via a network.