Secure Cache Reservation Using Way Masks for Side-Channel Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer architectures lack secure mechanisms for resource allocation, particularly in multiprocessor systems, which can lead to vulnerabilities in cache management and side channel attacks.

Innovation Solution

Implementing a secure cache reservation mechanism using way masks with reserved mask bits to partition the cache into reserved and non-reserved regions, ensuring secure cache allocation and preventing unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a shared cache is used in multiprocessor systems, then cache utilization efficiency is improved, but security vulnerabilities and side channel attacks increase

Engineering Contradiction:
Improvecache utilization efficiencyVSAvoidside channel attacks
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The shared cache is segmented into multiple isolated regions using way masks, where each region is assigned to a specific trust domain or security context. This segmentation allows the cache to maintain high utilization through sharing while preventing cross-contamination and side channel attacks between different security domains by physically isolating their cache lines.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If cache resources are allocated without secure mechanisms, then resource allocation simplicity is maintained, but unauthorized cache access occurs

Engineering Contradiction:
Improveresource allocation simplicityVSAvoidunauthorized cache access
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

A secure cache management mechanism acts as an intermediary between cache resources and accessing processors. This intermediary uses way masks and trust domain identifiers to automatically enforce access policies, providing secure resource allocation without requiring complex software security management, thus maintaining ease of operation while ensuring reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If cache partitioning is implemented without secure mechanisms, then cache resource control is improved, but security vulnerabilities remain

Engineering Contradiction:
Improvecache resource controlVSAvoidsecurity vulnerabilities
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The cache partitioning mechanism uses asymmetric security attributes by associating each cache way or region with a trust domain identifier. This creates an asymmetric access control model where different trust domains have different levels of access rights to different cache regions, enabling fine-grained resource control while inherently preventing security vulnerabilities through the asymmetric security boundary.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentEP4481574B1Apparatus and method for secure resource allocation
Publication Date: 2025.12.31 INTEL CORP
  • EP4481574B1 patent drawingFigure 1
  • EP4481574B1 patent drawingFigure 2
  • EP4481574B1 patent drawingFigure 3(A)

AI summary

An apparatus and method for securely reserving resources for trusted execution. For example, one embodiment of a processor comprises: a plurality of cores, each core of the plurality of cores to provide at least one logical processor of a plurality of logical processors; a first plurality of registers, each register of the first plurality of registers to associate a class of service (CLOS) value with a corresponding logical processor of the plurality of logical processors; a second plurality of registers, each register of the second plurality of registers to indicate a portion of a shared resource to be allocated to a corresponding CLOS value; a first control register of a first logical processor of the plurality of logical processors to be configured with a reserved CLOS value associated with a trusted control structure; resource reservation circuitry configurable by secure firmware or software to indicate a reserved portion of the shared resource associated with the reserved CLOS value; and enforcement circuitry to limit access to the reserved portion of the shared resource to threads or logical processors associated with the reserved CLOS value.