IP Library Granted Patent US 11,615,168
Granted Patent B2
US 11,615,168 · App. 17/080,900 · Granted Mar 28, 2023

Method and system for generating and verifying licenses with multiple signatures

Inventors: Jason Matthew Young (Round Rock, TX); Marshal F. Savage (Austin, TX)
Assignee: Dell Products L.P.
G06F21/105G06F8/61G06F21/64H04L9/0825H04L9/3263G06F2221/0773G06Q2220/10G06Q2220/18
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,615,168
App. No.
17/080,900
Granted
Mar 28, 2023
Kind
B2
Abstract

A method for verifying licenses is performed by a legacy management controller (LMC) and a non-legacy management controller (NLMC). The method includes obtaining, by the LMC, a first license installation request and a license, wherein the license comprises license data and a plurality of signatures; in response to the first license installation request: making a first determination, by the LMC, that a first signature of the plurality of signatures is valid; in response to the first determination: installing, by the LMC, the license on the LMC; obtaining, by the NLMC, a second license installation request and the license; in response to the second license installation request: making a second determination, by the NLMC, that a second signature of the plurality of signatures is valid; and in response to the second determination: installing, by the NLMC, the license on the NLMC.

Claims (75)

1. A method for verifying licenses, the method comprising:

obtaining, by a legacy management controller, a first license installation request and a license, wherein the license comprises license data and a plurality of signatures;

in response to the first license installation request:

making a first determination, by the legacy management controller, that a first signature of the plurality of signatures is valid, wherein the validation of the first signature is performed using a legacy management controller public certificate associated with the legacy management controller;

in response to the first determination:

installing, by the legacy management controller, the license on the legacy management controller;

obtaining, by a non-legacy management controller, a second license installation request and the license;

in response to the second license installation request:

making a second determination, by the non-legacy management controller, that a second signature of the plurality of signatures is valid, wherein the validation of the second signature is performed using a non-legacy management controller public certificate associated with the non-legacy management controller; and

in response to the second determination:

installing, by the non-legacy management controller, the license on the non-legacy management controller,

wherein the plurality of signatures is maintained in a data structure that maintains the plurality of signatures in an ordered sequence, wherein the first signature is in a first position in the ordered sequence, wherein the legacy management controller is configured to only perform a validation on a signature in the first position in the ordered sequence, wherein the legacy management controller is at least one circuity.

2. The method of claim 1 , wherein making the first determination comprises:

identifying, by the legacy management controller, the first signature of the plurality of signatures.

3. The method of claim 1 , wherein making the second determination comprises:

identifying, by the non-legacy management controller, the first signature of the plurality of signatures, wherein the first signature is in a first position in an ordered sequence;

generating, by the non-legacy management controller, a signature using the non-legacy management controller public certificate;

making a third determination, by the non-legacy management controller, that the first signature does not match the generated signature;

in response to the third determination: making a fourth determination, by the non-legacy management controller, that the license includes another signature; and

in response to the fourth determination: selecting, by the non-legacy management controller, the second signature of the plurality of signatures, wherein the second signature is in a second position in the ordered sequence.

4. The method of claim 1 , further comprising:

prior to obtaining the first license installation request; obtaining, by a license generator, a license generation request associated with management controllers, wherein the management controllers comprise the legacy management controller and the non-legacy management controller;

in response to obtaining the license generation request:

obtaining a legacy management controller private key associated with the legacy management controller and a non-legacy management controller private key associated with the non-legacy management controller from a certificate authority;

generating the license using legacy management controller metadata private key, non-legacy management metadata key, and the license generation request;

signing the license using the legacy management controller private key and the non-legacy management controller private key;

initiating, after signing, license installation on the management controllers; and

deleting the legacy management controller private key and the non-legacy management controller private key.

5. The method of claim 4 , wherein the legacy management controller private key is associated with the legacy management controller public certificate and the non-legacy management controller private key is associated with the non-legacy management controller public certificate.

6. A system, comprising:

a legacy management controller comprising at least one circuitry configured to:

obtain a first license installation request and a license, wherein the license comprises license data and a plurality of signatures;

