Evicting clean secure pages without encryption
AssigneeIntel Corporation
InventorsKrystof C. Zmudzinski, Carlos V. Rozas
Life of this patent
Estimating the term…
Abstract
Secure memory paging technologies are described. Embodiments of the disclosure may include checking attributes of secure page cache map to determine whether a target page to be evicted is clean and replay protected by a unified version-paging data structure and checking the unified version-paging data structure to determine whether contents of the unified version-paging data structure match the target page. When the target page to be evicted is clean and replay protected and the contents match, the target page can be removed without encrypting the contents of the target page.
Claims20
A processing device comprising:
- a processing core;
- and
- a memory controller coupled between the processing core and a memory device, wherein the processing core, in response to a secure write back (EWBE) instruction to evict a target page from a protected region of memory into a non-protected region of the memory, is to:
- check a first attribute of a secure page cache map to determine whether the target page is clean;
- check a second attribute of the secure page cache map to determine whether the target page is replay protected by a unified version-paging data structure;
- check the unified version-paging data structure to determine whether the unified version-paging data structure contains information that matches the target page, wherein the unified version-paging data structure is stored in the protected region of memory and comprises version meta-data corresponding to the target page and page meta-data to restore the target page to the protected region;
- and
- remove the target page from the protected region of memory without encrypting the contents of the target page when the first attribute indicates that the target page is clean, the target page is replay protected by the secure page cache map and the unified version-paging data structure contains the information for the target page.
A method, comprising:
- executing, via a processing device, a secure write back (EWBE) instruction to evict a target page from a protected region of memory into a non-protected region of the memory;
- responsive to the executing the EWBE instruction,
- checking a first attribute of a secure page cache map to determine whether the target page is clean;
- checking a second attribute of the secure page cache map to determine whether the target page is replay protected by a unified version-paging data structure;
- checking the unified version-paging data structure to determine whether the unified version-paging data structure contains information that matches the target page, wherein the unified version-paging data structure is stored in the protected region of memory and comprises version meta-data corresponding to the target page and page meta-data to restore the target page to the protected region;
- and
- removing the target page from the protected region of memory without encrypting the contents of the target page when the first attribute indicates that the target page is clean and the target page is replay protected by the unified version-paging data structure.
A system comprising:
- a memory device comprising a protected region of memory in which enclave page cache (EPC) stores EPC pages and a unified version-paging data structure, the unified version-paging data structure comprising version meta-data and page meta-data corresponding to a first EPC page;
- and
- a processing device operably coupled to the memory device, the processing device to:
- execute a secure write back (EWBE) instruction to evict the first EPC page from the EPC into a non-protected region of the memory device;
- responsive to the EWBE instruction,
- check a clean bit of an enclave page cache map (EPCM) to determine whether the first EPC page is clean;
- check a replay-protected bit of the EPCM to determine whether the first EPC page is replay protected by the unified version-paging data structure;
- check whether the unified version-paging data structure contains information that matches the first EPC page;
- and
- remove the first EPC page from the EPC without encrypting the contents of the first EPC page when the clean bit indicates that the first EPC page is clean and the first EPC page is replay protected by the unified version-paging data structure.
Dependencies are inferred from the claim text.