IP Library Granted Patent US 8,538,027
Granted Patent B2
US 8,538,027 · App. 12/580,918 · Granted Sep 17, 2013

Storage of keyID in customer data area

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 8,538,027
App. No.
12/580,918
Granted
Sep 17, 2013
Kind
B2
Abstract

A key identifier for an encryption key repository is stored with customer data on a logical device. When the customer data is compressible, the key identifier is stored in space freed by compressing the customer data. When the customer data is not compressible, a portion of the customer data is copied to a key record in the key repository identified by the key identifier, and the key identifier overwrites the copied customer data.

Claims (106)

1. A method, comprising:

copying a first customer data from a first portion of a customer data area of a logical device to an encryption key record of a key repository corresponding to a key identifier;

overwriting the first customer data in the first portion of the customer data area with the key identifier;

compressing a second customer data in a second portion of the customer data area; and

storing a key identifier data corresponding to the key identifier in the second portion of the customer data area if the act of compressing a second customer data shrinks the size of the second customer data by at least the size of the key identifier data.

2. The method of claim 1 , wherein the acts of copying a first customer data and overwriting the first customer data are not performed if the act of storing a key identifier data corresponding to the key identifier in the second portion of the customer data area is performed.

3. The method of claim 2 , wherein the act of storing the key identifier data comprises:

storing the key identifier; and

storing a signature data.

4. The method of claim 3 , wherein the act of storing the key identifier data further comprises:

storing a length of the compressed second customer data in the second portion of the customer data area.

5. The method of claim 1 , further comprising:

compressing customer data in a sequence of subportions of a second portion of the customer data area until the customer data in one of the sequence of subportions is shrunk by at least the size of the key identifier data; and

storing a key identifier data corresponding to the key identifier in the one of the sequence of subportions of the second portion of the customer data area.

6. The method of claim 5 , wherein the acts of copying a first customer data and overwriting the first customer data are not performed if the act of storing a key identifier data corresponding to the key identifier in the one of the sequence of subportions of the customer data area is performed.

7. The method of claim 5 , wherein the act of storing the key identifier data comprises:

storing the key identifier; and

storing a signature data.

8. The method of claim 7 , wherein the act of storing the key identifier data further comprises:

storing a length of the compressed customer data in the one of the sequence of subportions of the second portion of the customer data area.

9. The method of claim 1 , wherein the act of copying a first customer data comprises:

obtaining the encryption key record from the key repository;

writing the first customer data as an attribute of the encryption key record; and

writing the encryption key record to the key repository.

10. A method, comprising:

reading a first customer data from a first portion of a customer data area of a logical device;

checking for a signature data in a first portion of the first customer data;

extracting a key identifier corresponding to an encryption key record in a key repository from the first portion of the first customer data if the signature data is found in the first portion of the first customer data;

decompressing a second portion of the first customer data;

replacing the first customer data with the decompressed second portion of the first customer data;

reading a second customer data from a second portion of the customer data area of the logical device;

extracting the key identifier from a first portion of the second customer data;

obtaining the encryption key record from the key repository; and

overwriting the first portion of the second customer data with a portion of the encryption key record.

11. A method, comprising:

reading a sequence of customer data areas from a first portion of a logical device;

checking for a signature data in each of the sequence of customer data areas until one of the sequence of customer data areas contains the signature data;

extracting a key identifier corresponding to an encryption key record in a key repository from a first portion of the one of the sequence of customer data areas;

decompressing a second portion of the one of the sequence of customer data areas;

replacing the one of the sequence of customer data areas with the decompressed second portion;

reading a second customer data from a second portion of the logical device;

extracting the key identifier from a first portion of the second customer data;

obtaining the encryption key record from the key repository; and

overwriting the first portion of the second customer data with a portion of the encryption key record.

12. A network device, comprising:

a processor;

a program storage device, coupled to the processor, configured to store instructions that when executed by the processor cause the processor to perform actions comprising:

copying a first customer data from a first portion of a customer data area of a logical device to an encryption key record of a key repository corresponding to a key identifier;

overwriting the first customer data in the first portion of the customer data area with the key identifier;

compressing a second customer data in a second portion of the customer data area; and

storing a key identifier data corresponding to the key identifier in the second portion of the customer data area if the act of compressing a second customer data shrinks the size of the second customer data by at least the size of the key identifier data.

