Trusted Execution Environment Licensing for Instance Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems lack efficient mechanisms to control the number of instances of a trusted execution environment, allowing multiple concurrent instances despite the absence of direct control over the trusted execution environment state.
Innovation Solution
A method and system utilizing a secure cryptoprocessor with a register to manage instances of a trusted execution environment, where a new instance checks the register status and writes a value indicating its presence, ensuring only one instance runs at a time, with authorization and secure session establishment for communication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the trusted execution environment is started from the operating system under control of the licensee, then the licensee can start multiple instances of the trusted execution environment, but this leads to loss of control over the number of running instances and potential security risks
Solution Approach 1:
A license server acts as an intermediary between the operating system and the trusted execution environment instances. The license server verifies licenses and provides authorization tokens that control instance startup, preventing uncontrolled multiplication of instances while maintaining the ability to start multiple authorized instances.
Solution Approach 2:
The system implements feedback mechanisms where the license server monitors the number of running instances and compares it against licensed limits. When the limit is reached, the license server prevents further instance startup, providing continuous control over instance proliferation.
2Ease of operation
If no direct control mechanism is implemented over the trusted execution environment state, then the system maintains simplicity and ease of operation, but this allows unauthorized or excessive instances to run
Solution Approach 1:
License verification and authorization are performed in advance before trusted execution environment instances are started. The license server pre-validates the right to run a certain number of instances and provides authorization tokens, so that when instances are started, the control mechanism is already in place without adding complexity to the startup process.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
There is provided mechanisms for handling instances of a trusted execution environment on an execution platform. The trusted execution environment is associated with a secure cryptoprocessor. The secure cryptoprocessor holds a register. The trusted execution environment is configured to read from and write to a volatile part of the register at a given index i. A method is performed by the trusted execution environment. The method comprises checking, upon start of a new instance of the trusted execution environment, status of the register at the given index i. The method comprises enabling the new instance to keep running only when successfully reading a first value representing no currently run instance of the trusted execution environment from the register at the index i or if the register at the given index i has its status set to "undefined" when checking the status. The method comprises writing a second value representing one currently run instance of the trusted execution environment to the register at the given index i.