in response to the first license installation request:

make a first determination that a first signature of the plurality of signatures is valid, wherein the validation of the first signature is performed using a legacy management controller public certificate associated with the legacy management controller;

in response to the first determination:

install the license on the legacy management controller; and

a non-legacy management controller comprising at least one circuitry configured to:

obtain, a second license installation request and the license;

in response to the second license installation request:

make a second determination that a second signature of the plurality of signatures is valid, wherein the validation of the second signature is performed using a non-legacy management controller public certificate associated with the non-legacy management controller; and

in response to the second determination:

install the license on the non-legacy management controller,

wherein the plurality of signatures is maintained in a data structure that maintains the plurality of signatures in an ordered sequence, wherein the first signature is in a first position in the ordered sequence, wherein the legacy management controller is configured to only perform a validation on a signature in the first position in the ordered sequence.

7. The system of claim 6 , wherein making the first determination comprises:

identifying the first signature of the plurality of signatures.

8. The system of claim 6 , wherein making the second determination comprises:

identifying the first signature of the plurality of signatures, wherein the first signature is in a first position in an ordered sequence;

generating a signature using the non-legacy management controller public certificate;

making a third determination that the first signature does not match the generated signature;

in response to the third determination:

making a fourth determination that the license includes another signature; and

in response to the fourth determination: selecting the second signature of the plurality of signatures, wherein the second signature is in a second position in the ordered sequence.

9. The system of claim 6 , further comprising:

a license generator comprising at least one circuitry configured to:

obtain a license generation request associated with management controllers, wherein the management controllers comprise the legacy management controller and the non-legacy management controller;

in response to obtaining the license generation request:

obtain a legacy management controller private certificate associated with the legacy management controller and a non-legacy management controller private certificate associated with the non-legacy management controller from a certificate authority;

generate the license using the legacy management controller private certificate, the non-legacy management controller private certificate, and the license generation request;

sign the license using the legacy management controller private certificate and the non-legacy management controller private certificate;

initiate, after signing, license installation on the management controllers; and

deleting the legacy management controller private key and the non-legacy management controller private key.

10. The system of claim 9 , wherein the legacy management controller private key is associated with the legacy management controller public certificate and the non-legacy management controller private key is associated with the non-legacy management controller public certificate.

11. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor causes the computer processor to perform a method for verifying licenses, the method comprising:

obtaining a license installation request and the license, wherein the license comprises license data and a plurality of signatures;

in response to the license installation request:

making a determination that a first signature of the plurality of signatures is not valid using a non-legacy management controller public certificate associated with a non-legacy management controller wherein the determination of the validity of the first signature is performed by generating a signature using a public key of the non-legacy management controller in the public certificate and comparing the generated signature with the first signature;

making a determination that a second signature of the plurality of signatures is valid, wherein the validation of the second signature is performed using the non-legacy management controller public certificate associated with the non-legacy management controller wherein the determination of the validity of the second signature is performed by comparing the generated signature with the second signature; and

in response to the second determination:

installing the license on the non-legacy management controller,

wherein the plurality of signatures is maintained in a data structure that maintains the plurality of signatures in an ordered sequence, wherein the first signature is in a first position in the ordered sequence.

12. The non-transitory computer readable medium of claim 11 , wherein making the determination comprises: identifying, by the non-legacy management controller, the first signature of the plurality of signatures.

13. The non-transitory computer readable medium of claim 11 , wherein making the determination further comprises:

identifying the first signature of the plurality of signatures, wherein the first signature is in a first position in an ordered sequence.

14. The non-transitory computer readable medium of claim 13 , wherein making the second determination comprises: selecting, by the non-legacy management controller, the second signature of the plurality of signatures, wherein the second signature is in a second position in the ordered sequence.

15. The non-transitory computer readable medium of claim 11 , wherein a first signature of the plurality of signatures is signed by a legacy management controller private key and wherein the second signature of the plurality of signatures is signed by a non-legacy management controller private key.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 27, 2020
From: YOUNG, JASON MATTHEW; SAVAGE, MARSHAL F.
To: DELL PRODUCTS LP
Reel/Frame 054185/0763 →