IP Library Granted Patent US 9,690,943
Granted Patent B2
US 9,690,943 · App. 14/295,947 · Granted Jun 27, 2017

BIOS secure data management system

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 9,690,943
App. No.
14/295,947
Granted
Jun 27, 2017
Kind
B2
Abstract

A Basic Input/Output System (BIOS) secure data management system includes a BIOS that is configured to perform a boot process. At least one memory system is configured to provide a System Management (SM) memory location that is only accessible by the BIOS. A trusted platform module (TPM) includes at least one register and is configured to store sealed first secure data. The TPM is configured to use at least one first value in the at least one register that depends on the boot process to unseal the sealed first secure data to provide unsealed first secure data, and provide that unsealed first secure data to the BIOS for storage in the SM memory location. The BIOS is configured to retrieve the unsealed first secure data from the SM memory location and use the unsealed first secure data to perform a security function.

Claims (89)

1. A Basic Input/Output System (BIOS) secure data management system, comprising:

a Basic Input/Output System (BIOS) that is configured to perform a boot process;

a memory system that is configured to provide a System Management (SM) memory location that is only accessible by the BIOS such that only the BIOS stores data in the SM memory location and retrieves data from the SM memory location; and

a trusted platform module (TPM) that includes a register and that is configured to:

store sealed first secure data, wherein first secure data is encrypted using a value from the register that is expected based on execution of authorized code at a particular time period during the boot process to provide the sealed first secure data;

use a first value in the register that is generated by performing a hash operation on a previous value in the register and at least one first measurement made during the boot process to unseal the sealed first secure data to provide unsealed first secure data; and

provide the unsealed first secure data to the BIOS for storage in the SM memory location;

wherein the BIOS is configured to:

store the unsealed first secure data in the SM memory location;

retrieve, during the boot process for use in performing a security function that requires the unsealed first secure data, the unsealed first secure data from the SM memory location; and

use the unsealed first secure data to perform the security function.

2. The BIOS secure data management system of claim 1 , wherein the BIOS is configured to:

determine that the SM memory location is available; and

store, in response to determining that the SM memory location is available, the unsealed first secure data in the SM memory location.

3. The BIOS secure data management system of claim 2 , wherein:

the memory system is configured to provide a non-SM memory location;

the trusted platform module (TPM) is configured to:

store sealed second secure data;

use a one second value in the register that is generated based on at least one second measurement made during the boot process in order to unseal the sealed second secure data to provide unsealed second secure data; and

provide the unsealed second secure data to the BIOS; and

the BIOS is configured to:

determine that the SM memory location is not available;

store, in response to determining that the SM memory location is not available, the unsealed second secure data in the non-SM memory location; and

retrieve the unsealed second secure data from the non-SM memory location and use the unsealed second secure data to perform a security function.

4. The BIOS secure data management system of claim 3 , wherein the BIOS provides a first secure data management service prior to the SM memory location being available and a second secure data management service subsequent to the SM memory location being available, and wherein, in response to determining that the SM memory location is available, the first secure data management service is configured to provide the unsealed second secure data to the second secure data management service, and wherein the second secure data management service is configured to store the unsealed second secure data in the SM memory location.

5. The BIOS secure data management system of claim 4 , wherein the second secure data management service is configured to:

retrieve the unsealed second secure data from the SM memory location; and

use the unsealed second secure data to perform a security function.

6. The BIOS secure data management system of claim 1 , wherein the TPM is configured to unseal the sealed first secure data using the first value from the register by:

extending the first value in the register by performing a hash operation on the first value in the register and at least one second measurement made during the boot process to provide a second value in the register; and

using the second value to unseal the sealed first secure data.

7. The BIOS secure data management system of claim 1 , wherein the TPM is configured to extend the first value in the register that was used to unseal the sealed first secure data to provide a second value in the register that is unsuitable for unsealing the sealed first secure data.

8. An information handling system (IHS), comprising:

a Basic Input/Output System (BIOS) that is configured to perform a system boot process;

a processing system;

a memory system that is coupled to the processing system and that is configured to provide a System Management Random Access Memory (SMRAM) that is only accessible by the BIOS such that only the BIOS stores data in the SMRAM and retrieves data from the SMRAM;

a storage system that includes an encrypted item; and

a trusted platform module (TPM) that includes a register and that is configured to:

store a sealed first decryption key, wherein a first decryption key is encrypted using a value from the register that is expected based on execution of authorized code at a particular time period during the system boot process to provide the sealed first decryption key;

use a first value in the register that is generated by performing a hash operation on a previous value in the register and at least one first measurement made during the system boot process to unseal the sealed first decryption key to provide an unsealed first decryption key; and

provide the unsealed first decryption key to the BIOS for storage in the SMRAM; and

wherein the BIOS is configured to:

store the unsealed first decryption key in the SMRAM;

retrieve, during the boot process for use in decrypting the encrypted item, the unsealed first decryption key from the SMRAM; and

use the unsealed first decryption key to decrypt the encrypted item in the storage system.

9. The IHS of claim 8 , wherein the BIOS is configured to:

determine that the SMRAM is available; and

store, in response to determining that the SMRAM is available, the unsealed first decryption key in the SMRAM.