13. The network device of claim 12 , wherein the instructions when executed cause the processor not to perform the actions of copying a first customer data and overwriting the first customer data if the action of storing the key identifier data in the second portion of the customer data area is performed.

14. The network device of claim 12 , wherein the key identifier data comprises:

the key identifier; and

a signature data.

15. The network device of claim 12 , wherein the key identifier data comprises:

the key identifier;

a signature data; and

a length of the compressed second customer data.

16. A network device, comprising:

a processor;

a program storage device, coupled to the processor, configured to store instructions that when executed by the processor cause the processor to perform actions comprising:

reading a first customer data from a first portion of a customer data area of a logical device;

checking for a signature data in a first portion of the first customer data;

extracting a key identifier corresponding to an encryption key record in a key repository from the first portion of the first customer data if the signature data is found in the first portion of the first customer data; decompressing a second portion of the first customer data;

replacing the first customer data with the decompressed second portion of the first customer data;

reading a second customer data from a second portion of the customer data area of the logical device;

extracting the key identifier from a first portion of the second customer data;

obtaining the encryption key record from the key repository; and

overwriting the first portion of the second customer data with a portion of the encryption key record.

17. A network device, comprising:

a processor;

a memory coupled to the processor;

a program storage device, coupled to the processor, configured to store instructions that when executed by the processor cause the processor to perform a first sequence of actions comprising:

reading a first customer data from a first portion of a logical device;

extracting a key identifier corresponding to an encryption key record in a key repository from a first portion of the first customer data;

obtaining the encryption key record from the key repository;

overwriting the first portion of the first customer data with a portion of the encryption key record containing customer data;

reading a sequence of customer data areas from a second portion of the logical device;

checking for a signature data in each of the sequence of customer data areas until one of the sequence of customer data areas contains the signature data;

extracting the key identifier from a first portion of the one of the sequence of customer data areas;

decompressing a second portion of the one of the sequence of customer data areas; and

replacing the one of the sequence of customer data areas with the decompressed second portion, and wherein the instructions when executed cause the processor to perform the first sequence of actions only if none of the sequence of customer data areas contains the signature data.

18. A system, comprising:

a logical device, comprising:

a first customer data area; and

a second customer data area;

a network device, communicatively coupled with the logical device, comprising:

a processor;

a program storage device, coupled to the processor, configured to store instructions that when executed by the processor cause the processor to perform actions comprising:

copying a first customer data from the first customer data area to an encryption key record of a key repository corresponding to a key identifier;

overwriting the first customer data in the first customer data area with the key identifier;

compressing a second customer data in the second customer data area; and

storing a key identifier data corresponding to the key identifier in the second customer data area if the act of compressing a second customer data shrinks the size of the second customer data by at least the size of the key identifier data.

19. The system of claim 18 , wherein the key identifier data comprises:

the key identifier; and

a signature data.

20. The system of claim 19 , wherein the instructions when executed cause the processor to perform actions further comprising:

reading the second customer data area;

extracting the key identifier from the second customer data area if the second customer data area comprises the signature data; and

decompressing a portion of the second customer data area and overwriting the second customer data area with the decompressed portion of the second customer data area if the second customer data area comprises the signature data.

21. The system of claim 18 , wherein the instructions when executed cause the processor to perform actions further comprising:

reading the key identifier from the first customer data area;

obtaining the encryption key record corresponding to the key identifier from the key repository;

extracting the first customer data from the encryption key record; and

overwriting the key identifier in the first customer data area with the first customer data.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2018
From: BROCADE COMMUNICATIONS SYSTEMS LLC
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047270/0247 →
CHANGE OF NAME Recorded Dec 13, 2017
From: BROCADE COMMUNICATIONS SYSTEMS, INC.
To: BROCADE COMMUNICATIONS SYSTEMS LLC
Reel/Frame 044891/0536 →
RELEASE OF SECURITY INTEREST Recorded Jan 22, 2015
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC
Reel/Frame 034804/0793 →
SECURITY AGREEMENT Recorded Jan 20, 2010
From: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC; INRANGE TECHNOLOGIES CORPORATION; MCDATA CORPORATION; MCDATA SERVICES CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 023814/0587 →