SECURE COMMUNICATION OF VIRTUAL MACHINE ENCRYPTED MEMORY

An apparatus, a method, and a computer program product are provided that provide confidential computing on virtual machines by securing input/output operations between a virtual machine and a device. The method includes receiving an input/output (I/O) transaction from an I/O device requesting data s...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: ABALI, Bulent, RAISCH, Christoph, FRANKE, Hubertus, KRAEMER, Marco
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:An apparatus, a method, and a computer program product are provided that provide confidential computing on virtual machines by securing input/output operations between a virtual machine and a device. The method includes receiving an input/output (I/O) transaction from an I/O device requesting data stored memory from a virtual machine. The I/O transaction includes a virtual memory address and a bus device function. The method also includes associating the I/O transaction with a key slot associated with the virtual machine and retrieving, using the key slot, an encryption key used to encrypt and decrypt the data. The method further includes retrieving the data located at a physical memory address in physical memory relating to the virtual memory address of the data being requested and decrypting, during a read operation, the data using the encryption key for I/O transmission. The method also includes transmitting the decrypted data to the I/O device. La présente invention concerne un appareil, un procédé et un produit-programme d'ordinateur qui fournissent un calcul confidentiel sur des machines virtuelles en sécurisant des opérations d'entrée/sortie entre une machine virtuelle et un dispositif. Le procédé inclut la réception d'une transaction d'entrée/sortie (E/S) en provenance d'un dispositif d'E/S demandant des données stockées en mémoire dans une machine virtuelle. La transaction d'E/S inclut une adresse de mémoire virtuelle et une fonction de dispositif de bus. Le procédé inclut également l'association de la transaction d'E/S avec un créneau de clé associé à la machine virtuelle et la récupération, à l'aide du créneau de clé, d'une clé de chiffrement utilisée pour chiffrer et déchiffrer les données. Le procédé inclut en outre la récupération des données situées à une adresse de mémoire physique dans une mémoire physique relative à l'adresse de mémoire virtuelle des données demandées et le déchiffrement, durant une opération de lecture, des données à l'aide de la clé de chiffrement aux fins de transmission d'E/S. Le procédé inclut également la transmission des données déchiffrées au dispositif d'E/S.