Trusted Database Access for Secure Encrypted Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database security solutions face challenges in ensuring data security during interaction with users while maintaining performance, as sensitive data is decrypted in plaintext form, leading to security risks and high performance overheads due to frequent switching between secure and non-secure environments.

Innovation Solution

A database access method and apparatus that utilizes a trusted execution environment (TEE) to perform decryption and computation on encrypted data, caching plaintext results, and encrypting them before sending back to the database kernel, thereby reducing performance overheads and enhancing security by minimizing data exposure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is encrypted and stored in ciphertext to prevent unauthorized access, then data security is improved, but performance deteriorates due to frequent decryption and switching between secure and non-secure environments

Engineering Contradiction:
Improvedata securityVSAvoidoperation performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the database access architecture into two distinct environments: a non-secure execution environment for the database kernel and a trusted execution environment (TEE) for secure data processing. This segmentation allows data to remain encrypted in storage while enabling efficient processing in the TEE without frequent switching, thus resolving the contradiction between security and performance

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The trusted execution environment acts as an intermediary between the database kernel and the encrypted data. The TEE receives encrypted data from the database kernel, performs decryption and computation operations, and returns results without requiring the database kernel to switch to a secure environment. This intermediary mechanism eliminates performance overhead while maintaining security

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data is decrypted for computation operations, then computation capability is improved, but data security deteriorates as plaintext data exists in memory

Engineering Contradiction:
Improvecomputation capabilityVSAvoiddata security
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system extracts the decryption and computation operations from the non-secure database kernel environment and relocates them to the trusted execution environment. By taking out these sensitive operations from the general-purpose database kernel, the system enables full computation capability on decrypted data while ensuring that plaintext data only exists within the secure boundaries of the TEE, thus resolving the security-capability contradiction

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12499264B2Database access method and apparatus
Publication Date: 2025.12.16 HUAWEI TECH CO LTD
  • US12499264B2 patent drawing
  • US12499264B2 patent drawing
  • US12499264B2 patent drawing

AI summary

A database access method and apparatus are disclosed, to ensure data security during interaction between a user and a database, and effectively reduce performance overheads. The method includes: receiving an encrypted data computation request sent by a database kernel, where the encrypted data computation request requests to perform computation on encrypted data of a user, and the database kernel runs in a non-secure execution environment; receiving encrypted data sent by the database kernel, where the encrypted data is all encrypted data in a user query request; performing decryption and computation on the encrypted data in response to the encrypted data computation request, to obtain a computation result; encrypting the computation result to obtain an encrypted computation result; and sending the encrypted computation result to the database kernel.