Call Redirection Table for Reusable Resource Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face complexity and cost issues due to the need for separate software applications for trusted and non-trusted environments, leading to non-reusable code and duplication of application code for accessing restricted resources.

Innovation Solution

A computing device with a redirection table that intercepts and redirects calls based on caller and called addresses, allowing selective access to resources as direct or system calls, enabling reusable code across different privilege levels and contexts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate software applications are provided for trusted and non-trusted environments, then resource access control is achieved, but code reusability deteriorates and system complexity increases

Engineering Contradiction:
Improveresource access controlVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a universal code base that can operate in both trusted and non-trusted environments by introducing a redirection table and interception mechanism. The same application code can selectively access resources directly or through system calls based on the redirection table entries, eliminating the need for separate software versions while maintaining proper access control for both trusted and non-trusted contexts.

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

Solution Approach 2:

The patent introduces a redirection table and call interception mechanism as an intermediary layer between the application code and resource access. This intermediary selectively redirects calls based on the caller address and called address, enabling controlled access without requiring separate software applications for different trust levels.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If separate software applications are provided for trusted and non-trusted environments, then resource access control is achieved, but development cost increases due to code duplication

Engineering Contradiction:
Improveresource access controlVSAvoiddevelopment cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The patent enables a single software application to serve both trusted and non-trusted environments by implementing a redirection table mechanism. This eliminates the need to develop, test, and maintain separate code bases, significantly reducing development costs while ensuring proper resource access control through the redirection logic.

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

3Reliability

If system calls are used for non-trusted applications to access restricted resources, then access control is enforced, but execution efficiency deteriorates due to interrupts

Engineering Contradiction:
Improveaccess controlVSAvoidexecution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent pre-configures the redirection table with appropriate redirection rules before execution. During runtime, the interception mechanism quickly checks the redirection table using the caller address and called address as keys, allowing trusted applications to access resources directly without interrupts, while non-trusted applications are redirected to system calls. This preliminary setup minimizes runtime overhead and maintains execution efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240403066A1System and method for restricting access to a resource
Publication Date: 2024.12.05 STMICROELECTRONICS INT NV
  • US20240403066A1 patent drawing
  • US20240403066A1 patent drawing
  • US20240403066A1 patent drawing

AI summary

A computing device includes at least one memory device configured to store a software application, a processing device coupled to the at least one memory device via a bus and configured to execute the software application, and one or more resources capable of being called by the execution of a code in the software application. The at least one memory device, or a further memory device of the computing device, is configured to store a redirection table indicating, based on either or both of a caller address and a called address of a call to one of the resources, a substitute address to which the call is to be forwarded. The computing device further includes a software or hardware for intercepting a call from the software application and selectively redirecting the call based on the redirection table.