Nonvolatile Memory Self-Measurement for Boot Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer systems implicitly trust the startup routine stored in nonvolatile memory, making them vulnerable to corruption by malicious programmers, as the central processing unit (CPU) executes malware error-detection, which can be bypassed by corrupted startup routines.

Innovation Solution

Nonvolatile memory devices self-assess their core root of trust for measurement by executing pre-measurement instructions independently of the CPU, measuring and cryptographically signing their contents, and communicating the measurement to other system components to determine trustworthiness, enabling remediation measures if untrustworthy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the CPU executes malware error-detection using the startup routine, then the system can detect corrupted code, but the startup routine can be corrupted by malicious programmers to bypass detection

Engineering Contradiction:
Improvemalware detection reliabilityVSAvoidstartup routine corruption
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The nonvolatile memory device performs self-measurement of its own contents using dedicated measurement circuitry, independent of the CPU and startup routine. This self-service approach allows the memory to verify its own integrity without relying on potentially corrupted software, directly resolving the contradiction between detection reliability and corruption vulnerability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces a measurement circuit as an intermediary component between the startup routine and the integrity verification process. This hardware-based intermediary performs the measurement function that was previously software-based and CPU-dependent, creating a secure channel that bypasses corrupted startup routines while maintaining detection reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the system implicitly trusts the boot block and startup routine, then the boot process is simple and fast, but corrupted startup routines can exploit this trust to corrupt the computer system

Engineering Contradiction:
Improveboot process speedVSAvoidsystem corruption
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The nonvolatile memory device performs preliminary self-measurement and integrity verification before the CPU executes the startup routine. By conducting this verification in advance using dedicated measurement circuitry, the system maintains fast booting while preventing corrupted routines from exploiting implicit trust, as the integrity check occurs prior to any potentially harmful code execution.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the CPU executes pre-measurement instructions to verify boot block trustworthiness, then the system can detect untrustworthy memory, but the CPU itself can be compromised by corrupted startup routines

Engineering Contradiction:
Improveboot block verificationVSAvoidmeasurement system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The nonvolatile memory device performs self-verification of its own trustworthiness using integrated measurement circuitry, eliminating the need for the CPU to execute verification instructions. This self-service mechanism simplifies the overall system architecture by removing the dependency on CPU-based measurement while maintaining high reliability in boot block verification.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9613214B2Self-measuring nonvolatile memory devices with remediation capabilities and associated systems and methods
Publication Date: 2017.04.04 MICRON TECHNOLOGY INC
  • US9613214B2 patent drawing
  • US9613214B2 patent drawing
  • US9613214B2 patent drawing

AI summary

Several embodiments of systems incorporating nonvolatile memory devices are disclosed herein. In one embodiment, a system can include a central processor (CPU) and a nonvolatile memory device operably coupled to the CPU. The nonvolatile memory device can include a memory that stores pre-measurement instructions that are executable by the nonvolatile memory upon startup, but not executable by the CPU upon startup. In operation, the pre-measurement instructions direct the nonvolatile memory to take a measurement of at least a portion of its contents and to cryptographically sign the measurement to indicate that the measurement was taken by the nonvolatile memory device. In one embodiment, the CPU can use the measurement to determine whether the nonvolatile memory device is trustworthy.