Abstract:
A technique to enable secure application and data integrity within a computer system. In one embodiment, one or more secure enclaves are established in which an application and data may be stored and executed.
Abstract:
A processor has multiple hardware threads and an enclave page cache. The processor has a first instruction to prevent new address translations being created. This instruction takes the address of a page in a secure enclave as a as a parameter. It prevents new entries being made in a translation look-aside buffer for that page. The processor has a second instruction to record the threads accessing an enclave. This instruction specifies the enclave identifier as a parameter and records the number of hardware threads accessing the enclave. The number is decremented whenever a thread exits the enclave. The processor has a third instruction to evict a page from an enclave page cache. The instruction takes the page address to evict as a parameter. It writes the page back to memory if the number of threads accessing the enclave is zero.
Abstract:
Embodiments of an invention for measuring a secure enclave are disclosed. In one embodiment, a processor includes an instruction unit and an execution unit. The instruction unit is to receive a first, a second, and a third instruction. The execution unit is to execute the first, the second, and the third instruction. Execution of the first instruction includes initializing a measurement field in a control structure of a secure enclave with an initial value. Execution of the second instruction includes adding a region to the secure enclave. Execution of the third instruction includes measuring a subregion of the region.
Abstract:
A processor has an enclave page cache to cache data from a secure enclave. An instruction (ETRACK) causes it to record the number of hardware threads accessing the data in the cache corresponding to the secure enclave. This may be the threads, which are executing code in the secure enclave. When any of the threads exits the secure enclave, the number is decremented. A second instruction (EWB) may cause the data in the cache to be evicted and written back to main memory when the number reaches zero. A third instruction (EBLOCK) may prevent the creation of new address translation entries for the pages in the cache. The data may be encrypted, when written to main memory, and decrypted, when read from main memory.
Abstract:
In an embodiment, a method is provided. The method of this embodiment provides monitoring on a system flow statistics to identify one or more non-compliant traffic flows on the system, each of the one or more non-compliant traffic flows having packets; assigning a tag to each of the one or more non-compliant traffic flows, each of the tags corresponding to one of at least one congestion management policy; and applying one of the tags to each of the packets associated with any of the non-compliant traffic flows.
Abstract:
Ausführungsformen enthalten Systeme, Verfahren, computerlesbare Medien und Vorrichtungen, die konfiguriert sind, für einen ersten Prozessor einer Plattform einen Plattform-Root-Schlüssel zu generieren; eine Datenstruktur zum Einkapseln des Plattform-Root-Schlüssels zu erstellen, wobei die Datenstruktur einen Plattformbereitstellungsschlüssel und eine Identifizierung eines Registrierungsdienstes umfasst; und auf einer sicheren Verbindung die Datenstruktur zum Registrierungsdienst zu senden, um den Plattform-Root-Schlüssel für den ersten Prozessor der Plattform zu registrieren. Ausführungsformen enthalten Systeme, Verfahren, computerlesbare Medien und Vorrichtungen, die konfiguriert sind, ein Vorrichtungszertifikat zu speichern, das von einer Schlüsselgenerierungseinrichtung empfangen wird; ein Verzeichnis von einer Plattform zu empfangen, wobei das Verzeichnis eine Identifizierung eines Prozessors umfasst, der mit der Plattform verknüpft ist; und den Prozessor unter Verwendung eines gespeicherten Vorrichtungszertifikats zu validieren.