Abstract:
A server, processing device and/or processor includes a processing core and a memory controller, operatively coupled to the processing core, to access data in an off-chip memory. A memory encryption engine (MEE) may be operatively coupled to the memory controller and the off-chip memory. The MEE may store non-MEE metadata bits within a modified version line corresponding to ones of a plurality of data lines stored in a protected region of the offchip memory, compute an embedded message authentication code (eMAC) using the modified version line, and detect an attempt to modify one of the non-MEE metadata bits by using the eMAC within a MEE tree walk to authenticate access to the plurality of data lines. The non-MEE metadata bits may store coherence bits that track changes to a cache line in a remote socket, poison bits that track error containment within the data lines, and possibly other metadata bits.
Abstract:
Technologien für sicheren E/A-Datentransfer umfassen eine Datenverarbeitungsvorrichtung mit einem Prozessor und einem Beschleuniger. Der Prozessor und der Beschleuniger umfassen jeweils eine Speicherverschlüsselungs-Engine. Die Datenverarbeitungsvorrichtung konfiguriert beide Speicherverschlüsselungs-Engines mit einem geteilten Verschlüsselungsschlüssel und transferiert verschlüsselte Daten von einer Quellenkomponente über eine E/A-Verbindung zu einer Zielkomponente. Die Quelle kann der Prozessor und das Ziel der Beschleuniger sein oder umgekehrt. Die Datenverarbeitungsvorrichtung kann eine kryptografische Operation mit einer der Speicherverschlüsselungs-Engines ausführen und die andere Speicherverschlüsselungs-Engine umgehen. Die Datenverarbeitungsvorrichtung kann verschlüsselte Daten aus einem Speicher der Quelle lesen, die Quellen-Speicherverschlüsselungs-Engine umgehen und die verschlüsselten Daten zu dem Ziel transferieren. Das Ziel kann verschlüsselte Daten empfangen, die Ziel-Speicherverschlüsselungs-Engine umgehen und die verschlüsselten Daten in einem Speicher des Ziels speichern. Es werden andere Ausführungsformen beschrieben und beansprucht.
Abstract:
In einer Ausführungsform ist eine kryptographische Schaltung dazu eingerichtet, in Reaktion auf eine Leseanforderung mit einer Speicheradresse von einem ersten Agenten, eine Datenzeile mit zumindest einem verschlüsselten Abschnitt aus einem Speicher zu empfangen, eine Schlüsselkennung für einen Schlüssel des ersten Agenten aus der Datenzeile zu erhalten, den Schlüssel unter Verwendung der Schlüsselkennung zu erhalten, den zumindest verschlüsselten Abschnitt der Datenzeile unter Verwendung des Schlüssels zu entschlüsseln, und entschlüsselte Daten des zumindest verschlüsselten Abschnitts der Datenzeile an den ersten Agenten zu senden. Weitere Ausführungsformen werden beschrieben und beansprucht.
Abstract:
Embodiments of an invention for an interface between a device and a secure processing environment are disclosed. In one embodiment, a system includes a processor, a device, and an interface plug-in. The processor includes an instruction unit and an execution unit. The instruction unit is to receive an instruction to create a secure processing environment. The execution unit is to execute an application in the secure processing environment. The device is to execute a workload for the application. The interface plug-in is to provide an interface for the device to enter the secure processing environment to execute the workload.
Abstract:
Secure memory repartitioning technologies are described. A processor includes a processor core and a memory controller coupled between the processor core and main memory. The main memory includes a memory range including a section of convertible pages that are convertible to secure pages or non-secure pages. The processor core, in response to a page conversion instruction, is to determine from the instruction a convertible page in the memory range to be converted and convert the convertible page to be at least one of a secure page or a non-secure page. The memory range may also include a hardware reserved section that is convertible in response to a section conversion instruction.
Abstract:
Bei einer Ausführungsform umfasst eine Vorrichtung einen Kern zum Ausführen von Anweisungen, wobei der Kern als Reaktion auf eine erste Anweisung eine verschlüsselte Binärdatei eines Anforderers von einem Quellenort erhalten und die verschlüsselte Binärdatei an einem Zielort speichern soll. Die Vorrichtung kann ferner eine mit dem Kern gekoppelte Speicherausführungsschaltung umfassen, die als Reaktion auf eine Anforderung vom Kern und auf der Basis der ersten Anweisung mindestens einen Integritätswert für die Binärdatei erzeugen und den mindestens einen Integritätswert in Assoziation mit der Binärdatei speichern soll.
Abstract:
Es werden Techniken beschrieben, um eine kryptografische Speicherisolierung mit geringem Overhead bereitzustellen, um Angriffsschwachstellen in einer virtualisierten Mehrbenutzer-Rechenumgebung zu mindern. Speicherlese- und Speicherschreiboperationen für Zieldaten, wobei jede Operation über einen Befehl initiiert wird, der mit einer bestimmten virtuellen Maschine (VM) assoziiert ist, schließen die Generierung und/oder Validierung eines Nachrichtenauthentifizierungscodes ein, der wenigstens auf einem VM-spezifischen kryptografischen Schlüssel und einer physikalischen Speicheradresse der Zieldaten basiert. Derartige Operationen können ferner das Senden des generierten Nachrichtenauthentifizierungscodes über eine Vielzahl von Zusatzbits beinhalten, die innerhalb einer Datenzeile integriert sind, die die Zieldaten einschließt. Im Falle eines Validierungsfehlers können ein oder mehrere Fehlercodes generiert und verschiedenen Entitäten der Vertrauensdomänenarchitektur basierend auf einem Betriebsmodus der assoziierten virtuellen Maschine bereitgestellt werden.
Abstract:
In einer öffentlichen Cloud-Umgebung wird jede Arbeitslast eines Verbrauchers/Gasts in einem Serverspeicher eines Cloud-Dienst-Anbieters (Cloud Service Provider, CSP) unter Verwendung eines vom Verbraucher bereitgestellten Schlüssels, der der Arbeitslastverwaltungssoftware des CSP nicht bekannt ist, verschlüsselt. Ein verschlüsseltes Verbraucher-/Gastarbeitslastbild wird in den Serverspeicher des CSP an einem durch die Arbeitslastverwaltungssoftware des CSP spezifizierten Speicherort geladen. Basierend auf dem vom CSP bestimmten Speicherort bestimmt die Gastarbeitslast erwartete physische Hardwareadressen, in die Speicherabbildungsstrukturen und andere Typen von Verbraucherdaten geladen werden sollen. Diese erwarteten physischen Hardwareadressen werden durch die Gastarbeitslast in einer Speicherinhaberschaftstabelle (Memory Ownership Table, MOT) spezifiziert, die verwendet wird, um zu überprüfen, dass nachfolgende vom CSP bestimmte Speicherabbildungen wie erwartet sind. Speicherinhaberschaftstabelleneinträge können auch durch den vom Verbraucher bereitgestellten Schlüssel, der dem CSP nicht bekannt ist, verschlüsselt werden.
Abstract:
Lösungen für sicheren Speicherzugriff in einer Computerplattform, die eine Mehrfachschlüssel-Verschlüsselungs- (MKE-) Engine als Teil der Speicherschnittstelle zwischen Prozessorkern(en) und Arbeitsspeicher einer Computerplattform umfasst. Der bzw. die Speicherkern(e) führen Arbeitslasten aus, wobei jede davon ihr zugewiesene Teile eines Arbeitsspeichers verwendet. Die MKE-Engine führt Schlüssel-basierte kryptographische Operationen auf Daten aus, um Teile eines Arbeitsspeichers von Arbeitslasten zu isolieren, denen diese Teile eines Arbeitsspeichers nicht zugewiesen sind. Auf einen Schlüssel-Mapping-Datenspeicher ist durch die MKE-Engine zugreifbar und dieser umfasst Zuordnungen zwischen Identifikatoren der Teile eines Arbeitsspeichers sowie entsprechenden Schlüsselidentifikationsdaten, aus denen kryptographische Schlüssel erhalten werden. Ein Schlüssel-Verfolgungsprotokoll wird durch die MKE-Engine erhalten und die MKE-Engine speichert vorübergehend Einträge im Schlüssel-Verfolgungsprotokoll, die Identifikatoren der Teile eines Arbeitsspeichers und Schlüsselidentifikationsdaten für diese Teile eines Arbeitsspeichers während der Speicherzugriffsoperationen auf diese Teile eines Arbeitsspeichers umfassen.
Abstract:
Generally, this disclosure provides systems, devices, methods and computer readable media for virtualization-based intra-block workload isolation. The system may include a virtual machine manager (VMM) module to create a secure virtualization environment or sandbox. The system may also include a processor block to load data into a first region of the sandbox and to generate a workload package based on the data. The workload package is stored in a second region of the sandbox. The system may further include an operational block to fetch and execute instructions from the workload package.