IP Library › Granted Patent US 11,120,166
Granted Patent B1
US 11,120,166 · App. 16/823,151 · Granted Sep 14, 2021

Generation of a firmware configured for use in restricting the use of a firmware tool

Inventors: Stefano Righi (Lawrenceville, GA); Paul Anthony Rhea (Lawrenceville, GA)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F21/629H04L9/3247
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,120,166
App. No.
16/823,151
Granted
Sep 14, 2021
Kind
B1
Abstract

Technologies are provided for generation of firmware configured to restrict use of a firmware tool. Some embodiments include a computing system that can obtain firmware source code comprising a module configured to copy contents of a digitally signed binary file to an advanced configuration and power management interface (ACPI) table at runtime of a firmware. The computing system can generate a firmware image of the firmware, the firmware image comprising the module, a first firmware globally unique identifier (GUID), and a defined area storing digital content that remains unchanged upon a change to the firmware. The computing system also can obtain a binary file comprising a second firmware GUID, a firmware tool GUID, and a feature GUID, and can digitally sign the binary file using a private encryption key to generate the digitally signed binary file. The computing system can store the digitally signed binary file within the defined area.

Claims (29)

1. A computer-implemented method, comprising:

obtaining firmware source code that comprises a module configured to copy contents of a digitally signed binary file to an advanced configuration and power management interface (ACPI) table at runtime of a firmware;

generating, using the firmware source code, a firmware image of the firmware, the firmware image comprising the module, a first firmware globally unique identifier (GUID), and a defined area storing digital content that remains unchanged upon a change to the firmware;

obtaining a binary file comprising a second firmware GUID, a firmware tool GUID, and a feature GUID, wherein the firmware tool GUID comprises data uniquely identifying a firmware tool authorized to execute at runtime of the firmware, and wherein the feature GUID comprises data uniquely identifying a feature of the firmware tool;

digitally signing the binary file using a private encryption key to generate the digitally signed binary file; and

storing the digitally signed binary file within the defined area.

2. The computer-implemented method of claim 1 , further comprising storing the firmware image in a non-volatile memory device of a computing system.

3. The computer-implemented method of claim 1 , wherein the obtaining the firmware source code comprises generating the firmware source code by a computing system.

4. A computer-implemented method of claim 1 , wherein the obtaining the binary file comprises generating the binary file by a computing system.

5. A non-transitory computer-readable storage medium having encoded thereon computer-executable instructions that, when executed, cause the computing system to:

obtain firmware source code comprising a module configured to copy contents of a digitally signed binary file to an advanced configuration and power management interface (ACPI) table at runtime of a firmware;

generate, using the firmware source code, a firmware image of the firmware, the firmware image comprising the module, a first firmware globally unique identifier (GUID), and a defined area storing digital content that remains unchanged upon a change to the firmware;

obtain a binary file comprising a second firmware GUID, a firmware tool GUID, and a feature GUID, wherein the firmware tool GUID comprises data uniquely identifying a firmware tool authorized to execute at runtime of the firmware, and wherein the feature GUID comprises data uniquely identifying a feature of the firmware tool;

digitally sign the binary file using a private encryption key to generate the digitally signed binary file; and

store the digitally signed binary file within the defined area.

6. The non-transitory computer-readable storage medium of claim 5 , further having encoded thereon second computer-executable instructions that, when executed, cause the computing system to store the firmware image in a non-volatile memory device of a second computing system.

7. The non-transitory computer-readable storage medium of claim 5 , wherein obtaining the firmware source code comprises generating the firmware source code by the computing system.

8. The non-transitory computer-readable storage medium of claim 5 , wherein obtaining the binary file comprises generating the binary file by the computing system.

9. A computing system, comprising:

one or more processors; and

at least one memory device storing computer-executable instructions that, when executed by the one or more processors, cause the computing system to:

obtain firmware source code comprising a module configured to copy contents of a digitally signed binary file to an advanced configuration and power management interface (ACPI) table at runtime of a firmware;

generate, using the firmware source code, a firmware image of the firmware, the firmware image comprising the module, a first firmware globally unique identifier (GUID), and a defined area storing digital content that remains unchanged upon a change to the firmware;

obtain a binary file comprising a second firmware GUID, a firmware tool GUID, and a feature GUID, wherein the firmware tool GUID comprises data uniquely identifying a firmware tool authorized to execute at runtime of the firmware, and wherein the feature GUID comprises data uniquely identifying a feature of the firmware tool;

digitally sign the binary file using a private encryption key to generate the digitally signed binary file; and

store the digitally signed binary file within the defined area.

10. The computing system of claim 9 , the at least one memory device storing second computer-executable instructions that, when executed by the one or more processors, cause the computing system to store the firmware image in a non-volatile memory device of a second computing system.

11. The computing system of claim 9 , wherein obtaining the firmware source code comprises generating the firmware source code by the computing system.

12. The computing system of claim 9 , wherein obtaining the binary file comprises generating the binary file by the computing system.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS, RECORDED ON OCTOBER 23, 2024 AT REEL 069229 FRAME 0834 Recorded Aug 10, 2026
From: BAIN CAPITAL CREDIT, LP, AS COLLATERAL AGENT
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 076162/0879 →
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0948 →
SECURITY INTEREST Recorded Apr 30, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 067274/0834 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2020
From: RIGHI, STEFANO; RHEA, PAUL ANTHONY
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 053150/0697 →
Continuity (2)
Continuation 16278677 · Feb 18, 2019
Continuation 15661397 · Jul 27, 2017