Virtual Machine Memory Sanitization for Perfect Forward Secrecy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual machines face challenges in maintaining perfect forward secrecy due to vulnerabilities in their operation states, where session keys and secrets are not reliably deleted from memory or disk storage, making them susceptible to compromise by attackers.

Innovation Solution

A perfect forward secrecy system that includes secure memory allocation functions (smalloc, scalloc, srealloc, sfree) and a virtual machine monitor to manage and sanitize memory locations based on the virtual machine's operation state, ensuring that connection secrets are securely allocated, deallocated, and reallocated, with their information stored in an encrypted database.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If session keys are stored in memory for virtual machine operation, then virtual machine functionality is maintained, but security is compromised when the virtual machine enters certain operation states (suspended, checkpoint, shutdown)

Engineering Contradiction:
Improveperfect forward secrecyVSAvoidvirtual machine operation state management
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system performs preliminary actions by monitoring virtual machine operation states and proactively sanitizing memory before the virtual machine enters suspended, checkpoint, or shutdown states. This prevents session keys from being written to disk or remaining in memory during these vulnerable states, thereby maintaining perfect forward secrecy while allowing normal virtual machine operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring the operation state of the virtual machine and responding dynamically. When the virtual machine transitions to a state that could compromise security (suspended, checkpoint, shutdown), the system detects this state change and automatically triggers memory sanitization procedures, creating a closed-loop security mechanism.

Inventive Principle:
Principle #23Feedback

2Reliability

If connection secrets are deleted from memory to maintain security, then perfect forward secrecy is improved, but virtual machine functionality may be affected

Engineering Contradiction:
Improvesession key protectionVSAvoidvirtual machine operation continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary memory sanitization actions only when the virtual machine enters specific operation states (suspended, checkpoint, shutdown) where functionality will be temporarily affected anyway. By timing the security measure to coincide with these natural pauses in operation, the system minimizes impact on productivity while ensuring session keys are protected.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies different quality measures to different operation states. Instead of continuously sanitizing memory which would impact performance, the system selectively sanitizes memory only during specific operation states (suspended, checkpoint, shutdown) where the virtual machine is already in a transitional or non-operational condition, thereby maintaining high productivity during normal operation while ensuring security during vulnerable states.

Inventive Principle:
Principle #3Local quality

3Reliability

If memory is continuously monitored and sanitized, then security against compromise is improved, but system performance and complexity increase

Engineering Contradiction:
Improveconnection secret protectionVSAvoidmemory management system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses preliminary action by pre-identifying and tracking memory locations that store connection secrets during normal virtual machine operation. This allows the system to quickly sanitize only the relevant memory regions when needed, rather than continuously monitoring and sanitizing entire memory spaces, thereby reducing computational overhead and system complexity while maintaining security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies local quality by focusing security measures on specific memory regions that contain connection secrets rather than treating the entire memory space uniformly. The monitoring and sanitization processes are localized to identified secret-bearing memory areas, reducing the computational burden and system complexity compared to comprehensive memory management approaches.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP4118546B1Virtual machine perfect forward secrecy
Publication Date: 2025.08.06 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • EP4118546B1 patent drawingFigure 1
  • EP4118546B1 patent drawingFigure 2
  • EP4118546B1 patent drawingFigure 3

AI summary

Provided is a method, a computer program product, and a system for providing perfect forward secrecy in virtual machines. The method includes receiving a secure memory allocation function from an application, including a connection secret to be stored in memory. The method further includes allocating memory for the connection secret according to the memory size parameter and storing an entry relating to the connection secret in a secure database. The memory information includes a memory location and a memory size of the memory. The method also includes monitoring an operation state relating to the virtual machine. The method further includes receiving, from the application, a secure deallocation function relating to the connection secret and retrieving the memory information from the secure database. The method also includes deleting the connection from the memory and sanitizing the memory location logged by the memory information.