Metadata Programmable Unit for Secure Policy Enforcement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems face challenges in securing metadata processing due to high overheads and limitations in enforcing security policies, as conventional processor architectures struggle to adapt to evolving threats and require extensive software-based solutions that incur performance and cost penalties.

Innovation Solution

A Programmable Unit for Metadata Processing (PUMP) is introduced, which isolates metadata processing from code execution, using a rule cache to determine allowed operations and generate new rules dynamically, allowing for flexible and extensible policy enforcement with minimal overhead by associating metadata tags with every memory word and employing hardware support for caching policies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software-based security policies are enforced in conventional processor architectures, then security violations and malicious attacks can be caught, but performance overhead and costs increase significantly

Engineering Contradiction:
Improvesecurity enforcementVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The processor is divided into separate domains: a code execution domain and a metadata processing domain. This segmentation allows security policies to be enforced in isolation from normal code execution, preventing security checks from bottlenecking overall system performance while maintaining strong security enforcement.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A rule cache acts as an intermediary between the code execution domain and metadata processing domain. The rule cache stores pre-computed security rules that can be quickly consulted during execution, reducing the overhead of real-time security policy enforcement while maintaining security guarantees.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If hardware support for fixed security policies is implemented, then overhead is reduced to acceptable levels, but the system loses flexibility to adapt to evolving threats

Engineering Contradiction:
Improveoverhead reductionVSAvoidsecurity policy flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The rule cache is designed to be dynamically updateable, allowing security rules to be modified at runtime without requiring system restart or hardware reconfiguration. This enables the system to adapt to new threats while maintaining the performance benefits of hardware-enforced policies.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The metadata processing domain serves multiple functions: it enforces security policies, processes metadata tags, and dynamically updates rule caches. This multi-functionality allows a single hardware component to provide both performance optimization and adaptability across different security scenarios.

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

3Device complexity

If metadata processing is performed in the same domain as code execution, then system complexity is reduced, but security isolation and enforcement capability are compromised

Engineering Contradiction:
Improvesystem architectureVSAvoidsecurity isolation
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system is segmented into distinct execution domains with clear boundaries. The metadata processing domain operates independently from the code execution domain, ensuring that security checks cannot be bypassed or interfered with by malicious code while maintaining manageable system complexity through modular design.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11782714B2Metadata programmable tags
Publication Date: 2023.10.10 THE CHARLES STARK DRAPER LABORATORY INC
  • US11782714B2 patent drawing
  • US11782714B2 patent drawing
  • US11782714B2 patent drawing

AI summary

A method comprises receiving a current instruction for metadata processing performed in a metadata processing domain that is isolated from a code execution domain including the current instruction. The method further comprises determining, by the metadata processing domain in connection with metadata for the current instruction, whether to allow execution of the current instruction in accordance with a set of one or more policies. The one or more policies may include a set of rules that enforces execution of a complete sequence of instructions in a specified order from a first instruction of the complete sequence to a last instruction of the complete sequence. The metadata processing may be implemented by a metadata processing hierarchy comprising a control module, a masking module, a hash module, a rule cache lookup module, and/or an output tag module.