IP Library Granted Patent US 10,909,251
Granted Patent B2
US 10,909,251 · App. 16/111,750 · Granted Feb 2, 2021

Modification of a segment of data based on an encryption operation

Inventors: Jeffrey Munsil (Fort Collins, CO); Michael Danielson (Georgetown, TX)
Assignee: MICRON TECHNOLOGY, INC.
G06F21/602H04L9/0819
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 10,909,251
App. No.
16/111,750
Granted
Feb 2, 2021
Kind
B2
Abstract

Host data can be received at a memory sub-system. A determination can be made that the host data exceeds a threshold size associated with an encryption operation. The host data can be separated into segments based on the threshold size associated with the encryption operation. Each of the segments can be encrypted based on the encryption operation. Furthermore, the encrypted segments can be stored at the memory sub-system.

Claims (57)

1. A method comprising:

receiving, from a host system, host data to be stored at a memory sub-system in an encrypted form;

determining that the host data exceeds a threshold size associated with an encryption operation;

separating, by a processing device, the host data into a plurality of segments based on the threshold size associated with the encryption operation;

determining that a particular segment of the plurality of segments does not satisfy a minimum size of data associated with the encryption operation;

in response to determining that the particular segment does not satisfy the minimum size, removing a portion of data from a prior segment and adding the removed portion to the particular segment, wherein the particular segment with the added portion satisfies the minimum size of data associated with the encryption operation;

encrypting each of the plurality of segments based on the encryption operation; and

storing the encrypted plurality of segments at the memory sub-system.

2. The method of claim 1 , further comprising:

determining that a particular segment of the plurality of segments does not satisfy a minimum size of data associated with the encryption operation;

in response to determining that the particular segment does not satisfy the minimum size, adding padding data to the particular segment, wherein the particular segment with the added padding data satisfies the minimum size of data associated with the encryption operation.

3. The method of claim 1 , wherein the threshold size associated with the encryption operation corresponds to a maximum size of data that is to be encrypted by using the encryption operation.

4. The method of claim 1 , wherein encrypting each of the plurality of segments based on the encryption operation comprises:

receiving at least one cryptographic key and an additional value; and

encrypting a particular segment of the plurality of segments with the encryption operation by using the at least one cryptographic key and the additional value.

5. The method of claim 4 , wherein encrypting each of the plurality of segments based on the encryption operation further comprises:

incrementing the additional value after encrypting the particular segment; and

encrypting a subsequent segment of the plurality of segments with the encryption operation by using the at least one cryptographic key and the incremented additional value.

6. The method of claim 1 , wherein the host data is indexed by a host system at a size that exceeds the threshold size.

7. A system comprising:

a memory component; and

a processing device, operatively coupled with the memory component, to:

receive, from a host system, host data to be stored at a memory sub-system in an encrypted form;

determine that the host data exceeds a threshold size associated with an encryption operation;

separate the host data into a plurality of segments based on the threshold size associated with the encryption operation;

determine that a particular segment of the plurality of segments does not satisfy a minimum size of data associated with the encryption operation;

in response to determining that the particular segment does not satisfy the minimum size, remove a portion of data from a prior segment and adding the removed portion to the particular segment, wherein the particular segment with the added portion satisfies the minimum size of data associated with the encryption operation;

encrypt each of the plurality of segments based on the encryption operation; and

store the encrypted plurality of segments at the memory sub-system.

8. The system of claim 7 , wherein the processing device is further to:

determine that a particular segment of the plurality of segments does not satisfy a minimum size of data associated with the encryption operation;

in response to determining that the particular segment does not satisfy the minimum size, add padding data to the particular segment, wherein the particular segment with the added padding data satisfies the minimum size of data associated with the encryption operation.

9. The system of claim 7 , wherein the threshold size associated with the encryption operation corresponds to a maximum size of data that is to be encrypted by using the encryption operation.

10. The system of claim 7 , wherein to encrypt each of the plurality of segments based on the encryption operation, the processing device is further to:

receive at least one cryptographic key and an additional value; and

encrypt a particular segment of the plurality of segments with the encryption operation by using the at least one cryptographic key and the additional value.

11. The system of claim 7 , wherein to encrypt each of the plurality of segments based on the encryption operation, the processing device is further to:

increment the additional value after encrypting the particular segment; and

encrypt a subsequent segment of the plurality of segments with the encryption operation by using the at least one cryptographic key and the incremented additional value.

12. The system of claim 7 , wherein the host data is indexed by a host system at a size that exceeds the threshold size.

13. A non-transitory computer readable medium comprising instructions, which when executed by a processing device, cause the processing device to perform operations comprising:

receiving host data at a memory sub-system;

separating the host data into a plurality of segments based on an encryption operation;

determining that a last segment of the plurality of segments is below a minimum size of data associated with the encryption operation;

in response to determining that the last segment of the plurality of segments is below the minimum size, modifying the last segment to satisfy the minimum size;

encrypting the plurality of segments with the modified last segment based on the encryption operation, wherein encrypting the plurality of segments further comprises:

receiving at least one cryptographic key and an additional value;

encrypting a particular segment of the plurality of segments with the encryption operation utilizing the at least one cryptographic key and the additional value;

incrementing the additional value after encrypting the particular segment; and

encrypting a subsequent segment of the plurality of segments with the encryption operation utilizing the at least one cryptographic key and the incremented additional value; and

storing the encrypted plurality of segments at the memory sub-system.

14. The non-transitory computer readable medium of claim 13 , wherein to modify the last segment, the operations further comprise:

removing a portion of data from a prior segment and adding the removed portion to the last segment, wherein the last segment with the added portion satisfies the minimum size of data associated with the encryption operation.

15. The non-transitory computer readable medium of claim 13 , wherein to modify the last segment, the operations further comprise:

adding padding data to the last segment, wherein the last segment with the added padding data satisfies the minimum size of data associated with the encryption operation.

16. The non-transitory computer readable medium of claim 13 , wherein the minimum size associated with the data corresponds to a minimum size of data that is to be encrypted by using the encryption operation.

17. The non-transitory computer readable medium of claim 13 , wherein the host data is indexed by a host system at a size that exceeds the minimum size.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 14, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 051028/0835 →
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050719/0550 →
SUPPLEMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Nov 13, 2018
From: MICRON TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A.., AS COLLATERAL AGENT
Reel/Frame 047630/0756 →
SUPPLEMENT NO. 10 TO PATENT SECURITY AGREEMENT Recorded Nov 13, 2018
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 048102/0420 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2018
From: MUNSIL, JEFFREY; DANIELSON, MICHAEL
To: MICRON TECHNOLOGY, INC.
Reel/Frame 046716/0976 →
Continuity (1)
Related Publication 20200065500A1 · Feb 27, 2020