Memory Data Integrity via Watermark and Error Correction Merging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing systems, ensuring data integrity and security when multiple entities access the same memory is challenging, as it is unclear whether the data retrieved is the intended data, and existing solutions compromise between error correction code strength and metadata size, leading to potential security vulnerabilities.

Innovation Solution

A method involving a memory controller that encodes data with an error correction code and reversibly alters it with a watermark generated by applying a cryptographic function to a user key and address, ensuring data integrity without additional metadata bits, using the error correction code as an implicit message authentication code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is encoded with a strong error correction code, then data reliability is improved, but metadata size increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidmetadata size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent combines the error correction code and message authentication code into a single unified code structure. By merging these two functions into one code, the system achieves both error correction and integrity verification without requiring separate metadata fields, thus improving reliability while avoiding metadata size increase

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified code serves multiple functions simultaneously: it acts as both an error correction code and a message authentication code. This multi-functionality allows the system to achieve reliable error correction and security verification using a single compact data structure, resolving the contradiction between reliability and metadata size

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If a message authentication code is added to ensure data integrity, then data security is improved, but storage overhead increases

Engineering Contradiction:
Improvedata securityVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the message authentication code with the error correction code into a single unified structure. This combination eliminates the need for separate authentication metadata, thereby improving data security while avoiding additional storage overhead

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified code structure serves itself by simultaneously providing error correction and authentication functions. The same code that corrects errors also verifies data integrity, eliminating the need for separate authentication mechanisms and reducing storage requirements

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP4229821B1Ensuring the integrity of data stored in a memory by using a watermark
Publication Date: 2024.09.04 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4229821B1 patent drawingFigure 1
  • EP4229821B1 patent drawingFigure 2
  • EP4229821B1 patent drawingFigure 3

AI summary

Systems and methods related to ensuring the integrity of data stored in a memory by using a watermark are described. An example method in a system including a processor and a memory may include receiving data for storage at an address in the memory. The method may further include after encoding the data with an error correction code to generate intermediate data having a first number of bits, reversibly altering the intermediate data with a watermark to generate watermarked data for storage in the memory, where the watermark is generated by applying a cryptographic function to a user key and the address, and where the watermarked data has a second number of bits equal to the first number of bits.