Surrogate Attester TEE for Scalable FaaS Enclave Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for attestation in hardware trusted execution environments (TEEs) face challenges in ensuring secure execution of functions across multiple tenants in function-as-a-service (FaaS) platforms, particularly in verifying the integrity of enclaves without direct attestation over a network, which leads to increased network usage and resource overhead.

Innovation Solution

Implementing a surrogate attester TEE for each tenant, allowing clients to verify the integrity of enclaves through a gateway interface, reducing the need for direct attestation of each enclave and minimizing network usage, while using multi-key total memory encryption (MKTME) for enhanced security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If direct attestation is performed for each enclave over the network, then attestation reliability is improved, but network usage and resource overhead increase

Engineering Contradiction:
Improveattestation reliabilityVSAvoidnetwork usage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent introduces a surrogate attester as an intermediary component that consolidates attestation functions. Instead of each client directly attesting each enclave, the surrogate attester acts as a mediator that can verify enclave integrity and provide attestation reports to multiple clients, thereby reducing redundant network communications while maintaining attestation reliability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent merges multiple attestation operations into a single consolidated attestation process. By combining the attestation of multiple enclaves and multiple client verification needs into a unified surrogate attester architecture, the system reduces the total number of attestation transactions over the network while preserving the security and reliability guarantees

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If multiple TEEs are created for multiple tenants, then system versatility is improved, but attestation overhead increases

Engineering Contradiction:
Improvesystem versatilityVSAvoidattestation overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The surrogate attester is designed as a universal component that can attest to the integrity of enclaves belonging to any tenant in the multi-tenant FaaS platform. This single universal attester replaces the need for separate attestation mechanisms for each tenant, thereby supporting system versatility while controlling attestation overhead through consolidation

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

3Measurement precision

If direct network attestation is implemented for each enclave, then measurement precision is improved, but resource consumption increases

Engineering Contradiction:
Improveintegrity verification precisionVSAvoidresource consumption
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The surrogate attester creates and distributes attestation reports that serve as verified copies of enclave integrity measurements. Instead of requiring each client to perform its own direct attestation measurement, the system produces authoritative attestation reports that can be distributed and verified by multiple clients, thereby maintaining measurement precision while reducing the computational and network resources consumed

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12113902B2Scalable attestation for trusted execution environments
Publication Date: 2024.10.08 INTEL CORP
  • US12113902B2 patent drawing
  • US12113902B2 patent drawing
  • US12113902B2 patent drawing

AI summary

In function-as-a-service (FaaS) environments, a client makes use of a function executing within a trusted execution environment (TEE) on a FaaS server. Multiple tenants of the FaaS platform may provide functions to be executed by the FaaS platform via a gateway. Each tenant may provide code and data for any number of functions to be executed within any number of TEEs on the FaaS platform and accessed via the gateway. Additionally, each tenant may provide code and data for a single surrogate attester TEE. The client devices of the tenant use the surrogate attester TEE to attest each of the other TEEs of the tenant and establish trust with the functions in those TEEs. Once the functions have been attested, the client devices have confidence that the other TEEs of the tenant are running on the same platform as the gateway.