Host-Based Encryption via OS-Independent I/O Filter Driver

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for encrypting data at rest in computer systems are complex, costly, and disruptive, particularly when dealing with large datasets and replication, due to key management challenges and the need for additional infrastructure, which hinders widespread adoption.

Innovation Solution

Implementing host-based encryption using an OS-independent I/O filter driver that encrypts data at the file, block, or object level, allowing for transparent encryption and decryption without modifying applications or hardware, and automatically managing encryption keys for replicated data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional encryption methods are implemented for data at rest, then data security is improved, but system complexity and deployment cost increase significantly

Engineering Contradiction:
Improvedata securityVSAvoidencryption system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an I/O filter driver as an intermediary component between the application and the storage system. This filter driver intercepts I/O operations and applies encryption/decryption transparently, eliminating the need for applications to directly manage encryption keys or understand encryption mechanisms. The filter driver serves as a mediator that handles all encryption complexity while presenting a simple interface to both applications and storage systems.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The encryption system performs self-service through automatic key management capabilities. The filter driver automatically obtains encryption keys from the storage system, manages key lifecycle operations, and handles key rotation without requiring manual intervention or additional key management infrastructure. This self-service approach reduces deployment complexity and operational overhead.

Inventive Principle:
Principle #25Self-service

2Reliability

If encryption is implemented at the application level, then data security is improved, but application modification requirements and deployment disruption increase

Engineering Contradiction:
Improvedata securityVSAvoiddeployment ease
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The I/O filter driver acts as an intermediary layer between applications and the storage system, enabling encryption without modifying application code. The filter driver is inserted into the I/O stack and transparently encrypts/decrypts data blocks, allowing existing applications to continue operating unchanged while gaining encryption protection.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The encryption functionality is segmented into a separate I/O filter driver component that operates independently from applications. This segmentation allows encryption to be implemented at the system level rather than requiring application-level changes, enabling non-disruptive deployment across multiple applications simultaneously.

Inventive Principle:
Principle #1Segmentation

3Reliability

If encryption keys are manually managed for replicated data, then security control is improved, but key management time and operational complexity increase

Engineering Contradiction:
Improvesecurity controlVSAvoidkey management time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements self-service key management where the filter driver automatically obtains, manages, and rotates encryption keys without manual intervention. The storage system provides key management services directly to the filter driver, enabling automatic key provisioning, secure key distribution to replica systems, and automated key rotation schedules. This eliminates time-consuming manual key management operations while maintaining strong security controls.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary key management actions by pre-provisioning encryption keys and establishing key management policies before replication operations begin. The filter driver pre-obtains keys from the storage system and prepares encrypted data blocks in advance, ensuring that key management is handled proactively rather than reactively during replication operations.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If encryption infrastructure is expanded to support replication, then data security is improved, but deployment cost and infrastructure complexity increase

Engineering Contradiction:
Improvedata securityVSAvoidinfrastructure resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The I/O filter driver provides universal encryption functionality that serves multiple purposes: protecting primary data, securing replicated data, and managing keys for both operations. The same filter driver infrastructure handles encryption for local applications and for replicated data sent to remote systems, eliminating the need for separate encryption infrastructures for different functions.

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

Solution Approach 2:

The patent merges encryption functionality with the existing I/O stack and storage system operations. Rather than adding separate encryption hardware or software layers, the encryption capabilities are combined into the I/O filter driver that already manages data flow between applications and storage. This merging approach reuses existing infrastructure resources while adding encryption protection.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8261068B1Systems and methods for selective encryption of operating system metadata for host-based encryption of data at rest on a logical unit
Publication Date: 2012.09.04 EMC IP HLDG CO LLC
  • US8261068B1 patent drawing
  • US8261068B1 patent drawing
  • US8261068B1 patent drawing

AI summary

A method is provided for providing an operating system (OS) independent input/output (I/O) filter driver capable of encrypting at least a portion of a logical unit (LUN), the method comprising the unordered steps of: providing an I/O filter driver component to an I/O stack for a host in communication with the LUN; determining, based at least in part on at least one of OS requirements and an arrangement of data on the LUN, at least one region in the LUN that contains data that is used below the I/O filter driver in an I/O stack on the host; and performing at least one of a read and a write of the one or more regions while keeping the one or more regions in plaintext, while permitting other regions of the LUN to be at least one of encrypted and decrypted.