PUF Architecture Using Message Authentication Code for Secure Key Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Semiconductor chip manufacturers face challenges in secure key injection, high production costs, and uniformity issues with physical unclonable functions (PUFs) used as pseudo-random number generators, where PUF values must remain unique and unchanged across chips to prevent hacking and ensure security.

Innovation Solution

An improved PUF architecture that generates a unique secure key for each chip by feeding inputs from PUFs into a message authentication code (MAC), which increases Hamming distance and uniformity, eliminating the need for stored non-volatile keys and enhancing security and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If PUFs are used as pseudo-random number generators for key generation, then unique device identification is achieved, but uniformity and security are insufficient

Engineering Contradiction:
ImprovePUF uniformityVSAvoidkey injection complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A message authentication code (MAC) is introduced as an intermediary component between the PUF and the final key generation. The MAC processes the PUF output to produce a more uniform and secure key, resolving the uniformity issue while maintaining the simplicity of PUF-based identification.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the parameter of using raw PUF output directly to using MAC-processed PUF output. This parameter change transforms the key generation process to achieve better uniformity and security properties without fundamentally changing the PUF structure.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If secure key injection is performed for each chip, then security is improved, but production cost increases

Engineering Contradiction:
Improvekey securityVSAvoidproduction cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

Each chip generates its own unique secure key automatically using its inherent PUF characteristics and the MAC processing. This self-service approach eliminates the need for expensive external key injection processes while maintaining strong security through the physical uniqueness of each device.

Inventive Principle:
Principle #25Self-service

3Duration of action of stationary object

If PUF values are stored in non-volatile memory, then key persistence is achieved, but security vulnerabilities increase

Engineering Contradiction:
Improvekey persistenceVSAvoidsecurity vulnerabilities
Core Design Contradiction:
Duration of action of stationary objectVSObject-affected harmful factors

Solution Approach 1:

The system extracts the key generation process from stored memory and performs it dynamically at runtime using the PUF and MAC. By taking out the key from storage and generating it on-demand, the system maintains key persistence through computation while eliminating the security vulnerability of storing keys in non-volatile memory.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10715321B2Physical unclonable function using message authentication code
Publication Date: 2020.07.14 MICRON TECHNOLOGY INC
  • US10715321B2 patent drawing
  • US10715321B2 patent drawing
  • US10715321B2 patent drawing

AI summary

An improved PUF architecture for generating physical unclonable function (PUF) values. The PUF architecture generates an output by feeding inputs provided from one or more PUFs into a message authentication code (MAC) block. The output from the MAC block provides the improved PUF value (e.g., resistant to the preimage hacker attack). The PUFs can be selected by a selector module. An additional input to the MAC block that is used to output a PUF value may be obtained from a monotonic counter that is, for example, incremented prior to each PUF output calculation. In one embodiment, a capability is provided to generate a session key by using a monotonic counter or other freshness mechanism like timestamp, NONCE, etc.