Key Derivation Module in Smart Card OS

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvekey derivation executionVSAvoidcryptographic attack vulnerability
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #1Segmentation

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

Engineering Contradiction:
Improveapplication key accessVSAvoidcryptographic security
Core Design Contradiction:
Ease of operationVSReliability

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #26Copying

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

Engineering Contradiction:
Improvedata processing speedVSAvoiddata analysis vulnerability
Core Design Contradiction:
SpeedVSObject-affected harmful factors

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3224758B1Key derivation in smart card operating system
Publication Date: 2021.03.31 ORACLE INT CORP
  • EP3224758B1 patent drawingFigure 1
  • EP3224758B1 patent drawingFigure 2
  • EP3224758B1 patent drawingFigure 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.