Secure Application Framework for Encrypted Data Processing in Trusted Execution Environment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for processing encrypted data using untrusted applications face security issues due to the need for decryption, which can lead to unauthorized access, and homomorphic encryption solutions are computation-heavy and not applicable to all algorithms.

Innovation Solution

A secure application framework running in a trusted execution environment receives encrypted data, decrypts it using a secure random key, processes the data, and re-encrypts the output using a new key, ensuring that decrypted data remains isolated within the trusted environment and is not leaked outside.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If encrypted data is decrypted before processing by an untrusted application, then the application can process the data using standard algorithms, but the decrypted data may be accessed by unauthorized parties

Engineering Contradiction:
Improvedata processing capabilityVSAvoiddata security
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A secure application framework acts as an intermediary between the untrusted processing application and the decrypted data. The framework runs in a trusted execution environment (TEE) and controls all input to and output from the processing application, ensuring that decrypted data cannot be leaked outside the TEE while still allowing the application to process the data using standard algorithms

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If homomorphic encryption is used to process encrypted data without decryption, then data security is maintained, but the computation becomes extremely heavy and not applicable to all algorithms

Engineering Contradiction:
Improvedata securityVSAvoidcomputational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the security parameter by using a TEE-based approach instead of homomorphic encryption. This allows standard encryption/decryption operations to be performed efficiently within the TEE boundary, achieving both security and computational efficiency by leveraging hardware-based trust rather than mathematically intensive cryptographic operations

Inventive Principle:
Principle #35Parameter changes

3Reliability

If the processing application is adapted to ensure security, then data privacy can be protected, but it becomes difficult, cumbersome, or not allowed to adapt the applications

Engineering Contradiction:
Improvedata privacyVSAvoidapplication adaptability
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The secure application framework serves as a mediator that provides security without requiring modifications to the processing application itself. The framework controls the execution environment and data flow, allowing untrusted applications to be used as-is while still ensuring data privacy through the TEE-based isolation and controlled data access mechanisms

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11934516B2Method and system for enabling secure processing of data using untrusted processing application in a trusted execution environment
Publication Date: 2024.03.19 AXIS
  • US11934516B2 patent drawing
  • US11934516B2 patent drawing
  • US11934516B2 patent drawing

AI summary

A non-transitory computer-readable storage medium, a secure application framework, a system, and a computer implemented method for enabling secure processing of data are disclosed. The method comprises steps performed within a secure application framework running in a trusted execution environment. The data encrypted using a first random key are received, the first random key is received in a secure way, and the encrypted data is decrypted using the first random key. The data are then input to the processing application, the processing application is executed to process the input data, and output data are received from the processing application. A second random key is generated, the output data are encrypted using the second random key, the second random key is encrypted using a public key of a storage device, and the encrypted output data and the encrypted second random key are sent to the storage device.