IP Library Granted Patent US 11,914,717
Granted Patent B2
US 11,914,717 · App. 17/477,355 · Granted Feb 27, 2024

Information handling systems and related methods to cryptographically verify information handling system platform components and track events associated with the platform components

Inventors: Charles D. Robison (Buford, GA); Shekar B. Suryanarayana (Bangalore, IN); Srikanth S. Krishnamurthy (Bangalore, IN)
Assignee: Dell Products L.P.
G06F21/575H04L9/0643H04L9/0861H04L9/3236G06F2221/034
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,914,717
App. No.
17/477,355
Granted
Feb 27, 2024
Kind
B2
Abstract

The present disclosure provides various embodiments of information handling systems and related methods to generate a cryptographic key, which may be used to cryptographically verify information handling system (IHS) platform components and track events associated with the platform components. In the embodiments disclosed herein, a wide variety of platform-related information may be collected from a plurality of system platform components and embedded into a single cryptographic key. Once a cryptographic key is generated, it may be decoded and/or compared with cryptographic key(s) subsequently generated by the IHS to securely verify the system platform components, determine if changes have been made to the system platform components, facilitate system diagnostics and/or perform additional functions.

Claims (61)

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

a first boot service stored within a non-transitory computer readable memory of the IHS and executable by a processing device of the IHS to:

collect platform-related information from a plurality of system platform components included within the IHS, wherein the platform-related information comprises component data and event data corresponding to the system platform components;

for each system platform component, generate a metadata node, a component node and an event node containing the platform-related information collected from the system platform component, wherein the component nodes comprise the component data collected from the system platform components, the event nodes comprise the event data collected from the system platform components, and the metadata nodes comprise metadata specifying where the component data within the component nodes and the event data within the event nodes are stored;

a second boot service stored within the non-transitory computer readable memory of the IHS and executable by the processing device of the IHS to generate a binary large object (BLOB) that includes at least a subset of the platform-related information contained within the metadata nodes, the component nodes and/or the event nodes; and

a third boot service stored within the non-transitory computer readable memory of the IHS and executable by the processing device of the IHS to encode the BLOB to create a cryptographic key containing the platform-related information included within the BLOB.

2. The information handling system of claim 1 , wherein the metadata contained within metadata nodes is stored in a secure location on a system platform of the IHS, and wherein the platform-related information contained within the component nodes and the event nodes is encrypted, stored within different non-volatile memory namespaces and accessed only through the metadata nodes.

3. The information handling system of claim 1 , wherein the second boot service is further executable by the processing device of the IHS to generate the BLOB based on:

user permissions of a requestor requesting access to the platform-related information contained within one or more of the component nodes and the event nodes; and

permission bits assigned to the one or more of the component nodes and the event nodes.

4. The information handling system of claim 1 , wherein the first boot service is further executable by the processing device of the IHS to assign permission bits to the component nodes and the event nodes, wherein the permission bits specify user permissions for accessing the platform-related information contained within the component nodes and the event nodes.

5. The information handling system of claim 4 , further comprising a fourth boot service stored within the non-transitory computer readable memory of the IHS and executable by the processing device of the IHS to:

receive a request from a requestor to access platform-related information stored within one or more of the component nodes and the event nodes;

verify the user permissions of the requestor with the permission bits assigned to the one or more of the component nodes and the event nodes; and

fetch the platform-related information stored within the one or more of the component nodes and the event nodes if the user permissions are verified.

6. The information handling system of claim 5 , wherein the second boot service is further executable by the processing device of the IHS to generate the BLOB based on:

the request received from the requestor;

the user permissions of the requestor; and

the permission bits assigned to the one or more of the component nodes and the event nodes.

7. The information handling system of claim 1 , wherein the third boot service is executable by the processing device of the IHS to encode the BLOB to create a cryptographic key by:

dividing the BLOB into multiple parts including a first part containing the metadata, a second part containing the component data and a third part containing the event data;

dividing each of the multiple parts into multiple sub-parts;

applying a hash algorithm to each of the multiple sub-parts to generate a set of hash strings;

combining two or more hash strings in the set of hash strings and applying a hash algorithm to the combined hash strings to generate another set of hash strings;

repeating the step of combining two or more hash strings and applying a hash algorithm to the combined hash strings until a final hash string is generated; and

