Enterprise platform verification
First Claim
1. A client computing device comprising:
- one or more processors;
a memory; and
a trusted platform module (TPM) residing on a separate application-specific integrated circuit (ASIC) from the one or more processors and from the memory, the TPM storing;
an endorsement key (EK) physically embedded in the TPM;
an attestation identity key (AIK), the AIK being used to verify that at least one TPM-protected key different from the EK and different from the AIK is generated at the TPM and is non-migratable;
an enterprise machine key (EMK), the EMK being certified by the AIK, the EMK being uniquely associated with the client computing device, and the EMK being generated during enrollment of the client computing device with an enterprise and remaining active until a factory reset of the client computing device;
one or more enterprise user keys (EUKs), each EUK being certified by the AIK, each EUK being associated with the client computing device, and each EUK being associated with a user account of the client computing device and remaining active until the associated user account is removed from the client computing device;
the memory comprising a platform verification module, the platform verification module storing instructions for;
receiving, via an application server, a request for platform verification of the client computing device and processing the request; and
providing, in response to the request for platform verification, identifying information of the EMK to a platform verification server while foregoing providing the identifying information of the EMK to the application server.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for enterprise platform verification are provided. In some aspects, a computing device includes a trusted platform module (TPM). The TPM includes an endorsement key (EK) physically embedded in the TPM. The TPM includes an attestation identity key (AIK), the AIK being used to verify that at least one TPM-protected key different from the EK and different from the AIK is generated at the TPM and is non-migratable. The TPM includes an enterprise machine key (EMK), the EMK being certified by the AIK, the EMK being uniquely associated with the client computing device, and the EMK being generated during enrollment of the client computing device with an enterprise and remaining active until a factory reset of the client computing device.
52 Citations
20 Claims
-
1. A client computing device comprising:
-
one or more processors; a memory; and a trusted platform module (TPM) residing on a separate application-specific integrated circuit (ASIC) from the one or more processors and from the memory, the TPM storing; an endorsement key (EK) physically embedded in the TPM; an attestation identity key (AIK), the AIK being used to verify that at least one TPM-protected key different from the EK and different from the AIK is generated at the TPM and is non-migratable; an enterprise machine key (EMK), the EMK being certified by the AIK, the EMK being uniquely associated with the client computing device, and the EMK being generated during enrollment of the client computing device with an enterprise and remaining active until a factory reset of the client computing device; one or more enterprise user keys (EUKs), each EUK being certified by the AIK, each EUK being associated with the client computing device, and each EUK being associated with a user account of the client computing device and remaining active until the associated user account is removed from the client computing device; the memory comprising a platform verification module, the platform verification module storing instructions for; receiving, via an application server, a request for platform verification of the client computing device and processing the request; and providing, in response to the request for platform verification, identifying information of the EMK to a platform verification server while foregoing providing the identifying information of the EMK to the application server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method implemented at a platform verification server, the method comprising:
-
receiving, at the platform verification server and from an application server, a request for platform verification of a client computing device, the platform verification server being separate from the application server; transmitting, from the platform verification server to the client computing device, in response to the request for platform verification, a request that the client computing device provide identifying information of an enterprise machine key (EMK) of the client computing device to the platform verification server, wherein the client computing device comprises a trusted platform module (TPM) storing an endorsement key (EK), an attestation identity key (AIK), the EMK, and an enterprise user key (EUK), the EMK being certified by the AIK, the EUK being certified by the AIK and associated with a user account of the client computing device; receiving, at the platform verification server and from the client computing device, the identifying information of the EMK, wherein receiving of the identifying information of the EMK at the application server from the client computing device is avoided; verifying, using a certificate associated with the client computing device and stored at the platform verification server, whether the EMK of the client computing device is valid; providing, from the platform verification server to the application server, a direct indication that the platform verification of the client computing device is successful in a case where the EMK of the client computing device is valid; and providing, from the platform verification server to the application server, a direct indication that the platform verification of the client computing device is unsuccessful in a case where the EMK of the client computing device is invalid. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer-readable medium comprising instructions which, when executed by one or more computers, cause the one or more computers to implement a method, the method comprising:
-
receiving, at a platform verification server and from an application server, a request for platform verification of a client computing device, the platform verification server being separate from the application server; receiving, at the platform verification server and from the client computing device, identifying information of an enterprise machine key (EMK) of the client computing device, wherein receiving of the identifying information of the EMK at the application server from the client computing device is avoided, wherein the client computing device comprises a trusted platform module (TPM) storing an endorsement key (EK), an attestation identity key (AIK), the EMK, and an enterprise user key (EUK), the EMK being certified by the AIK, the EUK being certified by the AIK and associated with a user account of the client computing device; verifying, using a certificate associated with the client computing device and stored at the platform verification server, whether the EMK of the client computing device is valid; providing, from the platform verification server to the application server, a direct indication that the platform verification of the client computing device is successful in a case where the EMK of the client computing device is valid, while foregoing providing the identifying information of the EMK to the application server; and providing, from the platform verification server to the application server, a direct indication that the platform verification of the client computing device is unsuccessful in a case where the EMK of the client computing device is invalid, while foregoing providing the identifying information of the EMK to the application server.
-
Specification