# US 12,008,111 B2 · System and method for efficient secured startup of data processing systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,008,111 B2
- Document ID: US12008111B2
- Status: Granted
- Kind: B2
- Application number: 17/873,352
- Filed: 2022-07-26
- Published: 2024-02-01
- Granted: 2024-06-11
- Earliest claimed: 2022-07-26
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Wei G. Liu; Sanjeev Singh; Paul W. Vancil
- Web page: https://patentgrep.com/patent/US12008111B2

## CPC

- G06F 21/575: {Secure boot}
- G06F 21/572: {Secure firmware programming, e.g. of basic input output system [BIOS]}
- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods and systems for managing the operation of data processing systems are disclosed. A data processing system may include a computing device that may enter various operating states by performing various types of startups. The startups may include use of code bases for which the computing device may not inherently be able to validate. To reduce risk of using the code bases, the computing device may perform processes to validate the code bases prior to using the code bases. The processes may include obtaining security information for a portion of the code base from a trusted source, and using the security information to validate portions of the code base ahead of use of the portions to complete startups.

## Claims

### Claim 1

A computer-implemented method for managing operation of a data processing system, the method comprising:
identifying a startup of the data processing system;
during a secure phase of the startup, identifying that the startup is a specialized startup;
based on the startup being a specialized startup:
obtaining first security information prior to exiting the secure phase of the startup;
obtaining specialized firmware for the startup;
obtaining second security information for the specialized firmware; and
making a determination regarding whether the specialized firmware is valid using the first security information and the second security information;
in a first instance of the determination where the specialized firmware is valid:
handing off control of the data processing system to the specialized firmware to complete the startup;
in a second instance of the determination where the specialized firmware is not valid:
remediating the startup without using the specialized firmware to complete the startup.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the first security information is a hash of an image of the specialized firmware hosted by a management controller of the data processing system, the management controller being an independently operating computing device that is physically installed within the data processing system.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein the first security information is obtained from the management controller.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3, wherein the first security information is obtained using an intelligent platform management interface command or a shared memory interface.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4, wherein the secure phase of the startup ends when any code that is not cryptographically verified natively by the data processing system is executed as part of the startup.

### Claim 6 (depends on 2)

The computer-implemented method of claim 2, wherein the second security information is a second hash of the image of the specialized firmware.

### Claim 7 (depends on 6)

The computer-implemented method of claim 6, wherein the second hash is obtained by hashing an image of the specialized firmware obtained during the startup.

### Claim 8 (depends on 6)

The method of claim 6, wherein the determination is made by comparing the hash and the second hash, and any difference between the hash and the second hash indicating that the specialized firmware obtained during the startup is not valid.

### Claim 9 (depends on 2)

The method of claim 2, wherein the specialized firmware for the startup is obtained from the management controller or a trusted storage.

### Claim 10 (depends on 1)

The method of claim 1, wherein remediating the startup comprises at least one action selected from a group of actions consisting of:
halting the startup;
displaying an error with respect to the startup; and
performing a recovery for the data processing system.

### Claim 11 (depends on 1)

The method of claim 1, wherein the determination is made without use of keys or certificates.

### Claim 12 (depends on 1)

The method of claim 1, wherein identifying that the startup is the specialized startup comprises determining that firmware that is not compliant with a specification of a first type of firmware interface is being used for the startup instead of firmware that is compliant with the specification of the first type of firmware interface.

### Claim 13

A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause a data processing system to perform operations, the operations comprising:
identifying a startup of the data processing system;
during a secure phase of the startup, identifying that the startup is a specialized startup;
based on the startup being a specialized startup:
obtaining first security information prior to exiting the secure phase of the startup;
obtaining specialized firmware for the startup;
obtaining second security information for the specialized firmware; and
making a determination regarding whether the specialized firmware is valid using the first security information and the second security information;
in a first instance of the determination where the specialized firmware is valid:
handing off control of the data processing system to the specialized firmware to complete the startup;
in a second instance of the determination where the specialized firmware is not valid:
remediating the startup without using the specialized firmware to complete the startup.

### Claim 14 (depends on 13)

The non-transitory machine-readable medium of claim 13, wherein the first security information is a hash of an image of the specialized firmware hosted by a management controller of the data processing system, the management controller being an independently operating computing device that is physically installed within the data processing system.

### Claim 15 (depends on 14)

The non-transitory machine-readable medium of claim 14, wherein the first security information is obtained from the management controller.

### Claim 16 (depends on 15)

The non-transitory machine-readable medium of claim 15, wherein the first security information is obtained using an intelligent platform management interface command or a shared memory interface.

### Claim 17

A data processing system, comprising:
a management controller;
a processor; and
a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform operations, the operations comprising:
identifying a startup of the data processing system;
during a secure phase of the startup, identifying that the startup is a specialized startup;
based on the startup being a specialized startup:
obtaining first security information prior to exiting the secure phase of the startup;
obtaining specialized firmware for the startup;
obtaining second security information for the specialized firmware; and
making a determination regarding whether the specialized firmware is valid using the first security information and the second security information;
in a first instance of the determination where the specialized firmware is valid:
handing off control of the data processing system to the specialized firmware to complete the startup;
in a second instance of the determination where the specialized firmware is not valid:
remediating the startup without using the specialized firmware to complete the startup.

### Claim 18 (depends on 17)

The data processing system method of claim 17, wherein the first security information is a hash of an image of the specialized firmware hosted by the management controller, the management controller being an independently operating computing device that is physically installed within the data processing system.

### Claim 19 (depends on 18)

The data processing system of claim 18, wherein the first security information is obtained from the management controller.

### Claim 20 (depends on 19)

The data processing system of claim 19, wherein the first security information is obtained using an intelligent platform management interface command or a shared memory interface.
