Virtualization-based platform protection technology
US-2016364341-A1 · Dec 15, 2016 · US
US10705976B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10705976-B2 |
| Application number | US-201816023537-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 29, 2018 |
| Priority date | Jun 29, 2018 |
| Publication date | Jul 7, 2020 |
| Grant date | Jul 7, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Examples include a processor including at least one untrusted extended page table (EPT), circuitry to execute a set of instructions of the instruction set architecture (ISA) of the processor to manage at least one secure extended page table (SEPT), and a physical address translation component to translate a guest physical address of a guest physical memory to a host physical address of a host physical memory using one of the at least one untrusted EPT and the at least one SEPT.
Opening claim text (preview).
What is claimed is: 1. An apparatus comprising: a processor including instruction set architecture (ISA) circuitry to execute or more secure extended page table (SEPT) instructions to walk at least one SEPT stored in a protected area of a host physical memory that is inaccessible by an untrusted virtual machine manager (VMM); and physical address translation circuitry to translate a guest physical address of a guest physical memory to a host physical address of the host physical memory using the at least one SEPT. 2. The apparatus of claim 1 , comprising an untrusted EPT pointer (EPTP) to reference at least one untrusted EPT and a secure SEPT pointer (SEPTP) to reference the at least one SEPT. 3. The apparatus of claim 2 , comprising a guest physical address space for the guest physical memory divided into a shared guest physical address space and a private guest physical address space. 4. The apparatus of claim 3 , wherein the physical address translation circuitry is configured to read at least one selected bit of the guest physical address to determine whether to walk the at least one untrusted EPT to translate the guest physical address accessing the shared guest physical address space to the host physical address, or the at least one SEPT to translate the guest physical address accessing the private guest physical address space to the host physical address, based on the value of the at least one selected bit. 5. The apparatus of claim 4 , wherein the processor is configured to encrypt at least one page of the host physical memory reached via translation of the private guest physical address with a key of a trusted domain (TD). 6. The apparatus of claim 2 , comprising page miss handler (PMH) circuitry to load at least one EPTP and at least one SEPTP when a trusted domain is initialized and entered on a logical processor. 7. The apparatus of claim 1 , comprising a trusted domain resource manager (TDRM) to call the one or more SEPT instructions to manage the at least one SEPT. 8. The apparatus of claim 1 , wherein the at least one SEPT is encrypted with one of a key of a trusted domain and a processor key. 9. A system, comprising: a host physical memory including a protected area that is inaccessible by an untrusted virtual machine manager (VMM) to store at least one secure extended page table (SEPT); a processor, coupled to the host physical memory, the processor including instruction set architecture (ISA) circuitry to execute one or more SEPT instructions to walk the at least one SEPT; and a physical address translation component to translate a guest physical address of a guest physical memory to a host physical address of the host physical memory using the SEPT. 10. The system of claim 9 , the processor comprising an untrusted EPT pointer (EPTP) to reference at least one untrusted EPT and the host physical memory comprising a protected SEPT pointer (SEPTP) to reference the at least one SEPT. 11. The system of claim 10 , wherein the physical address translation component is configured to read at least one selected bit of the guest physical address to determine whether to walk the at least one untrusted EPT to translate the guest physical address accessing the shared guest physical address space to the host physical address, or the at least one SEPT to translate the guest physical address accessing the private guest physical address space to the host physical address, based on the value of the at least one selected bit. 12. The system of claim 11 , wherein the processor is configured to encrypt at least one page of the host physical memory reached via translation of the private guest physical address with a key of a trusted domain (TD). 13. The system of claim 10 , comprising page miss handler circuitry to load at least one EPTP and at least one SEPTP when a trusted domain is initialized and entered on a logical processor. 14. The system of claim 9 , comprising a guest physical address space for the guest physical memory divided into a shared guest physical address space and a private guest physical address space. 15. The system of claim 9 , comprising a trusted domain resource manager (TDRM) to call the one or more SEPT instructions to manage the at least one SEPT. 16. The system of claim 9 , wherein the at least one SEPT is encrypted with one of a key of a trusted domain and a processor key. 17. A method comprising: receiving a request to translate a guest physical address of a guest physical memory to a host physical address of a host physical memory; determining if a shared bit of the guest physical address is set; and walking a secure extended page table (SEPT) to translate the guest physical address when the shared bit is not set, the SEPT being stored in a protected area of the host physical memory that is inaccessible by an untrusted virtual machine manager (VMM), the walking of the SEPT being performed by executing one or more SEPT instructions of an instruction set architecture (ISA) of a processor. 18. The method of claim 17 , comprising storing the SEPT in a protected area of the host physical memory using encryption and integrity protection using a key of a trusted domain. 19. The method of claim 17 , wherein an untrusted EPT is referenced by an untrusted EPT pointer (EPTP) and the SEPT is referenced by a secure SEPT pointer (SEPTP). 20. The method of claim 17 , comprising dividing a guest physical address space for the guest physical memory into a shared guest physical address space and a private guest physical address space. 21. The method of claim 17 , comprising encrypting at least one page of the host physical memory reached via translation of the private guest physical address with a key of a trusted domain (TD).
by using cryptography (for digital transmission H04L9/00) · CPC title
Multi-level translation tables · CPC title
for multiple virtual address spaces, e.g. segmentation (G06F12/1036 takes precedence) · CPC title
Virtual address space management · CPC title
Emulated environment, e.g. virtual machine · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.