IP Library Granted Patent US 11,822,706
Granted Patent B2
US 11,822,706 · App. 17/331,041 · Granted Nov 21, 2023

Logical storage device access using device-specific keys in an encrypted storage environment

Inventors: Amit Pundalik Anchi (Bangalore, IN); Sanjib Mallick (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F21/78G06F9/45558G06F21/73H04L9/083G06F2009/45579
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,822,706
App. No.
17/331,041
Filed
May 26, 2021
Granted
Nov 21, 2023
Kind
B2
Art Unit
2494
USPC
713/193
Abstract

An apparatus in one embodiment comprises at least one processing device comprising a processor coupled to a memory. The at least one processing device is configured to receive in a storage system, from a host device, an identifier of an encryption-enabled logical storage device of the storage system, to utilize the identifier to obtain in the storage system a device-specific key from a key management server external to the storage system, and to utilize the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device. The host device in some embodiments comprises at least one virtual machine and the encryption-enabled logical storage device comprises a virtual storage volume of the at least one virtual machine. Metadata associated with the virtual storage volume illustratively comprises an encryption status indicator specifying whether or not encryption is enabled for the virtual storage volume.

Claims (46)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

wherein the at least one processing device is configured:

to receive in a storage system, from a host device, an identifier of an encryption-enabled logical storage device of the storage system;

to utilize the identifier to obtain in the storage system a device-specific key from a key management server external to the storage system; and

to utilize the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device;

wherein utilizing the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device further comprises utilizing the device-specific key to access encrypted data of the encryption-enabled logical storage device in unencrypted form in the storage system in order to perform in the storage system one or more data services, the one or more data services including at least one of compression and deduplication, on corresponding unencrypted data of the encryption-enabled logical storage device.

2. The apparatus of claim 1 wherein the at least one processing device comprises at least a portion of the storage system.

3. The apparatus of claim 2 wherein the at least one processing device further comprises at least a portion of at least one of the host device, one or more additional host devices, and a host management system that is configured to manage the host devices.

4. The apparatus of claim 1 wherein the host device comprises at least one virtual machine and the encryption-enabled logical storage device comprises a virtual storage volume of the at least one virtual machine, and further wherein metadata associated with the virtual storage volume comprises an encryption status indicator specifying whether or not encryption is enabled for the virtual storage volume.

5. The apparatus of claim 1 wherein a user-space portion of a multi-path input-output driver of the host device obtains the device-specific key from the key management server and provides the device-specific key to a kernel-space portion of the multi-path input-output driver of the host device.

6. The apparatus of claim 5 wherein the kernel-space portion of the multi-path input-output driver of the host device implements a host encryption engine configured to perform encryption and decryption of data of the encryption-enabled logical storage device using the device-specific key.

7. The apparatus of claim 1 wherein the at least one processing device is further configured to receive in the storage system information characterizing the encryption-enabled logical storage device.

8. The apparatus of claim 7 wherein the information characterizing the encryption-enabled logical storage device comprises at least a universally unique identifier (UUID) of the encryption-enabled logical storage device and an encryption status indicator of the encryption-enabled logical storage device.

9. The apparatus of claim 7 wherein at least a portion of the information characterizing the encryption-enabled logical storage device is received in the storage system via an out-of-band mechanism comprising at least one application programming interface (API).

10. The apparatus of claim 7 wherein at least a portion of the information characterizing the encryption-enabled logical storage device is received in the storage system via an in-band mechanism comprising at least one command issued by a multi-path input-output driver of the host device.

11. The apparatus of claim 10 wherein the at least one command comprises at least one vendor unique command of a storage access protocol utilized by the host device to access the storage system over a network.

12. The apparatus of claim 6 wherein the kernel-space portion of the multi-path input-output driver controls queueing of input-output operations directed to the encryption-enabled logical storage device and, responsive to the device-specific key for the encryption-enabled logical storage device not being received from the user-space portion of the multi-path input-output driver within a predetermined time period relating to one or more queued input-output operations, rejects the one or more of the queued input-output operations.

13. The apparatus of claim 1 wherein the at least one processing device is further configured:

to determine, for a given input-output operation directed to the encryption-enabled logical storage device from the host device, whether or not the device-specific key has been obtained from the key management server; and

to reject the given input-output operation responsive to the device-specific key having not yet been obtained.

14. The apparatus of claim 1 wherein the at least one processing device is further configured:

to obtain an encryption status indicator for the encryption-enabled logical storage device; and

to request the device-specific key from the key management server based at least in part on the encryption status indicator.

15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code, when executed by at least one processing device comprising a processor coupled to a memory, causes the at least one processing device:

to receive in a storage system, from a host device, an identifier of an encryption-enabled logical storage device of the storage system;

to utilize the identifier to obtain in the storage system a device-specific key from a key management server external to the storage system; and

to utilize the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device;

wherein utilizing the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device further comprises utilizing the device-specific key to access encrypted data of the encryption-enabled logical storage device in unencrypted form in the storage system in order to perform in the storage system one or more data services, the one or more data services including at least one of compression and deduplication, on corresponding unencrypted data of the encryption-enabled logical storage device.

16. The computer program product of claim 15 wherein the program code, when executed by the at least one processing device, further causes the at least one processing device:

to determine, for a given input-output operation directed to the encryption-enabled logical storage device from the host device, whether or not the device-specific key has been obtained from the key management server; and

to reject the given input-output operation responsive to the device-specific key having not yet been obtained.

17. The computer program product of claim 15 wherein the program code, when executed by the at least one processing device, further causes the at least one processing device:

to obtain an encryption status indicator for the encryption-enabled logical storage device; and

to request the device-specific key from the key management server based at least in part on the encryption status indicator.

18. A method comprising:

receiving in a storage system, from a host device, an identifier of an encryption-enabled logical storage device of the storage system;

utilizing the identifier to obtain in the storage system a device-specific key from a key management server external to the storage system; and

utilizing the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device;

wherein utilizing the obtained device-specific key to process input-output operations directed to the encryption-enabled logical storage device from the host device further comprises utilizing the device-specific key to access encrypted data of the encryption-enabled logical storage device in unencrypted form in the storage system in order to perform in the storage system one or more data services, the one or more data services including at least one of compression and deduplication, on corresponding unencrypted data of the encryption-enabled logical storage device.

19. The method of claim 18 further comprising:

determining, for a given input-output operation directed to the encryption-enabled logical storage device from the host device, whether or not the device-specific key has been obtained from the key management server; and

rejecting the given input-output operation responsive to the device-specific key having not yet been obtained.

20. The method of claim 18 further comprising:

obtaining an encryption status indicator for the encryption-enabled logical storage device; and

requesting the device-specific key from the key management server based at least in part on the encryption status indicator.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2021
From: ANCHI, AMIT PUNDALIK; MALLICK, SANJIB
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056360/0992 →
Continuity (1)
Related Publication 20220382914A1 · Dec 1, 2022
Cited By (4)
US 12,197,593 US 12,517,682 US 12,608,158 US 12,670,120