Trusted Database Access for Secure Encrypted Computation
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
2Productivity
If data is decrypted for computation operations, then computation capability is improved, but data security deteriorates as plaintext data exists in memory
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
Data Source
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.


