Reprogrammable Root Key Architecture via Segmented Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems rely on hard-coded root keys in non-volatile, one-time-programmable memory, making them susceptible to extraction and lacking flexibility and user control, which poses significant security risks and restricts user identity management.

Innovation Solution

A reprogrammable processing device architecture using a finite state machine, fuses, and non-volatile, rewriteable memory allows users to provision and reprogram their own root keys, enabling secure storage and removal of device-specific information, reducing dependence on static keys and enhancing user control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If root keys are hard-coded into non-volatile one-time-programmable memory, then the keys are permanently stored and cannot be removed, but this makes them susceptible to extraction and prevents user control over identity information

Engineering Contradiction:
Improvepermanent storage of root keysVSAvoidsecurity risks from key extraction and insider threats
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The root key is divided into two separate components: a first key stored in non-volatile one-time-programmable memory and a second key stored in non-volatile rewriteable memory. This segmentation ensures that neither component alone can compromise security, as both are required to reconstruct the full root key. The first key provides permanent storage for security, while the second key enables user control and removal of identity information.

Inventive Principle:
Principle #1Segmentation

2Reliability

If root keys are hard-coded into non-volatile one-time-programmable memory, then the keys are securely stored, but users cannot remove or reprogram identity information after provisioning

Engineering Contradiction:
Improvesecure storage of root keysVSAvoiduser control over identity information
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system introduces dynamic elements by storing the second key in non-volatile rewriteable memory, allowing users to reprogram, modify, or remove identity information after initial provisioning. This creates a flexible architecture where the root key can be reconstructed with updated identity information while maintaining the security benefits of the one-time-programmable first key.

Inventive Principle:
Principle #15Dynamics

3Ease of manufacture

If root keys are hard-coded by manufacturers or OEMs, then initial provisioning is simplified, but supply chain risks and insider threats increase

Engineering Contradiction:
Improveinitial provisioning processVSAvoidsupply chain risks and insider threats
Core Design Contradiction:
Ease of manufactureVSObject-affected harmful factors

Solution Approach 1:

The system introduces an intermediary mechanism where the second key acts as a user-controlled component that mediates between the manufacturer-provided first key and the final root key. This intermediary layer allows users to take control of their identity information, reducing dependence on manufacturer-provisioned keys and mitigating supply chain risks.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20230275758A1Reprogrammable processing device root key architecture
Publication Date: 2023.08.31 INTEL CORP
  • US20230275758A1 patent drawing
  • US20230275758A1 patent drawing
  • US20230275758A1 patent drawing

AI summary

A processing device includes a non-volatile memory (NVM), provisioning circuitry to receive a provision key and provision data encrypted with the provision key, and to store the encrypted provision data in the NVM, exclusive-OR (XOR) circuitry to perform an XOR operation on the provision key and a physically unclonable function (PUF) mask to generate a masked provision key, and encryption circuitry to encrypt the masked provision key with a PUF key to generate an encrypted provision key. The provisioning circuitry is to store the encrypted provision key in the NVM.