Virtual Machine Replay Recording Abstraction and Data Redaction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional record-replay solutions in virtual machine platforms face challenges in selecting the appropriate abstraction level and security concerns due to the inclusion of confidential data, limiting their usefulness for debugging and error reproduction.
Innovation Solution
A method for generating a replay file that involves reading replay data from a log file, configuring a machine to replay executable instructions, determining if data objects are tainted, and redacting sensitive information to create a filtered output for targeted replay, allowing for arbitrary filtering and private data redaction without performance loss.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If complete virtual machine state is recorded including all memory and device state, then replay accuracy is improved, but data security and privacy are compromised due to inclusion of confidential information
Solution Approach 1:
The patent segments the virtual machine state into multiple abstraction levels (instruction level, system call level, application level) and selectively records only the necessary segments for the intended replay purpose. This allows accurate replay of specific behaviors without capturing unnecessary confidential data, thus resolving the contradiction between replay accuracy and data security.
Solution Approach 2:
The patent extracts and removes tainted or confidential data from the recorded state through a redaction process. By identifying and extracting only the essential execution behavior while taking out sensitive information, the system maintains replay accuracy for debugging purposes while eliminating security risks associated with confidential data exposure.
2Manufacturing precision
If comprehensive recording is performed at low abstraction level, then replay detail is improved, but recording time and storage requirements increase
Solution Approach 1:
The patent implements dynamic abstraction level selection that adapts to the specific replay needs. Instead of always recording at the most detailed level, the system dynamically chooses the appropriate abstraction level based on the intended use case, thereby reducing unnecessary recording overhead while maintaining sufficient replay detail when needed.
Solution Approach 2:
The patent applies different recording qualities to different parts of the virtual machine state based on their importance. Critical execution paths are recorded with high detail at appropriate abstraction levels, while less important areas use lower detail levels, optimizing the balance between replay detail and recording efficiency.
3Object-affected harmful factors
If recording is performed at high abstraction level, then security and privacy are improved by excluding confidential data, but replay detail and debugging capability are reduced
Solution Approach 1:
The patent segments debugging needs into different abstraction levels and allows selective replay at the appropriate level. For sensitive areas where security is paramount, higher abstraction levels are used that exclude confidential data. For critical debugging areas requiring detail, lower abstraction levels provide necessary granularity without exposing unnecessary sensitive information.
Solution Approach 2:
The patent introduces an intermediary redaction layer that sits between the complete VM state and the recorded output. This intermediary selectively filters and redacts confidential data while preserving essential execution behavior, enabling both security protection and adequate debugging capability simultaneously.
4Reliability
If all state changes are recorded for complete replay accuracy, then replay reliability is improved, but file size and processing overhead increase
Solution Approach 1:
The patent extracts and records only the essential state changes needed for reliable replay at the chosen abstraction level. By taking out and recording only the critical execution behavior and state transitions necessary for the intended replay purpose, the system maintains replay reliability while significantly reducing the volume of recorded data.
Solution Approach 2:
The patent applies partial recording by capturing only the necessary portion of state changes required for accurate replay. Instead of recording all possible state changes, it selectively records those that are essential for reproducing the intended execution behavior, reducing data volume while maintaining sufficient replay reliability.
Data Source
AI summary
Execution behavior for processes within a virtual machine is recorded for subsequent replay. The execution behavior comprises a detailed, low-level recording of state changes for processes within the virtual machine. The low-level recording is processed via replay to produce a sliced recording that conforms to time, abstraction, and security requirements for a specific replay scenario. Multiple stages of replay may be arbitrarily stacked to generate different crosscut versions of a common low-level recording.


