Selective Memory Encryption for Dynamic Data Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory protection systems in computing devices, such as game consoles and personal computers, are inefficient as they encrypt and hash all memory, leading to unnecessary resource wastage and interoperability issues, and fail to effectively prevent illicit access to sensitive data.

Innovation Solution

Implementing a security layer with encryption and hashing mechanisms that dynamically encrypt and hash only sensitive information as it is loaded from one memory to another, allowing non-sensitive data to be left unencrypted and unhashed, ensuring secure storage and access while maintaining system transparency and avoiding performance degradation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all memory is encrypted and hashed, then security against hacking attacks is improved, but system performance deteriorates due to resource wastage

Engineering Contradiction:
Improvememory securityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies different security treatments to different portions of memory based on sensitivity. Sensitive information (headers, code, protected data) is encrypted and hashed, while non-sensitive data remains unencrypted. This selective approach maintains security for critical elements while avoiding the performance penalty of encrypting entire memory spaces.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The memory protection system divides memory into distinct segments: sensitive portions requiring encryption/hash protection and non-sensitive portions that can be accessed directly. This segmentation allows the system to apply security measures only where necessary, improving overall system performance while maintaining adequate security.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all memory is encrypted, then protection against illicit access is improved, but resource usage increases unnecessarily

Engineering Contradiction:
Improvememory protectionVSAvoidcomputational resources
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system applies encryption and hashing only to sensitive memory portions (headers, code, protected data) rather than all memory. This localized approach reduces computational resource consumption while maintaining protection where it is actually needed.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Instead of applying full encryption to all memory, the system applies partial encryption only to the necessary sensitive portions. This avoids the excessive resource consumption of universal encryption while providing adequate protection.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If selective encryption is implemented, then resource efficiency is improved, but security coverage is reduced

Engineering Contradiction:
Improveresource efficiencyVSAvoidsecurity coverage
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements selective encryption on sensitive memory portions with appropriate security markings, ensuring that critical data receives protection while non-sensitive data remains accessible. This maintains security coverage for important elements without the overhead of universal encryption.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Memory is segmented into protected and unprotected regions based on sensitivity. The security layer identifies and protects only the necessary segments, maintaining adequate security coverage while improving resource efficiency.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8726042B2Tamper resistant memory protection
Publication Date: 2014.05.13 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8726042B2 patent drawing
  • US8726042B2 patent drawing
  • US8726042B2 patent drawing

AI summary

Various mechanisms are disclosed for protecting the security of memory in a computing environment. A security layer can have an encryption layer and a hashing layer that can dynamically encrypt and then dynamically hash sensitive information, as it is being loaded to dynamic memory of a computing device. For example, a memory unit that can correspond to a memory page can be processed by the security layer, and header data, code, and protect-worthy data can be secured, while other non-sensitive data can be left alone. Once such information is secured and stored in dynamic memory, it can be accessed at a later time by a processor and unencrypted and hash checked. Then, it can be loaded back onto the dynamic memory, thereby preventing direct memory access attacks.