Processing Unit Startup with Monotonic Memory Access Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for securing the startup of processing devices do not adequately protect access to startup codes and sensitive data, such as encryption keys, during the initialization phase.
Innovation Solution
A method and device utilizing a monotonic counter to generate and increment count values, controlling access to memory areas based on these values, ensuring that only authorized data and codes are read and executed at specific stages of the startup process, thereby enhancing security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If startup codes are made immutable, then code integrity is improved, but access control to sensitive data during startup remains insufficient
Solution Approach 1:
The memory is divided into multiple memory areas with different access control requirements. Each memory area can be independently protected based on its sensitivity and the startup phase it contains, allowing fine-grained access control rather than protecting all memory uniformly.
Solution Approach 2:
A monotonic counter is introduced as an intermediary mechanism between the processor and memory access control. This counter provides a trusted reference that enables the access control circuit to enforce phase-specific access rules without requiring complex cryptographic verification during each memory access.
2Object-affected harmful factors
If access to startup codes is restricted during later phases, then security is improved, but device initialization flexibility is reduced
Solution Approach 1:
The access control rules are made dynamic by tying them to the monotonic counter value, which changes as the device progresses through startup phases. This allows the system to automatically adapt access permissions based on the current initialization stage without requiring manual reconfiguration.
Solution Approach 2:
Access control rules are pre-configured in the access control circuit to permit reads from specific memory areas during specific startup phases. This preliminary configuration enables flexible initialization while automatically preventing unauthorized access once phases are completed, without requiring runtime decision-making.
3Measurement precision
If a monotonic counter is used to control memory access, then access control precision is improved, but device complexity increases
Solution Approach 1:
The complex cryptographic verification mechanism is replaced with a simpler monotonic counter-based access control system. The counter provides sufficient precision for phase detection without requiring the computational overhead of cryptographic operations during each memory access check.
Solution Approach 2:
The monotonic counter serves multiple functions: it tracks startup phase progression, enables access control decisions, and provides a trusted reference for the access control circuit. This multi-functionality reduces the need for separate mechanisms for each purpose.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
This description relates to a method for starting a processing device (102), the method comprising: - the generation (303), by a monotonic counter and during a first start-up phase, of a first count value; - the transmission, by the monotonic counter, of the first count value to a memory access control circuit; - the reading (305), on the basis of the first count value, of first data stored in the memory; - the generation (309), by said counter and during a second start-up phase, of a second count value greater than the first count value, the memory access control circuit (104) being configured so that the reading of the first data is not allowed on the basis of the second count value.