Code Realm Authorization for Secure Cross-Privilege Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory access control techniques fail to effectively manage ownership and access rights across multiple realms in a data processing system, leading to insecure sharing of memory regions between processes with different privilege levels.
Innovation Solution
The implementation of a realm management unit that enforces ownership rights by designating realms as code realms for shared program code or data, allowing execution of program code from a target memory region owned by a code realm when authorized, and using encryption and metadata to secure data during export and import operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional privilege level based memory access control is used, then processes can be excluded from accessing memory regions, but secure sharing of program code and data across multiple realms is not achieved
Solution Approach 1:
The system segments memory access control by introducing a dual-layer model: traditional privilege levels (EL0-EL3) for data access control, and a new code realm concept for code execution control. This segmentation allows independent management of code sharing and data protection, resolving the contradiction between security and code sharing versatility.
Solution Approach 2:
The patent introduces an intermediary mechanism - the code realm authorization table and realm management unit - that mediates between different privilege levels. This intermediary enables unprivileged realms to execute code from privileged realms by checking authorization tables, while maintaining traditional privilege-based data access control, thus achieving both security and code sharing.
2Adaptability or versatility
If unprivileged realms can execute code from privileged realms, then code sharing is enabled, but unauthorized access risks increase
Solution Approach 1:
The system performs preliminary authorization checks before allowing cross-realm code execution. The realm management unit checks the code realm authorization table to verify whether an unprivileged realm is authorized to execute code from a privileged realm. This preliminary action prevents unauthorized access while enabling legitimate code sharing.
Solution Approach 2:
The authorization table provides feedback control by recording which unprivileged realms are permitted to execute code from each privileged realm. The realm management unit continuously checks this authorization state before permitting code execution, creating a feedback mechanism that prevents unauthorized access while enabling controlled code sharing.
3Reliability
If encryption and metadata are used to secure data during export/import, then data security is enhanced, but processing complexity increases
Solution Approach 1:
The patent merges encryption and metadata management into a unified export/import processing framework. The realm management unit handles both encryption of data and generation/verification of metadata (including encryption keys and authentication tags) as integrated operations. This merging reduces overall system complexity compared to separate encryption and metadata management systems.
Data Source
AI summary
A realm management unit (RMU) manages ownership of memory regions by realms, each realm corresponding to at least a portion of a software process executed by processing circuitry. Memory access circuitry enforces ownership rights for the regions, with the owner realm having a right to exclude other realms from accessing data stored within its owned region. The memory access circuitry permits execution, from within a current realm, of program code stored in a target memory region having an owner realm other than the current realm, when the target memory region is owned by a code realm and a code realm authorisation table 908 stored in at least one memory region owned by the current realm indicates that execution of program code from the target memory region is permitted by the current realm.


