Key Derivation Module in Smart Card OS
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Card computing devices face security vulnerabilities due to the exposure of sensitive cryptographic data in less secure RAM during key derivation processes, making them susceptible to cryptographic attacks.
Innovation Solution
Implementing a key derivation module within the platform layer of a virtualized execution environment, which generates and stores cryptographic keys in secure storage areas, providing a reference to the application instead of the actual key, thus preventing exposure to non-secure memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If sensitive cryptographic data is copied into RAM for key derivation processing, then the key derivation process can be executed, but the data becomes vulnerable to cryptographic attacks
Solution Approach 1:
The patent introduces a secure element as an intermediary component between the application processor and the external environment. This secure element contains a dedicated key derivation module that performs cryptographic operations in isolation, acting as a mediator that protects sensitive data while enabling key derivation functionality. The secure element receives input data, performs the derivation operation, and returns results without exposing intermediate values to the vulnerable RAM environment.
Solution Approach 2:
The system is segmented into two distinct parts: a non-secure application environment (RAM-based) and a secure execution environment (secure element). The key derivation module is segregated within the secure element, separating the sensitive cryptographic operations from the general-purpose processing environment. This segmentation ensures that even if the application layer is compromised, the core cryptographic functions remain protected in the isolated secure element.
2Ease of operation
If cryptographic keys are stored in non-secure RAM areas, then applications can access the keys freely, but the keys are exposed to security risks
Solution Approach 1:
The secure element acts as an intermediary that manages key storage and access. Instead of storing keys directly in application-accessible RAM, the secure element maintains secure storage internally and provides controlled access through its interface. Applications can request key operations (encryption, decryption, signing) without ever obtaining the actual key material, thus maintaining both accessibility and security.
Solution Approach 2:
Instead of copying sensitive key material into vulnerable RAM for processing, the system copies only the necessary operational parameters or uses references to keys that remain in secure storage. The key derivation module processes data within the secure element and returns results without creating vulnerable copies of the actual cryptographic keys in the application environment.
3Speed
If sensitive data is passed through normal RAM during processing, then the processing can be performed efficiently, but the data is exposed to analysis attacks
Solution Approach 1:
The secure element serves as a mediator that handles all sensitive data processing internally. Data enters the secure element through a controlled interface, undergoes processing using dedicated hardware or protected software modules, and exits through the same interface. This eliminates the need for sensitive data to traverse the vulnerable RAM bus or be stored in application memory, maintaining processing speed while blocking analysis attacks.
Solution Approach 2:
The patent applies different security qualities to different parts of the system. The secure element implements specialized security measures (protected memory, secure execution environment, physical isolation) specifically for handling cryptographic operations, while the rest of the system uses standard processing. This localized enhancement of security quality ensures that sensitive operations receive the protection they need without compromising overall system performance.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Secure key derivation within a virtualized execution environment may involve a key derivation module executing within a platform layer of the execution environment. An application executing within an application layer of the execution environment may access the key derivation module in order to generate a cryptographic key according to a key derivation function. Instead of being returned to the application, the derived key may be stored within a secure storage area of the execution environment without being stored, even temporarily in the application layer, or other non-secure areas, of the execution environment. The application may receive a reference to the derived key usable by other cryptographic processes. The application may pass the key reference to a method of a cryptographic module and the cryptographic module may use the key reference to access the derived key from the secure storage for use in performing any of various cryptographic processes.