SoC Key Hierarchy for Constant-Time On-Demand Key Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer systems face security challenges due to scarce computing resources on system-on-chip (SoC), where security technologies consume valuable processing and memory capacity, impacting performance, and pre-generated cryptographic keys are vulnerable to discovery by attackers.

Innovation Solution

A cryptographic key hierarchy is implemented on SoC to generate keys as-needed and in constant time, using a parent key to generate child keys, with unique identifiers and varying iterations per level, ensuring security without storing pre-generated keys.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptographic keys are pre-generated and stored on SoC, then security is improved, but memory capacity is consumed and attack vulnerability increases

Engineering Contradiction:
ImprovesecurityVSAvoidmemory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements a hierarchical key structure where master keys are pre-generated and stored in secure hardware, while derived keys are generated on-demand using cryptographic functions. This preliminary setup of the key hierarchy allows secure key generation without storing all possible keys in memory.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent divides the cryptographic key system into a hierarchy of master keys and derived keys. Instead of storing a single large key or multiple independent keys, the system segments keys into parent-child relationships where master keys generate multiple derived keys through cryptographic functions, reducing overall storage requirements.

Inventive Principle:
Principle #1Segmentation

2Reliability

If security technologies are deployed on SoC, then security resiliency is improved, but processing capacity is consumed

Engineering Contradiction:
Improvesecurity resiliencyVSAvoidprocessing capacity
Core Design Contradiction:
ReliabilityVSPower

Solution Approach 1:

The key hierarchy structure is pre-established during system initialization or manufacturing, with master keys generated and stored in secure hardware. This preliminary action eliminates the need for repeated key generation operations during runtime, reducing processing overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically generates derived keys only when needed based on trigger events such as application launches or memory allocation. This dynamic key generation approach balances security requirements with processing resource availability, generating keys on-demand rather than continuously.

Inventive Principle:
Principle #15Dynamics

3Reliability

If cryptographic keys are generated in constant time, then security against timing attacks is improved, but key generation flexibility is reduced

Engineering Contradiction:
Improvesecurity against timing attacksVSAvoidkey generation flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent employs a cryptographic function with a fixed number of iterations parameter that ensures constant execution time. By carefully selecting and fixing this parameter, the system achieves timing attack resistance while maintaining the flexibility to generate different derived keys from the same master key through the deterministic cryptographic function.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20260081764A1Cryptographic key hierarchy
Publication Date: 2026.03.19 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20260081764A1 patent drawing
  • US20260081764A1 patent drawing
  • US20260081764A1 patent drawing

AI summary

The technology described herein generates cryptographic keys for a system on-chip (SoC). The technology uses a cryptographic key hierarchy to generate cryptographic keys as needed and in constant time. The cryptographic key hierarchy uses a cryptographic key from a parent node as an input to the cryptographic function used to generate cryptographic keys associated with child nodes of the parent node. A single cryptographic key or batch of cryptographic keys may be generated as needed in response to a trigger event. Each key may be generated using a prescribed amount of iterations performed across the various hierarchical levels of the cryptographic key hierarchy. The amount of iterations performed at each level may be determined on a chip-by-chip basis. The unique identifier on a SoC may also be used as an input to the cryptographic function. Using the unique identifier as an input to the cryptographic function generates SoC-specific cryptographic keys.