Shared Software Platform Application Identification via Encrypted Random Numbers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current electronic systems face challenges in securing software applications and protecting digital assets from unauthorized access, particularly during updates, where a pirate application can substitute itself and access unintended digital assets.

Innovation Solution

An electronic system is implemented with a shared software platform that identifies each application using a unique random number, stored in encrypted form within the application's executable code, and a secure operating system that manages memory access, ensuring only authorized access to digital assets by verifying matching random numbers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If applications are stored in accessible memory for easy execution, then ease of operation is improved, but security against unauthorized access and application substitution deteriorates

Engineering Contradiction:
Improveease of application executionVSAvoidsecurity against unauthorized access
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system segments memory into multiple portions with different access rights. Executable code is stored in a first accessible portion for easy execution, while a second restricted portion stores security-critical data (digital assets, random numbers) that is inaccessible to applications. This segmentation allows both ease of operation for legitimate applications and security for critical assets.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A shared software platform acts as an intermediary between applications and digital assets. The platform verifies application identity through random number matching and controls access to digital assets, preventing direct access by applications. This intermediary layer maintains security while enabling legitimate operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If digital assets are stored in accessible memory for quick retrieval, then productivity is improved, but security against pirate application substitution deteriorates

Engineering Contradiction:
Improvespeed of digital asset retrievalVSAvoidprotection from application substitution
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Digital assets are stored in a restricted memory portion separate from executable code. This segmentation allows digital assets to be quickly retrieved by the platform when needed for productivity, while physical separation and access controls prevent pirate applications from accessing or substituting them.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary verification of application identity through random number matching before allowing access to digital assets. This preliminary action ensures that only legitimate applications can retrieve assets, preventing substitution attacks while maintaining efficient retrieval for authorized applications.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If application code is updated to improve functionality, then adaptability is improved, but security against substitution attacks deteriorates

Engineering Contradiction:
Improveapplication update capabilityVSAvoidprotection during updates
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Before allowing application updates, the platform performs preliminary verification by extracting and matching random numbers from the update package. This preliminary action ensures that updates are authentic and have not been tampered with, maintaining security while enabling adaptability through updates.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from random number verification to control the update process. If the random numbers match, the update is allowed; if they don't match, the update is rejected. This feedback mechanism maintains security during updates while enabling legitimate functionality improvements.

Inventive Principle:
Principle #23Feedback

4Device complexity

If a shared software platform is used to manage multiple applications, then device complexity is reduced, but security vulnerabilities to substitution attacks increase

Engineering Contradiction:
Improvesoftware platform consolidationVSAvoidsecurity in shared environment
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The shared platform environment is segmented into isolated memory portions for each application's digital assets. This segmentation allows the platform to manage multiple applications efficiently (reducing complexity) while preventing cross-contamination and substitution attacks (maintaining security).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The platform acts as an intermediary that mediates all interactions between applications and digital assets. It verifies application identity through random number matching and controls access accordingly. This intermediary role allows the platform to manage complexity while maintaining security in the shared environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240320352A1Identification of an application
Publication Date: 2024.09.26 STMICROELECTRONICS INT NV
  • US20240320352A1 patent drawing
  • US20240320352A1 patent drawing
  • US20240320352A1 patent drawing

AI summary

A system includes at least one first application and a shared software platform. The shared software platform identifies each first application a first random number. The first random number is stored in encrypted fashion in an executable code of the first application. The first application is further identified by a second number which is representative of the first random number. The second number is stored in a first portion of a memory only accessible to the shared software platform.