Dynamic Hash Key Update Mechanism for Semiconductor Memory Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Semiconductor memory devices face challenges in protecting sensitive information from malicious access and corruption due to predictable operations of refresh control circuits, which can be exploited by malicious actors.

Innovation Solution

Introducing unpredictability in memory operations by dynamically updating hash keys using a seed value generator and random number generator, which changes based on various triggers such as power-up, timer, or commands, making it difficult for external actors to predict the seed value and thus the hash values used for tracking and refresh operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hash keys are updated dynamically using seed value generator and random number generator, then unpredictability of memory operations is increased, but device complexity is increased

Engineering Contradiction:
Improveunpredictability of memory operationsVSAvoidcomplexity of key update mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A hash key update mechanism is introduced as an intermediary component between the memory controller and the refresh control circuit. This mechanism includes a seed value generator that receives triggers (such as refresh commands or power-on events) and generates updated seed values, which are then used by a random number generator to produce new hash keys. This intermediary layer adds unpredictability to memory operations without requiring fundamental changes to the memory architecture itself.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The hash keys used for addressing memory rows are dynamically changed by updating the seed value periodically or upon specific triggers. Instead of using fixed hash keys, the system changes the parameter (seed value) that determines the hash key generation, thereby transforming the predictability of memory operations into unpredictability while maintaining the same underlying hash function structure.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If fixed hash keys are used for refresh operations, then device complexity is reduced, but security against malicious access is weakened

Engineering Contradiction:
Improvesimplicity of refresh controlVSAvoidvulnerability to malicious access
Core Design Contradiction:
Device complexityVSObject-affected harmful factors

Solution Approach 1:

The refresh control system transitions from a static operation using fixed hash keys to a dynamic operation where hash keys are continuously updated based on changing seed values. The refresh control circuit receives updated hash keys from the hash key update mechanism, ensuring that even if an attacker observes refresh patterns, the underlying hash keys change over time, preventing prediction of future refresh targets.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The seed value generator periodically updates the seed value at predetermined intervals or upon receiving specific triggers such as refresh commands. This periodic update mechanism ensures that hash keys change systematically over time, providing security against malicious access while maintaining a regular, manageable update rhythm that does not overly complicate the refresh control logic.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS11271735B1Apparatuses, systems, and methods for updating hash keys in a memory
Publication Date: 2022.03.08 MICRON TECHNOLOGY INC
  • US11271735B1 patent drawing
  • US11271735B1 patent drawing
  • US11271735B1 patent drawing

AI summary

Apparatuses, systems, and methods for updating hash values in a memory. A memory device may include one or more hash circuits, each of which may generate a hash value based on an input, such as a row address, and a set of hash keys. To increase the unpredictability of operations in the memory, the hash keys may be changed responsive to one or more triggers. Example triggers may include, a power up/reset operation, a command issued to the memory, or internal logic of the memory (e.g., a timer). Responsive to one or more of these triggers, the hash keys may be regenerated. For example a new seed value may be generated and used by a random number generator to generate the new set of hash keys.