10. The IHS of claim 9 , wherein:

the memory system is configured to provide a non-SMRAM;

the trusted platform module (TPM) is configured to:

store a sealed second decryption key;

use a second value in the register that is generated based on at least one second measurement made during the system boot process to unseal the sealed second decryption key to provide an unsealed second decryption key; and

provide the unsealed second decryption key to the BIOS for storage in the non-SMRAM; and

the BIOS is configured to:

determine that the SMRAM is not available;

store, in response to determining that the SMRAM is not available, the unsealed second decryption key in the non-SMRAM; and

retrieve the unsealed second decryption key from the non-SMRAM and use the unsealed second decryption key to perform a security function.

11. The IHS of claim 10 , wherein the BIOS provides a first key management service prior to the SMRAM being available and a second key management service subsequent to the SMRAM being available, and wherein, in response to determining that the SMRAM is available, the first key management service is configured to provide the unsealed second decryption key to the second key management service, and wherein the second key management service is configured to store the unsealed second decryption key in the SMRAM.

12. The IHS of claim 11 , wherein the second key management service is configured to:

retrieve the unsealed second decryption key from the SMRAM; and

use the unsealed second decryption key to perform a security function.

13. The IHS of claim 8 , wherein the TPM is configured to unseal the sealed first decryption key using the first value from the register by:

extending the first value in the register by performing a hash operation on a previous value in the register and at least one second measurement made during the system boot process to provide second value in the register; and

using the at least one second value to unseal the sealed first decryption key.

14. The IHS of claim 8 , wherein the TPM is configured to extend the first value in the register that was used to unseal the sealed first decryption key to provide a second value in the register that is unsuitable for unsealing the sealed first decryption key.

15. A method for providing Basic Input/Output System (BIOS) secure data management, comprising:

encrypting, by a trusted platform module (TPM) that includes a register, first secure data using a value from the register that is expected based on execution of authorized code at a particular time period during a boot process to provide sealed first secure data;

performing, by a Basic Input/Output System (BIOS), a boot process;

unsealing, by the TPM, the sealed first secure data using a first value in the register that is generated by performing a hash operation on a previous value in the register and at least one first measurement made during the boot process, wherein the unsealing of the sealed first secure data provides unsealed first secure data;

determining, by the BIOS, that a System Management (SM) memory location in a memory system that is only accessible to the BIOS is available such that only the BIOS may store data in the SM memory location and retrieve data from the SM memory location;

storing, by the BIOS in response to determining that the SM memory location is available, the unsealed first secure data in the SM memory location;

retrieving, by the BIOS and during the boot process for use in performing a security function that requires the unsealed first secure data, the unsealed first secure data from the SM memory location; and

using, by the BIOS, the unsealed first secure data to perform the security function.

16. The method of claim 15 , further comprising:

sealing, by the trusted platform module (TPM), second secure data to provide sealed second secure data;

unsealing, by the TPM, the sealed second secure data using a second value in the register that is generated based on at least one second measurement made during the boot process, wherein the unsealing of the sealed second secure data provides unsealed second secure data;

determining, by the BIOS, that the SM memory location is not available and, in response, storing the unsealed second secure data in a non-SM memory location in the memory system; and

retrieving, by the BIOS, the unsealed second secure data from the non-SM memory location and using the unsealed second secure data to perform a security function.

17. The method of claim 16 , wherein the BIOS provides a first secure data management service prior to the SM memory location being available and a second secure data management service subsequent to the SM memory location being available, and wherein the method further comprises:

providing, by the first secure data management service in response to determining that the SM memory location is available, the unsealed second secure data to the first secure data management service; and

storing, by the second secure data management service, the unsealed second secure data in the SM memory location.

18. The method of claim 17 , further comprising:

retrieving, by the second secure data management service, the unsealed second secure data from the SM memory location and using the unsealed second secure data to perform a security function.

19. The method of claim 15 , wherein unsealing the sealed first secure data using the first value from the register that is generated by performing a hash operation on a previous value in the register and the at least one first measurement made during the boot process further comprises:

extending, by the TPM, the first value in the register by performing a hash operation on the first value in the register and at least one second measurement made during the boot process to provide a second value in the register; and

using, by the TPM, the second value to unseal the sealed first secure data.

20. The method of claim 15 , further comprising:

extending, by the TPM, the first value in the register that was used to unseal the sealed first secure data to provide a second value in the register that is unsuitable for unsealing the sealed first secure data.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 033625 FRAME 0688 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.
Reel/Frame 040027/0757 →
RELEASE OF REEL 033625 FRAME 0748 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.
Reel/Frame 040027/0050 →
RELEASE OF REEL 033625 FRAME 0711 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; COMPELLENT TECHNOLOGIES, INC.; SECUREWORKS, INC.
Reel/Frame 040016/0903 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Aug 27, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 033625/0748 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Aug 27, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033625/0711 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Aug 27, 2014
From: COMPELLENT TECHNOLOGIES, INC.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; SECUREWORKS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 033625/0688 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2014
From: BARKELEW, JONATHAN BRET; GILLESPIE, KURT DAVID
To: DELL PRODUCTS L.P.
Reel/Frame 033029/0349 →