Trusted Agent Throttling via Remote Proof of Work

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Trusted agents in client computing devices can be misused by untrusted parties through malware, leading to persistent unauthorized usage of operations, as existing technologies lack effective measures to throttle or secure these agents.

Innovation Solution

Implementing complex computational puzzles, such as hash functions or proof of work puzzles, within a trusted execution environment (TEE) that require remote services to solve before trusted agents perform operations, thereby throttling usage and securing resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If trusted agents are made accessible to perform operations, then service functionality is improved, but security against malicious usage deteriorates

Engineering Contradiction:
Improveservice functionalityVSAvoidsecurity against malicious usage
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary verification by requiring proof of work before allowing trusted agent operations. The challenge-response mechanism is set up in advance, where the service must solve a computational puzzle before gaining access to the trusted agent's operations, preventing malicious usage before it occurs

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A proof of work mechanism acts as an intermediary between the service and the trusted agent. This intermediary layer verifies the service's legitimacy through computational challenges, mediating access control without requiring direct trust between the service and trusted agent

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If computational puzzles are solved locally within the TEE, then security is improved, but resource consumption increases

Engineering Contradiction:
ImprovesecurityVSAvoidprocessor and memory resources
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The computational puzzle-solving function is extracted from the TEE and performed externally by the service. Only the verification of the proof of work solution remains within the TEE, removing the resource-intensive computation from the constrained environment while maintaining security

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the mechanical computation process within the TEE with a verification process. Instead of having the TEE perform complex computational puzzles, it verifies solutions provided externally, substituting heavy computation with lighter validation operations

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If puzzle complexity is increased to prevent abuse, then security is improved, but operation speed deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidoperation speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system dynamically adjusts the challenge parameters based on the trusted agent's operation rate and security requirements. The puzzle difficulty can be modified in response to observed usage patterns, allowing the system to optimize between security and operational speed rather than using fixed complexity

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11328050B2Measured execution of trusted agents in a resource constrained environment with proof of work
Publication Date: 2022.05.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11328050B2 patent drawing
  • US11328050B2 patent drawing
  • US11328050B2 patent drawing

AI summary

Trusted agents operating within a trusted execution environment (TEE) of a client computing device are configured with complex computational puzzles (e.g., hash functions or other proof of work puzzles) for a remote service to solve before the trusted agent executes an operation. The trusted agent may have a policy that the puzzle is associated with, in which the policy defines a statistically defined time period over which puzzles are solved. The statistically defined time period is effectuated through parameters which control a complexity of the puzzle. Malware or bad actors that attempt to misuse the trusted agent are throttled until the remote service solves the puzzle, which is configured with a level of complexity that takes the statistically defined time period.