Flash Memory Integrity Checks With Atomic HMAC Token Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory storage systems lack robust cryptographic mechanisms to ensure data integrity and security, particularly in flash memory devices, which are vulnerable to data corruption and wear-out due to frequent programming and erasure cycles, leading to reduced lifespan and performance degradation.

Innovation Solution

Implementing a cryptographic data integrity protection system that uses a cryptographic token, such as HMAC-SHA256, associated with written data, which is verified upon read to ensure data integrity, and is integrated into the memory device's spare area for atomic writing and reading, minimizing latency and preserving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptographic integrity verification is implemented in flash memory devices, then data security and reliability are improved, but device complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the cryptographic integrity verification function with the existing flash memory device structure by integrating the verification logic into the controller. The controller receives data along with cryptographic tokens (HMAC-SHA256), performs verification using the shared key, and only allows data access if the hash matches, thereby combining security functions with existing hardware components without requiring separate dedicated security devices

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces cryptographic tokens (HMAC-SHA256) as intermediary elements between the data storage and data retrieval operations. These tokens act as mediators that carry integrity information alongside the data, enabling verification without requiring complex cryptographic hardware - the tokens simplify the verification process by providing a compact representation of data integrity that can be easily stored and compared

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If atomic writing and reading of cryptographic tokens is implemented, then data integrity is ensured, but write performance may be affected

Engineering Contradiction:
Improvedata integrityVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary action by writing the cryptographic token (HMAC-SHA256) to the flash memory storage region simultaneously with the data write operation. The controller performs the hash calculation and stores the token in the same write cycle, ensuring that when data is later read, the corresponding token is already available for immediate verification without requiring additional sequential write operations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent combines the cryptographic token storage operation with the data storage operation into a single atomic write cycle. By merging these operations, the system ensures that both the data and its integrity token are written together, eliminating the need for separate token writing steps and thereby maintaining write performance while ensuring data integrity

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12499010B2Cryptographic data integrity protection
Publication Date: 2025.12.16 MICRON TECHNOLOGY INC
  • US12499010B2 patent drawing
  • US12499010B2 patent drawing
  • US12499010B2 patent drawing

AI summary

A storage device includes a memory storage region and a controller having a processor. The processor retrieves user data from the memory storage region using a physical block address corresponding to a logical block address (LBA), in response to a read command. The retrieved user data includes a first hash received through a host interface in a prior host data transmission. The processor further performs error correction on the user data to generate error-corrected user data. The processor further causes a cryptographic engine to produce a second hash of the error-corrected user data. The first hash is compared to the second hash associated with the error-corrected user data to determine a match result. A notification is generated in response to the match result.