Protected guests in a hypervisor controlled system

US2017004001A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017004001-A1
Application numberUS-201514919791-A
CountryUS
Kind codeA1
Filing dateOct 22, 2015
Priority dateJul 1, 2015
Publication dateJan 5, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer-implemented method includes receiving a definition of a source guest memory area for utilization by a virtual machine on a source system, wherein the source system includes a source trusted firmware and a source hypervisor. The method restricts write access to the source guest memory area of the virtual machine. The method receives repeatedly a source guest memory page location, content for each of a plurality of source guest memory pages, and an integrity value for each of a plurality of source guest memory page locations. The method receives a global integrity value for integrity values associated with the plurality of source guest memory page locations, wherein a latest integrity values for each of the plurality of source guest memory page locations is utilized. Subsequent to verifying the global integrity value, the method initializes the virtual machine on the source hypervisor.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: receiving, by one or more processors, a definition of a source guest memory area for utilization by a virtual machine on a source system, wherein the source system includes a source trusted firmware and a source hypervisor; restricting, by one or more processors, write access to the source guest memory area of the virtual machine; receiving, by one or more processors, repeatedly from the source hypervisor, a source guest memory page location, content for each of a plurality of source guest memory pages, and an integrity value for each of a plurality of source guest memory page locations; receiving, by one or more processors, a global integrity value for integrity values associated with the plurality of source guest memory page locations, wherein a latest integrity value for each of the plurality of source guest memory page locations is utilized; and subsequent to verifying the global integrity value received from the source hypervisor matches the integrity values, initializing, by one or more processors, the virtual machine on the source hypervisor. 2 . The method of claim 1 , further comprising: managing, by one or more processors, a configuration of the virtual machine on the source system, wherein the source system includes a private key accessible by the source trusted firmware; and verifying, by one or more processors, the integrity values for the virtual machine, received with the definition of the source guest memory area, according to a secret guest key associated with the virtual machine accessible only by the source trusted firmware. 3 . The method of claim 2 , further comprising: removing, by one or more processors, access rights to a first source guest memory page from the virtual machine; computing, by one or more processors, a first integrity value for the first source guest memory page; and subsequent to storing the first integrity value in memory accessible to the source trusted firmware, granting, by one or more processors, write access to the first source guest memory page to the source hypervisor, wherein the first source guest memory page is an evicted guest memory page. 4 . The method of claim 3 , further comprising: restricting, by one or more processors, write access to the evicted guest memory page; verifying, by one or more processors, the first integrity value stored for a location of the evicted guest memory page matches content of the evicted guest memory page; and subsequent to determining the verification fails, restoring, by one or more processors, write access to the evicted guest memory page. 5 . The method of claim 3 , further comprising: restricting, by one or more processors, write access to the evicted guest memory page; verifying, by one or more processors, the first integrity value stored for the location of the evicted guest memory page matches content of the evicted guest memory page; and subsequent to determining that the verification succeeds, granting, by one or more processors, write access to the evicted page by the virtual machine. 6 . The method of claim 3 , wherein the source hypervisor is obtaining the first integrity value of the evicted guest memory page. 7 . The method of claim 3 , further comprising: computing, by one or more processors, the global integrity value of the integrity values for the plurality of source guest memory pages, wherein the plurality of source guest memory pages include submitted, evicted, or content filled pages; terminating, by one or more processors, the virtual machine; and granting, by one or more processors, the source hypervisor access to the global integrity value. 8 . The method of claim 7 , further comprising: sending, by one or more processors, the secret guest key to verify the integrity values encrypted by a public key of a target trusted firmware of a target system; continuously evicting, by one or more processors, the plurality of source guest memory pages from the virtual machine; requesting, by one or more processors, integrity values for a plurality of evicted guest memory pages; continuously sending, by one or more processors, content of the plurality of evicted guest memory pages, locations of the plurality of evicted guest memory pages, and integrity values for the plurality of evicted guest memory pages to a target hypervisor on the target system; subsequent to the target hypervisor continuously submitting the plurality of evicted guest memory pages, locations, and integrity values to the target trusted firmware of the target system, terminating, by one or more processors, the virtual machine on the source hypervisor; and sending, by one or more processors, the global integrity value of the terminated virtual machine to the target hypervisor, wherein the target hypervisor submits the global integrity value to the target trusted firmware of the target system. 9 . The method of claim 8 , further comprising: subsequent to sending content, locations, and integrity values of the plurality of evicted guest memory pages, sending, by one or more processors, a new location, new content, and associated integrity value for at least one of the source guest memory pages to the target hypervisor; and sending, by one or more processors, the global integrity value for integrity values associated with the plurality of source guest memory page locations to the target hypervisor that submits the global integrity value to the target trusted firmware of the target system, wherein a latest integrity value for each of the plurality of source guest memory page locations of the terminated virtual machine is utilized. 10 . The method of claim 9 , further comprising: receiving, by one or more processors, from the virtual machine on the source hypervisor, the public key corresponding to a private system key of the target system running a target hypervisor, wherein the public key is signed by the virtual machine. 11 . The method of claim 9 , wherein terminating the virtual machine on the source hypervisor comprises suspending, by one or more processors, the virtual machine utilizing the integrity value of a virtual machine wrapped by the public key of the target system where the virtual machine is resumed. 12 . The method of claim 2 , wherein another plurality of source guest memory pages not received by the source trusted firmware are non-content filled pages. 13 . The method of claim 2 , wherein the integrity value for each of the plurality of source guest memory page locations is at least one of a message authentication code or a cryptographic signature. 14 . The method of claim 2 , wherein the source trusted firmware allows the virtual machine to determine whether the source trusted firmware is in possession of a secret key associated with the virtual machine.

Assignees

Inventors

Classifications

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism · CPC title

  • Memory management, e.g. access or allocation · CPC title

  • Security improvement · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017004001A1 cover?
A computer-implemented method includes receiving a definition of a source guest memory area for utilization by a virtual machine on a source system, wherein the source system includes a source trusted firmware and a source hypervisor. The method restricts write access to the source guest memory area of the virtual machine. The method receives repeatedly a source guest memory page location, cont…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jan 05 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).