IP Library Granted Patent US 9,448,950
Granted Patent B2
US 9,448,950 · App. 14/140,254 · Granted Sep 20, 2016

Using authenticated manifests to enable external certification of multi-processor platforms

Inventors: Vincent R. Scarlata (Beaverton, OR); Simon P. Johnson (Beaverton, OR); Vladimir Beker (Ariel, IL); Jesse Walker (Portland, OR); Carlos V. Rozas (Portland, OR); Amy L. Santoni (Scottsdale, AZ); Ittai Anati (Haifa, IL); Raghunandan Makaram (Northborough, MA); Francis X. McKeen (Portland, OR); Uday R. Savagaonkar (Portland, OR)
Assignee: Intel Corporation
G06F12/1466G06F21/74G06F2212/1052
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 9,448,950
App. No.
14/140,254
Granted
Sep 20, 2016
Kind
B2
Abstract

Systems and methods for secure delivery of output surface bitmaps to a display engine. An example processing system comprises: an architecturally protected memory; and a plurality of processing devices communicatively coupled to the architecturally protected memory, each processing device comprising a first processing logic to implement an architecturally-protected execution environment by performing at least one of: executing instructions residing in the architecturally protected memory, or preventing an unauthorized access to the architecturally protected memory; wherein each processing device further comprises a second processing logic to establish a secure communication channel with a second processing device of the processing system, employ the secure communication channel to synchronize a platform identity key representing the processing system, and transmit a platform manifest comprising the platform identity key to a certification system.

Claims (41)

1. A processing system, comprising:

an architecturally protected memory represented by an enclave page cache (EPC); and

a plurality of processing devices communicatively coupled to the architecturally protected memory, wherein a first processing device of the processing system is to:

establish, using the architecturally-protected memory, a secure communication channel with a second processing device of the processing system,

employ the secure communication channel to synchronize a platform identity key representing the processing system,

transmit to a certification system a platform manifest comprising the platform identity key and a plurality of processor identity keys and

transmit, to the certification system, a request to add a third processing device to the processing system.

2. The processing system of claim 1 , wherein the first processing device is further to implement a secure enclave execution environment.

3. The processing system of claim 1 , wherein the first processing device is further to transmit the platform identity key to a provisioning system.

4. The processing system of claim 1 , wherein the first processing device is further to store the platform manifest in a non-volatile memory.

5. The processing system of claim 1 , wherein synchronizing the platform identity key comprises exchanging processor identity keys with the second processing device.

6. The processing system of claim 1 , wherein the first processing device is further to store, in a non-volatile memory, a key blob including the platform identity key and identity keys of the plurality of processing devices.

7. A method, comprising:

implementing, by a first processing device of a processing system, a secure enclave execution environment;

establishing, using the secure enclave execution environment, a secure communication channel with a second processing device of the processing system;

synchronizing, over the secure communication channel, a platform identity key representing the processing system;

transmitting, to a certification system, a platform manifest comprising the platform identity key and a processor identity key; and

transmitting, to the certification system, a request to add a third processing device to the processing system.

8. The method of claim 7 , further comprising transmitting the platform manifest to a provisioning system.

9. The method of claim 7 , further comprising storing the platform manifest in a non-volatile memory.

10. The method of claim 7 , wherein establishing the secure communication channel comprises implementing a non-authenticated key negotiation protocol.

11. The method of claim 7 , wherein synchronizing the platform identity key comprises exchanging processor identity keys with the second processing device.

12. The method of claim 7 , wherein synchronizing the platform identity key comprises designating the first processing device as a master processor.

13. The method of claim 12 , further comprising generating the platform identity key by the master processor.

14. The method of claim 7 , further comprising:

storing, in a non-volatile memory, a key blob including the platform identity key and identity keys of two or more processing devices comprised by the processing system.

15. The method of claim 14 , further comprising:

retrieving, upon detecting a reboot of the processing system, the key blob from the non-volatile memory.

16. A computer-readable non-transitory storage medium comprising executable instructions that, when executed by a processing system, cause the processing system to perform operations, comprising:

implementing, by a first processing device of the processing system, a secure enclave execution environment;

establishing, using the secure enclave execution environment, a secure communication channel with a second processing device of the processing system;

synchronizing, over the secure communication channel, a platform identity key representing the processing system;

transmitting, to a certification system, a platform manifest comprising the platform identity key and a processor identity key; and

transmitting, to the certification system, a request to add a third processing device to the processing system.

17. The computer-readable non-transitory storage medium of claim 16 , further comprising executable instructions to cause the processing system to transmit the platform manifest to a provisioning system.

18. The computer-readable non-transitory storage medium of claim 16 , further comprising executable instructions to cause the processing system to store the platform manifest in a non-volatile memory.

19. The computer-readable non-transitory storage medium of claim 16 , wherein establishing the secure communication channel comprises implementing a non-authenticated key negotiation protocol.

20. The computer-readable non-transitory storage medium of claim 16 , wherein synchronizing the platform identity key comprises exchanging processor identity keys with the second processing device.

21. The computer-readable non-transitory storage medium of claim 16 , wherein synchronizing the platform identity key comprises designating the first processing device as a master processor.

22. The computer-readable non-transitory storage medium of claim 21 , further comprising executable instructions to cause the processing system to generate the platform identity key by the master processor.

23. The computer-readable non-transitory storage medium of claim 16 , further comprising executable instructions to cause the processing system to store, in a non-volatile memory, a key blob including the platform identity key and identity keys of two or more processing devices comprised by the processing system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2015
From: SCARLATA, VINCENT R.; JOHNSON, SIMON P.; BEKER, VLADIMIR; WALKER, JESSE; ROZAS, CARLOS V.; SANTONI, AMY L.; ANATI, ITTAI; MAKARAM, RAGHUNANDAN; MCKEEN, FRANCIS X.; SAVAGAONKAR, UDAY R.
To: INTEL CORPORATION
Reel/Frame 035439/0494 →
Continuity (1)
Related Publication 20150178226A1 · Jun 25, 2015