Encryption Architecture
First Claim
1. A method of encrypting messages on a computer on which multiple virtual machines (VMs) execute, the method comprising:
- intercepting a data message transmitted by a particular VM;
determining whether the data message should be encrypted by analyzing a set of attributes of the data message; and
encrypting the data message upon determining that the data message should be encrypted.
1 Assignment
0 Petitions
Accused Products
Abstract
For a host that executes one or more guest virtual machines (GVMs), some embodiments provide a novel encryption method for encrypting the data messages sent by the GVMs. The method initially receives a data message to send for a GVM executing on the host. The method then determines whether it should encrypt the data message based on a set of one or more encryption rules. When the process determines that it should encrypt the received data message, it encrypts the data message and forwards the encrypted data message to its destination; otherwise, the method just forwards the received data message unencrypted to its destination. In some embodiments, the host encrypts differently the data messages for different GVMs that execute on the host. When two different GVMs are part of two different logical overlay networks that are implemented on common network fabric, the method in some embodiments encrypts the data messages exchanged between the GVMs of one logical network differently than the data messages exchanged between the GVMs of another logical network. In some embodiments, the method can also encrypt different types of data messages from the same GVM differently. Also, in some embodiments, the method can dynamically enforce encryption rules in response to dynamically detected events, such as malware infections.
52 Citations
24 Claims
-
1. A method of encrypting messages on a computer on which multiple virtual machines (VMs) execute, the method comprising:
-
intercepting a data message transmitted by a particular VM; determining whether the data message should be encrypted by analyzing a set of attributes of the data message; and encrypting the data message upon determining that the data message should be encrypted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A host computer for executing multiple virtual machines (VMs), the host comprising:
-
an encryption agent for receiving encryption configuration data from a set of controllers; and a set of encryptors for encrypting data messages sent from one or more of the VMs, based on the received encryption configuration data. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A non-transitory machine readable medium storing a program for encrypting messages on a computer on which multiple virtual machines (VMs) execute, the program comprising sets of instructions for:
-
intercepting a data message transmitted by a particular VM; determining whether the data message should be encrypted by analyzing a set of attributes of the data message; and encrypting the data message upon determining that the data message should be encrypted.
-
-
24-31. -31. (canceled)
Specification