Address Bit Security Signaling for Memory Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer systems are vulnerable to attacks that modify or alter program code stored in memory, leading to unintended program behavior and security breaches, as existing security measures are not sufficient to prevent unauthorized changes in system memory.

Innovation Solution

A secure computing environment is implemented using a CPU with a security mechanism that employs address bits to enable encryption and integrity checks, where data is encrypted before storage in system memory and an integrity check value is generated and stored in secure memory to verify data integrity upon retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If extensive encryption techniques and tamper evident mechanisms are employed to secure data in system memory, then data security and integrity are improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvedata securityVSAvoidsecurity mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-configuring security attributes in the page table entries before memory access occurs. The memory management unit checks these pre-set attributes during address translation and automatically applies encryption or integrity verification as needed, rather than adding complex security processing at each memory access point.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent makes the address bus and page table structure serve multiple functions: traditional address translation and now also security attribute signaling. The same page table infrastructure used for virtual-to-physical address mapping is also used to convey security instructions, eliminating the need for separate security control mechanisms.

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

2Reliability

If security checks are performed on all data in system memory, then data integrity is improved, but processing speed and system performance deteriorate

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by selectively applying security measures only to specific memory pages that have security attributes set in their page table entries. Pages marked with security attributes undergo encryption or integrity verification, while other pages are accessed normally without additional security processing, thus maintaining performance for non-sensitive data.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by applying security measures only to the extent necessary - only to memory pages that require protection based on their security attributes. This avoids the performance penalty of universal security checking while still providing protection where needed.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If address bits are used to signal security attributes, then security control precision is improved, but address space utilization efficiency worsens

Engineering Contradiction:
Improvesecurity control precisionVSAvoidaddress space utilization
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent makes the address bus and page table structure serve multiple functions: traditional address translation and now also security attribute signaling. The same page table infrastructure used for virtual-to-physical address mapping is also used to convey security instructions, eliminating the need for separate security control mechanisms.

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

Solution Approach 2:

The patent changes the parameters of existing page table entries to include security attributes. By modifying the structure of page table entries to include security control bits, the system gains precise security control without adding separate address space, as the security information is embedded within the existing address translation infrastructure.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7444523B2System and method for using address bits to signal security attributes of data in the address space
Publication Date: 2008.10.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7444523B2 patent drawing
  • US7444523B2 patent drawing
  • US7444523B2 patent drawing

AI summary

A integrity control system uses the address bits to enable encryption and/or protection of data stored in a system memory. The encryption and protection mechanisms are coupled to the CPU by way of a data bus and to the memory by way of a data bus. An address bus that determines the location of data to be stored or retrieved from system memory has a plurality of address lines. At least one of the address lines enabling the encryption mechanism to encrypt data before storage in the memory and to decrypt data after retrieval from memory. Another address line enables the protection mechanism to generate a hash of the data. The hash is stored and used to determine whether data has been altered while stored in system memory.