encrypting the final hash string to create the cryptographic key.

8. The information handling system of claim 1 , wherein the first boot service, the second boot service and the third boot service are executed by the processing device every time the IHS is rebooted to create a new cryptographic key.

9. The information handling system of claim 8 , wherein the new cryptographic key is compared with the cryptographic key to verify the system platform components and/or track changes made to the system platform components.

10. The information handling system of claim 8 , wherein the new cryptographic key is compared with the cryptographic key to track events associated with the system platform components.

11. A computer implemented method performed by a processing device of an information handling system (IHS) executing program instructions contained within boot services stored within a non-transitory computer readable memory of the IHS, wherein the computer implemented method comprises:

collecting platform-related information from a plurality of system platform components included within the IHS, wherein the platform-related information comprises component data and event data corresponding to the system platform components;

for each system platform component, generating a metadata node, a component node and an event node containing the platform-related information collected from the system platform component, wherein the component nodes comprise the component data collected from the system platform components, the event nodes comprise the event data collected from the system platform components, and the metadata nodes comprise metadata specifying where the component data within the component nodes and the event data within the event nodes are stored;

generating a binary large object (BLOB) that includes at least a subset of the platform-related information contained within the metadata nodes, the component nodes and/or the event nodes; and

encoding the BLOB to create a cryptographic key containing the platform-related information included within the BLOB.

12. The computer implemented method of claim 11 , further comprising:

storing the metadata contained within metadata nodes in a secure location on a system platform of the IHS;

encrypting the platform-related information contained within the component nodes and the event nodes;

storing the encrypted platform-related information within different non-volatile memory namespaces; and

accessing the encrypted platform-related information stored within different non-volatile memory namespaces only through the metadata nodes.

13. The computer implemented method of claim 11 , wherein said generating a BLOB comprises generating the BLOB based on:

user permissions of a requestor requesting access to the platform-related information contained within one or more of the component nodes and the event nodes; and

permission bits assigned to the one or more of the component nodes and the event nodes.

14. The computer implemented method of claim 11 , further comprising assigning permission bits to the component nodes and the event nodes, wherein the permission bits specify user permissions for accessing the platform-related information contained within the component nodes and the event nodes.

15. The computer implemented method of claim 14 , further comprising:

receiving a request from a requestor to access platform-related information stored within one or more of the component nodes and the event nodes;

verifying the user permissions of the requestor with the permission bits assigned to the one or more of the component nodes and the event nodes; and

fetching the platform-related information stored within the one or more of the component nodes and the event nodes if the user permissions are verified.

16. The computer implemented method of claim 15 , wherein said generating a BLOB comprises generating the BLOB based on:

the request received from the requestor;

the user permissions of the requestor; and

the permission bits assigned to the one or more of the component nodes and the event nodes.

17. The computer implemented method of claim 11 , wherein said encoding the BLOB to create a cryptographic key comprises:

dividing the BLOB into multiple parts including a first part containing the metadata, a second part containing the component data and a third part containing the event data;

dividing each of the multiple parts into multiple sub-parts;

applying a hash algorithm to each of the multiple sub-parts to generate a set of hash strings;

combining two or more hash strings in the set of hash strings and applying a hash algorithm to the combined hash strings to generate another set of hash strings;

repeating the step of combining two or more hash strings and applying a hash algorithm to the combined hash strings until a final hash string is generated; and

encrypting the final hash string to create the cryptographic key.

18. The computer implemented method of claim 11 , further comprising repeating the steps of collecting platform-related information, generating a metadata node, a component node and an event node, generating a BLOB and encoding the BLOB each time the IHS is rebooted to create a new cryptographic key.

19. The computer implemented method of claim 18 , further comprising comparing the new cryptographic key with the cryptographic key to verify the system platform components and/or track changes made to the system platform components.

20. The computer implemented method of claim 18 , further comprising comparing the new cryptographic key with the cryptographic key to track events associated with the system platform components.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2021
From: SURYANARAYANA, SHEKAR B.
To: DELL PRODUCTS L.P.
Reel/Frame 057510/0900 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2021
From: ROBISON, CHARLES D.; KRISHNAMURTHY, SRIKANTH S.
To: DELL PRODUCTS L.P.
Reel/Frame 057507/0718 →
Continuity (1)
Related Publication 20230084956A1 · Mar 16, 2023