Transient Storage Host Integrity Validation via Secure Bootloader

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current solutions for detecting disk tampering rely on host software, which can be easily circumvented or modified, allowing tampering to go undetected, especially when attackers have physical access to the system.

Innovation Solution

A transient storage device or secure execution environment validates the host computer system by comparing hash values of files and memory contents against protected storage, providing an indication of validation failure and optionally replacing invalid files, using a secure bootloader and cryptographic hashes to ensure integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If host software is used to detect disk tampering, then detection capability is provided, but the solution can be easily circumvented or modified by attackers with physical access

Engineering Contradiction:
Improvetampering detection reliabilityVSAvoidvulnerability to physical attacks
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a secure bootloader as an intermediary layer between the host software and the disk. This bootloader resides in protected storage and performs integrity verification of disk contents before allowing the host operating system to access them. The bootloader acts as a trusted mediator that cannot be easily modified by attackers, thereby resolving the vulnerability of host software to physical attacks while maintaining detection capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The secure bootloader performs integrity verification of disk contents during the boot process, before the host operating system is loaded and before any user applications can run. This preliminary action ensures that tampering is detected early in the system initialization sequence, preventing malicious software from executing while avoiding the need for continuous monitoring by vulnerable host software.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a secure validation system is implemented using protected storage and hash comparison, then system integrity is ensured, but device complexity increases

Engineering Contradiction:
Improvesystem integrityVSAvoidvalidation system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The validation system is segmented into distinct functional components: a secure bootloader module responsible for initialization and verification, a protected storage module for storing hash values, and a validation logic module for comparing hashes. This segmentation allows each component to be independently optimized and verified, reducing overall system complexity while maintaining robust integrity checking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of implementing complex real-time monitoring and verification mechanisms in the host system, the patent uses a simpler approach by storing cryptographic hash copies of disk contents in protected storage. The validation process simply compares current disk contents against these pre-stored hash copies, achieving reliable integrity verification through a computationally simple operation rather than complex continuous analysis.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9542337B2Device side host integrity validation
Publication Date: 2017.01.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9542337B2 patent drawing
  • US9542337B2 patent drawing
  • US9542337B2 patent drawing

AI summary

Described is a technology by which a transient storage device or secure execution environment-based (e.g., including an embedded processor) device validates a host computer system. The device compares hashes of host system data against valid hashes maintained in protected storage of the device. The host data may be a file, data block, and/or memory contents. The device takes action when the host system data does not match the information in protected storage, such as to log information about the mismatch and/or provide an indication of validation failure, e.g., via an LED and/or display screen output. Further, the comparison may be part of a boot process validation, and the action may prevent the boot process from continuing, or replace an invalid file. Alternatively, the validation may take place at anytime.