Micro-Enclave Execution for Low-Latency Secure Instruction Slices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face inefficiencies in providing fine-grained, lightweight, and low-latency security mechanisms for sensitive code execution in edge and cloud computing environments, leading to increased interaction costs and performance overheads due to coarse-grained isolation and heavyweight transfers of control.
Innovation Solution
The implementation of micro-enclaves (μenclaves) that allow sensitive code to be compiled and executed with hardware-assisted means, enabling unforgeable execution within a secure environment, minimizing interactions with the operating system and reducing latency through instruction-slice-granular execution modes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional system calls and context switches are used for secure code execution, then security isolation is achieved, but latency increases and performance decreases
Solution Approach 1:
The patent segments the execution environment into micro-enclaves that contain only the specific sensitive instructions requiring security, rather than isolating entire processes or threads. This instruction-slice-granular segmentation allows secure execution of critical instructions while maintaining normal execution context for non-sensitive code, eliminating the need for heavyweight context switches and system calls.
Solution Approach 2:
The patent applies security isolation locally to specific instruction slices rather than globally to entire processes. The micro-enclave mechanism creates a localized secure execution context that is entered only when needed for sensitive instructions, allowing the majority of execution to occur in normal user mode without security overhead.
2Reliability
If coarse-grained isolation mechanisms like sandboxes are implemented, then security is improved, but interaction costs and complexity increase
Solution Approach 1:
The patent divides the isolation mechanism into fine-grained micro-enclaves that can be entered and exited at instruction level, replacing coarse-grained sandbox isolation. This segmentation eliminates the need for complex proxy processes and inter-process communication mechanisms, reducing interaction complexity while maintaining security.
Solution Approach 2:
The patent extracts the security isolation mechanism from the traditional process-level sandbox architecture and implements it directly at the instruction level within the CPU execution pipeline. This extraction removes the intermediate layers of complexity including proxies, sidecars, and gofer processes that characterize coarse-grained isolation systems.
3Adaptability or versatility
If microservice decomposition is implemented, then service modularity is improved, but inter-process signaling overhead increases
Solution Approach 1:
The patent merges multiple microservice interactions into a single micro-enclave execution context when possible, allowing sequential sensitive instructions from different logical services to execute within the same enclave without requiring inter-process signaling. This combining of interactions eliminates the overhead of repeated enclave entries and exits.
Solution Approach 2:
The patent enables continuous execution of sensitive instructions within a micro-enclave without interruption by system calls or context switches. The enclave mechanism maintains execution continuity by keeping the secure context active throughout the entire sequence of sensitive operations, rather than requiring repeated setup and teardown of isolation boundaries.
Data Source
AI summary
The present disclosure describes a micro-enclave (μenclave) framework including μenclave operations, which are library functions that split off from normal code execution. The μenclaves contain a mix of stateful and stateless operations, including such steps as reading or writing various hardware registers or resource counters in operating system, timer setup, deferring preemption events by a small value within a threshold set by the operating system, and the like. The operations in a μenclave, even though performed at a user level privilege, are compiled by a separate compilation sequence and installed unforgeably as static and unforgeable procedure collections that do not yield control to an operating system scheduler.


