IP Library Granted Patent US 8,856,941
Granted Patent B2
US 8,856,941 · App. 13/084,840 · Granted Oct 7, 2014

Staged control release in boot process

Inventors: Inhyok Cha (Yardley, PA); Yogendra C. Shah (Exton, PA); Lawrence Case (Austin, TX)
Assignee: InterDigital Patent Holdings, Inc.
G06F21/57H04W12/10H04W84/045
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 8,856,941
App. No.
13/084,840
Granted
Oct 7, 2014
Kind
B2
Abstract

Integrity validation of a network device may be performed. A network device comprising a secure hardware module, may receive a root key. The secure hardware module may also receive a first code measurement. The secure hardware module may provide a first key based on the root key and the first code measurement. The secure hardware module may receive a second code measurement and provide a second key based on the first key and the second code measurement. The release of keys based on code measurements may provide authentication in stages.

Claims (27)

1. A method to perform integrity validation of a network device, the method comprising:

receiving a first code integrity measurement of a first code stored in a memory of the network device;

generating a first key based on (1) a root key stored in a secure memory of the network device and (2) the first code integrity measurement, wherein the first key is valid when the first code integrity measurement is valid, wherein the first key relates to a first stage of trust associated with a first function of the network device, and wherein a valid first key is capable of being used by a first stakeholder to access the first function;

receiving a second code integrity measurement of a second code stored in the memory of the network device;

generating a second key based on (1) the first key and (2) the second code integrity measurement, wherein the second key is valid when the first code integrity measurement is valid and the second code integrity measurement is valid, wherein the second key relates to a second stage of trust associated with a second function, and wherein a valid second key is capable of being used by a second stakeholder to access the second function;

receiving a first nonce from the first stakeholder and a second nonce from the second stakeholder; and

sending a first signed message to the first stakeholder in response to the first nonce and a second signed message to the second stakeholder in response to the second nonce, wherein each of the first and second signed messages indicates an untrustworthy state, a partial trustworthy state, or a trustworthy state.

2. The method of claim 1 , further comprising preventing access to the first function when the first code integrity measurement is invalid.

3. The method of claim 1 , further comprising preventing access to the second function when the second code integrity measurement is invalid.

4. The method of claim 1 , further comprising providing a last valid credential when the partial trustworthy state is indicated, wherein the last valid credential includes a last valid key associated with a last valid code integrity measurement.

5. The method of claim 1 , wherein the first signed message further indicates a freshness of a first boot state and the second signed message further indicates a freshness of a second boot state, and wherein each of the first and second nonce is derived locally via at least one of a sequence counter or a date and time stamp function.

6. The method of claim 1 , wherein the root key is stored in the secure memory at a time of manufacture or a time of provisioning.

7. The method of claim 1 , wherein the secure memory is part of a secure hardware module and wherein the root key is not visible to software outside of the secure hardware module.

8. A network device, the network device comprising:

a secure hardware module for validating the integrity of a network device comprising a processor, wherein the secure hardware module:

receives a first code integrity measurement of first code stored in a memory of the network device;

generates a first key based on (1) a root key stored in a secure memory of the network device and (2) the first code integrity measurement, wherein the first key is valid when the first code integrity measurement is valid, and wherein the first key relates to a first stage of trust associated with a first function of the network device, and wherein a valid first key is capable of being used by a first stakeholder to access the first function;

receives a second code integrity measurement of a second code stored in the memory of the network device;

provides a second key based on (1) the first key and (2) the second code integrity measurement, wherein the second key is valid when the second code integrity measurement is valid, wherein the second key relates to a second stage of trust associated with a second function, and wherein a valid second key is capable of being used by a second stakeholder to access the second function;

receives a first nonce from the first stakeholder and a second nonce from the second stakeholder; and

sends a first signed message to the first stakeholder in response to the first nonce and a second signed message to the second stakeholder in response to the second nonce, wherein each of the first and second signed messages indicates an untrustworthy state, a partial trustworthy state, or a trustworthy state.

9. The network device of claim 8 , wherein the secure hardware module is further configured to prevent access to the first function when the first code integrity measurement is invalid.

10. The network device of claim 8 , wherein the secure hardware module is further configured to prevent access to the second function when the second code integrity measurement is invalid.

11. The network device of claim 8 , wherein the secure hardware module is further configured to provide a last valid credential when the partial trustworthy state is indicated, and wherein the last valid credential includes a last valid key associated with a last valid code integrity measurement.

12. The network device of claim 8 , wherein the first signed message further indicates a freshness of a first boot state and the second signed message further indicates a freshness of a second boot state, and wherein each of the first and second nonce is derived locally via at least one of a sequence counter or a date and time stamp function.

13. The network device of claim 8 , wherein the root key is stored in the secure memory at a time of manufacture or a time of provisioning.

14. The network device of claim 8 , wherein the secure memory is part of the secure hardware module, and wherein the root key is not visible to software outside of the secure hardware module.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2011
From: CHA, INHYOK; SHAH, YOGENDRA C.; CASE, LAWRENCE
To: INTERDIGITAL PATENT HOLDINGS, INC.
Reel/Frame 027291/0184 →
Continuity (3)
Provisional Application 61323248 · Apr 12, 2010
Provisional Application 61357474 · Jun 22, 2010
Related Publication 20110302638A1 · Dec 8, 2011