IP Library Patent Application 14250650
Patent Application
App. No. 14/250,650

ENCRYPTION KEY SELECTION

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 None
App. No.
14/250,650
Abstract

Systems and methods are disclosed for encrypting and/or decrypting data in a data storage environment. A data storage device controller is configured to extract parameters from host memory access commands and use key selection circuitry to select an encryption model based on the parameters. Key selection is determined by the selected encryption model.

Claims (55)

1 . A data storage device, comprising:

a non-volatile memory;

an engine for performing at least one of encryption and decryption; and

a controller configured to:

receive a memory access command from a host system;

extract one or more parameters from the memory access command;

provide the one or more parameters to key selection circuitry, the key selection circuitry comprising:

a first key selection module configured to receive a first input parameter of the one or more parameters and generate a first output signal associated with a first encryption scheme; and

a second key selection module configured to receive a second input parameter of the one or more parameters and generate a second output signal associated with a second encryption scheme different from the first encryption scheme;

select one of the first output signal and the second output signal;

provide a key associated with the selected output signal to the engine; and

cause the engine to encrypt or decrypt data associated with the memory access command using the key.

2 . The data storage device of claim 1 , wherein the controller is further configured to maintain one or more configuration records, wherein each of the configuration records includes a single encryption key.

3 . The data storage device of claim 2 , further comprising device firmware, wherein the controller is further configured to generate the one or more configuration records based at least in part on the device firmware.

4 . The data storage device of claim 1 , wherein the one or more parameters includes:

logical block address (LBA) data or logical page data; and

memory access permission data.

5 . The data storage device of claim 4 , wherein the one or more parameters further includes a key index value.

6 . The data storage device of claim 1 , wherein the first key selection module corresponds to a logical block address (LBA) range-based encryption scheme and the second key selection module corresponds to a file-based encryption scheme.

7 . The data storage device of claim 6 , wherein the first input parameter comprises LBA data associated with the memory access command and the second input parameter comprises a key index value.

8 . The data storage device of claim 7 , wherein when the first output signal is the selected output signal, the controller is further configured to provide the key from a configuration record comprising the key and data defining a range of LBAs, wherein the LBA data associated with the memory access command identifies one or more LBAs within the range of LBAs.

9 . The data storage device of claim 7 , wherein when the second output signal is the selected output signal, the controller is further configured to provide the key from a configuration record comprising the key and the key index value.

10 . The data storage device of claim 7 , wherein the key selection circuitry further comprises a third key selection module configured to receive the first input parameter and generate a third output signal associated with a third encryption scheme.

11 . The data storage device of claim 10 , wherein the third encryption scheme is a raw data encryption scheme.

12 . The data storage device of claim 1 , wherein the key selection circuitry comprises hardware logic modules.

13 . The data storage device of claim 1 , wherein the key selection circuitry further comprises a key access module configured to receive one or more access permission parameters of the one or more parameters and generate an access signal indicating whether the host system has permission to access a portion of the non-volatile memory associated with the memory access command.

14 . The data storage device of claim 13 , wherein the one or more access parameters indicate an access type, wherein the access type is one of read access or write access.

15 . The data storage device of claim 1 , wherein the first output signal is the selected output signal when the second key selection module is bypassed.

16 . A controller, comprising:

a processor; and

key selection circuitry;

wherein the processor is configured to:

receive a memory access command;

extract one or more parameters from the memory access command;

provide the one or more parameters to the key selection circuitry, the key selection circuitry comprising:

a first key selection module configured to receive a first input parameter of the one or more parameters and

generate a first output signal associated with a first encryption scheme; and

a second key selection module configured to receive a second input parameter of the one or more parameters and generate a second output signal associated with a second encryption scheme different from the first encryption scheme;

select one of the first output signal and the second output signal; and

use a key associated with the selected output signal to encrypt or decrypt data associated with the memory access command.

17 . The controller of claim 16 , wherein the one or more parameters includes:

logical block address (LBA) data or logical page data; and

memory access permission data.

18 . A method of selecting an encryption key in a data storage system, the method comprising:

receiving a memory access command from a host system;

extracting one or more parameters from the memory access command;

providing the one or more parameters to key selection circuitry, the key selection circuitry comprising:

a first key selection module configured to receive a first input parameter of the one or more parameters and generate a first output signal associated with a first encryption scheme; and

a second key selection module configured to receive a second input parameter of the one or more parameters and generate a second output signal associated with a second encryption scheme different from the first encryption scheme;

selecting one of the first output signal and the second output signal;

providing a key associated with the selected output signal to an engine for performing at least one of encryption or decryption; and

causing the engine to encrypt or decrypt data associated with the memory access command using the key;

wherein the method is performed under the control of a controller of the data storage system.

19 . The method of claim 18 , wherein the first key selection module corresponds to a logical block address (LBA) range-based encryption scheme and the second key selection module corresponds to a file-based encryption scheme.

20 . The method of claim 18 , wherein the key selection circuitry further comprises a third key selection module configured to receive the first input parameter and generate a third output signal associated with a third encryption scheme.

Assignments (6)
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2015
From: OBUKHOV, DMITRY S.; CHAI, ZHENCHUAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 034633/0375 →