Trusted Execution Environment IPC Agent for Secure Data Exchange
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-tiered architectures, interprocess communication (IPC) between applications on different machines is vulnerable to attacks that compromise data security, as existing operating system-based IPC services lack robust protection mechanisms.
Innovation Solution
An IPC agent is executed in a trusted execution environment (TEE) to bypass operating system IPC services, utilizing an IPC whitelist to authorize communications and trap IPC calls, ensuring secure data exchange by isolating sensitive operations from potential attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If operating system-based IPC services are used for communication between applications on different machines, then ease of operation is improved, but security against attacks deteriorates
Solution Approach 1:
The system segments IPC communication into two paths: a general path through operating system services for normal operations, and a secure path through a TEE-based agent for sensitive communications. This segmentation allows applications to maintain ease of operation while protecting against attacks by routing sensitive data through the isolated secure path.
Solution Approach 2:
A trusted execution environment (TEE) agent is introduced as an intermediary between applications and the operating system IPC services. This intermediary verifies the trustworthiness of communication partners and mediates sensitive IPC calls, preventing direct exposure to untrusted OS services while maintaining operational convenience.
2Object-affected harmful factors
If a TEE-based IPC agent is implemented to secure communications, then security against attacks is improved, but device complexity increases
Solution Approach 1:
The security-critical IPC verification functions are extracted from the general operating system into a separate trusted execution environment. This extraction isolates the complex security logic into a dedicated TEE agent, allowing the main OS to remain simple while the TEE handles the sophisticated verification and authorization of IPC communications.
Solution Approach 2:
The TEE-based IPC agent is designed to handle multiple functions: verifying process trustworthiness, authorizing IPC calls, trapping sensitive IPC communications, and managing the whitelist of trusted processes. This multi-functionality consolidates various security mechanisms into a single component, reducing overall system complexity despite the added security capabilities.
3Reliability
If IPC calls are trapped and verified through a whitelist mechanism, then reliability of secure communication is improved, but productivity decreases due to additional verification steps
Solution Approach 1:
The system performs preliminary verification by maintaining a whitelist of trusted processes and pre-establishing their trustworthiness attributes. When IPC calls are trapped, the verification process checks against this pre-computed whitelist rather than performing full verification each time, significantly reducing the overhead of reliability checks while maintaining security.
Data Source
AI summary
The present disclosure describes secured interprocess communication (IPC). The operating system traps application-level IPC calls to an IPC agent, which handles the IPC call. The IPC agent executes in a trusted execution environment so that communications between the applications involved in the IPC are secure. Since processing of IPC by the IPC agent bypasses the operating system, IPC remains secure despite any attacks against the operating system code.


