Abstract:
Befehle und Logik unterbrechen Paging in Secure Enclaves und nehmen es wieder auf. Ausführungsformen beinhalten Befehle, spezifizieren Seitenadressen, die einer Secure Enclave zugeordnet sind, wobei die Befehle zur Ausführung durch einen Prozessor decodiert werden. Der Prozessor enthält einen Enclave-Seitencache, um sichere Daten in einer ersten Cachezeile und in einer letzten Cachezeile für eine Seite zu speichern, die der Seitenadresse entspricht. Ein Seitenzustand wird für die Seite aus der ersten oder der letzten Cachezeile gelesen, wenn ein Eintrag in einem Enclave-Seitencache-Mapping für die Seite angibt, dass lediglich eine Teilseite im Enclave-Seitencache gespeichert wird. Der Eintrag für eine Teilseite kann gesetzt werden, und ein neuer Seitenzustand kann in der ersten Cachezeile beim Zurückschreiben oder in der letzten Cachezeile beim Laden der Seite aufgezeichnet werden, wenn die Befehlsausführung unterbrochen wird. Somit kann das Zurückschreiben oder Laden wieder aufgenommen werden.
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:
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 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 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 computer system (10) includes a storage device (12) which accepts one or more removable storage mediums (14). The storage device (12) could be a floppy disk drive, a CD-ROM drive, a dvd drive unit or any other data storage unit. The data on the storage medium (14) is accessed by the storage reader device (16) by means of the key module (18). The key module (18) verifies that the storage device reader device (16) is authentic and that access to the digital content is allowed. The protected data on the storage media (14) are encrypted using a public key of public key/private key pair.
Abstract:
A method and apparatus to provide cryptographic integrity checks and replay protection to protect against hardware attacks on system memory is provided. A mode of operation for block ciphers enhances the standard XTS-AES mode of operation to perform memory encryption by extending a tweak to include a “time stamp” indicator. A tree-based replay protection scheme uses standard XTS-AES to encrypt contents of a cache line in the system memory. A Message-Authentication Code (MAC) for the cache line is encrypted using enhanced XTS-AES and a “time stamp” indicator associated with the cache line. The “time stamp indicator” is stored in a processor.
Abstract:
Datenintegritätslogik kann von einem Prozessor ausgeführt werden, um unter Verwendung eines hardwarebasierten Geheimnisses einen Datenintegritätscode zu erstellen. Eine Containerverwaltung, die vom Prozessor ausführbar ist, erstellt einen gesicherten Container, der Berichterstellungslogik enthält, die Messwerte des gesicherten Containers ermittelt, einen Bericht in Übereinstimmung mit einem definierten Berichtsformat erstellt und eine Sequenzanforderung sendet, die den Bericht enthält. Das definierte Berichtsformat enthält ein Feld, um die Messwerte aufzunehmen, und ein Feld, um den Datenintegritätscode aufzunehmen, und das Berichtsformat ist mit einer Verwendung durch einen beliebigen einer Vielzahl von verschiedenen Typen von Sequenzerstellungseinheiten kompatibel.