Hardware-based device authentication
First Claim
1. A device comprising:
- a microcontroller comprising a management controller;
secured memory; and
a network interface;
wherein the management controller is configured to;
identify a domain identifier of a first domain of a plurality of domains, the domain identifier included in a domain certificate received from the first domain;
identify a first permanent hardware identifier set as a fuse key value embedded in hardware of the device during fabrication, the first permanent hardware identifier being unique and private to the device;
identify a plurality of unique second private hardware identifiers stored in the secured memory, each derived from the first permanent hardware identifier for a corresponding one of a plurality of different services of the first domain;
derive a plurality of hardware-based root identifiers from the plurality of unique second private hardware identifiers respectively, wherein resetting and replacing each root identifier by a user disassociates the device from a corresponding user profile maintained by the first domain;
store the plurality of root identifiers in the secured memory;
derive a plurality of secure identifiers for a pairing of the device and the first domain based on the plurality of root identifiers respectively and the domain identifier, each of the plurality of secure identifiers being different and corresponding to one of the plurality of unique second private hardware identifiers;
cause a secure identifier of the plurality of secure identifiers to be sent over a secured channel to a domain computing device associated with the first domain;
responsive to a request received from the first domain, identify an initial set of security posture data for the device;
cause the initial set of security posture data for the device to be provided to the domain computing device over the secured channel;
identify an additional set of security posture data for the device based on a first interaction between the device and the first domain; and
cause the additional set of security posture data for the device to be provided to the domain computing device over the secured channel; and
wherein the network interface is configured to transmit the secure identifier, the initial set of security posture data, and the additional set of security posture data over the secured channel to the domain computing device.
9 Assignments
0 Petitions
Accused Products
Abstract
An opportunity for a computing device to participate in a secure session with a particular domain is identified. A domain identifier of the particular domain is received and a secured microcontroller of the computing device is used to identify a secured, persistent hardware identifier of the computing device stored in secured memory of the computing device. A secure identifier is derived for a pairing of the computing device and the particular domain based on the hardware identifier and domain identifier of the particular domain and the secure identifier is transmitted over a secured channel to the particular domain. The particular domain can verify identity of the computing device from the secure identifier and apply security policies to transactions involving the computing device and the particular domain based at least in part on the secure identifier.
89 Citations
20 Claims
-
1. A device comprising:
-
a microcontroller comprising a management controller; secured memory; and a network interface; wherein the management controller is configured to; identify a domain identifier of a first domain of a plurality of domains, the domain identifier included in a domain certificate received from the first domain; identify a first permanent hardware identifier set as a fuse key value embedded in hardware of the device during fabrication, the first permanent hardware identifier being unique and private to the device; identify a plurality of unique second private hardware identifiers stored in the secured memory, each derived from the first permanent hardware identifier for a corresponding one of a plurality of different services of the first domain; derive a plurality of hardware-based root identifiers from the plurality of unique second private hardware identifiers respectively, wherein resetting and replacing each root identifier by a user disassociates the device from a corresponding user profile maintained by the first domain; store the plurality of root identifiers in the secured memory; derive a plurality of secure identifiers for a pairing of the device and the first domain based on the plurality of root identifiers respectively and the domain identifier, each of the plurality of secure identifiers being different and corresponding to one of the plurality of unique second private hardware identifiers; cause a secure identifier of the plurality of secure identifiers to be sent over a secured channel to a domain computing device associated with the first domain; responsive to a request received from the first domain, identify an initial set of security posture data for the device; cause the initial set of security posture data for the device to be provided to the domain computing device over the secured channel; identify an additional set of security posture data for the device based on a first interaction between the device and the first domain; and cause the additional set of security posture data for the device to be provided to the domain computing device over the secured channel; and wherein the network interface is configured to transmit the secure identifier, the initial set of security posture data, and the additional set of security posture data over the secured channel to the domain computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. At least one non-transitory machine accessible storage medium having instructions stored thereon, the instructions when executed on a device, cause the device to:
-
detect that the device has entered a first domain; receive a domain identifier of the first domain over a network associated with the first domain, the domain identifier included in a domain certificate; identify, using a secured microcontroller of the device, a first permanent hardware identifier set as a fuse key value embedded in hardware of the device during fabrication, the first permanent hardware identifier being unique and private to the device; identify, using the secured microcontroller, a plurality of unique second private hardware identifiers of the device stored in a non-volatile memory of the device, each derived from the first permanent hardware identifier for a corresponding one of a plurality of different services of the first domain; derive, using the secured microcontroller, a plurality of hardware-based root identifiers from the plurality of unique second private hardware identifiers respectively, wherein resetting and replacing each root identifier by a user disassociates the device from a corresponding user profile maintained by the first domain; store the plurality of root identifiers in the non-volatile memory; derive, using the secured microcontroller, a plurality of secure identifiers for a pairing of the device and the first domain based on the plurality of root identifiers respectively and the domain identifier of the first domain, each of the plurality of secure identifiers being different and corresponding to one of the plurality of unique second private hardware identifiers; cause a secure identifier of the plurality of secure identifiers to be sent over a secured channel to a domain computing device associated with the first domain; responsive to a request received from the first domain, identify an initial set of security posture data for the device; cause the initial set of security posture data for the device to be provided to the domain computing device over the secured channel; identify an additional set of security posture data for the device based on a first interaction between the first domain and the device; and cause the additional set of security posture data for the device to be provided to the domain computing device over the secured channel. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. At least one non-transitory machine accessible storage medium having instructions stored thereon, the instructions when executed on a device, cause the device to:
-
identify, using a secured microcontroller of the device, a first permanent hardware identifier set as a fuse key value embedded in hardware of the device during fabrication, the first permanent hardware identifier being unique and private to the device; derive, using the secured microcontroller, a plurality of unique second private hardware identifiers of the device, each derived from the first permanent hardware identifier for a corresponding one of a plurality of different services of a first domain; store the plurality of unique second private hardware identifiers in a non-volatile memory of the device; derive, using the secured microcontroller, a plurality of hardware-based root identifiers from the plurality of unique second private hardware identifiers respectively, wherein resetting and replacing each root identifier by a user disassociates the device from a corresponding user profile maintained by the first domain; store the plurality of root identifiers in the non-volatile memory; receive a domain identifier of the first domain in a domain certificate of the first domain; derive, using the secured microcontroller, a plurality of secure identifiers for a pairing of the device and the first domain based on the plurality of root identifiers respectively and the domain identifier of the first domain, each of the plurality of secure identifiers being different and corresponding to one of the plurality of unique second private hardware identifiers; cause, using the secured microcontroller, a secure identifier of the plurality of secure identifiers to be sent over a secured channel to a domain computing device of the first domain; responsive to a request received from the first domain, identify, using the secured microcontroller, an initial set of security posture data for the device; cause, using the secured microcontroller, the initial set of security posture data for the device to be provided to the domain computing device over the secured channel; identify, using the secured microcontroller, an additional set of security posture data for the device based on a first interaction between the first domain and the device; and cause, using the secured microcontroller, the additional set of security posture data for the device to be provided to the domain computing device over the secured channel. - View Dependent Claims (19, 20)
-
Specification