Secure Hash Table in Trusted Execution Environment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Insecure hash tables in trusted execution environments are vulnerable to cache access pattern-based attacks and controlled-channel attacks, and existing solutions like ORAMs are inefficient and impractical due to high processing overhead and memory requirements.

Innovation Solution

Implementing a secure hash table method that involves a secret key exchange between a server enclave and a client enclave, establishing an encrypted channel, generating a random key for a keyed hash function, and building a hash table based on received key-value pairs, which mitigates vulnerabilities by being memory-oblivious and resistant to cache fault attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional hash tables are used in trusted execution environments, then data storage and retrieval operations are efficient, but the system becomes vulnerable to cache access pattern-based attacks and controlled-channel attacks

Engineering Contradiction:
Improvesecurity against cache attacksVSAvoidimplementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an encrypted channel as an intermediary between the client enclave and server enclave. This encrypted channel mediates all communication, preventing attackers from observing cache access patterns or injecting controlled channels. The encryption layer acts as a buffer that preserves security while allowing efficient hash table operations to proceed underneath.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the security parameters of the hash table implementation by operating within a trusted execution environment (TEE) with encrypted channels. This parameter change transforms the system from vulnerable to secure against cache attacks, while the TEE infrastructure maintains operational efficiency. The random key generation and keyed hash functions further parameterize the security model.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If ORAM (Oblivious RAM) is used to protect against cache attacks, then security is improved, but processing overhead and memory requirements become excessively high

Engineering Contradiction:
Improvesecurity against cache attacksVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the security-critical operations (hash computations, data access) into a trusted execution environment enclave. By separating these operations into the enclave, the system achieves security without requiring full ORAM overhead. The enclave's hardware-based protections replace the software-based ORAM mechanisms, dramatically reducing processing overhead while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses cryptographic copying through encrypted channels to transfer data between client and server enclaves. Instead of physically moving data through multiple layers of abstraction as ORAM requires, the system creates encrypted copies and transfers them through secure channels, achieving similar security goals with much lower overhead.

Inventive Principle:
Principle #26Copying

3Reliability

If secret key exchange and encrypted channels are implemented, then security against adversarial attacks is enhanced, but communication overhead increases

Engineering Contradiction:
Improvesecurity against adversarial attacksVSAvoidcommunication time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs secret key exchange and establishes encrypted channels as preliminary actions before the main hash table operations. This one-time setup cost is amortized over subsequent operations. The random key is generated once and used for multiple keyed hash computations, reducing the per-operation overhead of encryption while maintaining continuous security protection.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3506561B1Secure hash operations in a trusted execution environment
Publication Date: 2020.04.15 FUJITSU LTD
  • EP3506561B1 patent drawingFigure 1
  • EP3506561B1 patent drawingFigure 2
  • EP3506561B1 patent drawingFigure 3

AI summary

A method of secure hash table implementation includes performing a secret key exchange between a server enclave of a server device and a client enclave of a client device and establishing an encrypted channel between the server enclave and the client enclave using the exchanged secret keys. The method includes generating a random key for a keyed hash function or a pseudo random function (PRF) and communicating the random key to the client enclave. The method includes receiving hashes of input data at the server enclave. The method includes building a hash table based on key-value pairs included in the received hashes. The method includes receiving a hash table query that includes keys. The method includes retrieving values that correspond to the keys. The method includes returning the retrieved values that correspond to the keys or a null if a value has not been inserted into the hash table for one of the keys.