Tamper-Evident Memory Interface with Conditional Write Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing static memory elements lack mechanisms to ensure data validity, making them vulnerable to malicious writes and unable to differentiate between reset and maliciously written values, which compromises software security.

Innovation Solution

A tamper-evident memory system with conditional-write and conditional-read operations, utilizing a validity indicator to validate data before overwriting or reading, and additional features like counters and special data patterns to detect invalid data, ensuring data integrity and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory elements use static storage without validity indicators, then memory access speed is maintained, but data validity cannot be determined and malicious writes cannot be detected

Engineering Contradiction:
Improvedata validityVSAvoidmemory structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The memory element is segmented into separate functional components: data storage (Din), validity indicator storage (Vin), read operations (Rd), and write operations (Wr). This segmentation allows the validity indicator to be independently managed and checked, enabling detection of malicious writes without requiring complete redesign of the memory structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The validity indicator (Vin) acts as an intermediary between the data storage and the read/write operations. It mediates by providing a separate mechanism to track the validity state of data, allowing the system to determine whether data has been legitimately written or tampered with without directly modifying the data storage structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If memory provides no mechanism to distinguish reset from write operations, then memory operations remain simple, but bona fide programs cannot differentiate between reset values and maliciously written values

Engineering Contradiction:
Improvedata origin detectionVSAvoidcontrol logic
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The validity indicator is initialized to a specific state (0) that is distinct from the data value state. This local quality differentiation allows the system to locally identify whether data originates from a reset operation or a write operation, enabling bona fide programs to distinguish between legitimate and malicious data without adding global complexity to the memory control logic.

Inventive Principle:
Principle #3Local quality

3Reliability

If memory elements lack read-after-reset detection, then read operations remain fast, but reads after reset cannot be distinguished from reads after write

Engineering Contradiction:
Improveoperation type detectionVSAvoidread operation overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The validity indicator is preliminarily set to a known state (0) during reset operations. This preliminary action enables subsequent read operations to quickly determine whether they are reading after a reset or after a write by simply checking the validity indicator state, without requiring additional time-consuming verification steps during the read operation itself.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If no mechanism exists to detect multiple writes to the same location, then write operations remain simple, but data integrity cannot be ensured

Engineering Contradiction:
Improvewrite operation trackingVSAvoidwrite control mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The validity indicator provides feedback about the current state of the memory element (whether it contains valid data from a write operation). This feedback mechanism allows the system to track write operations and detect when multiple writes occur to the same location, ensuring data integrity by preventing overwriting of valid data without requiring complex write control mechanisms.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10719387B2Memory interface with tamper-evident features to enhance software security
Publication Date: 2020.07.21 ORACLE INT CORP
  • US10719387B2 patent drawing
  • US10719387B2 patent drawing
  • US10719387B2 patent drawing

AI summary

The disclosed embodiments provide a system with a memory with an interface that includes tamper-evident features to enhance software security. The system includes a set of memory elements, wherein each memory element comprises storage for a set of bits that encode a data word and an associated validity indicator, which indicates whether the memory element contains a valid data word. It also includes a memory interface for the set of memory elements. This memory interface supports a conditional-write operation, which overwrites a data word in a memory element if an associated validity indicator indicates that the data word does not contain valid data, and which does not overwrite the data word and raises an error if the associated validity indicator indicates that the data word already contains valid data.