-
公开(公告)号:US10552344B2
公开(公告)日:2020-02-04
申请号:US15854278
申请日:2017-12-26
Applicant: Intel Corporation
Inventor: Carlos V. Rozas , Ittai Anati , Francis X. McKeen , Krystof Zmudzinski , Ilya Alexandrovich , Somnath Chakrabarti , Dror Caspi , Meltem Ozsoy
IPC: G06F12/14 , G06F12/08 , G06F12/10 , G06F3/06 , G06F12/0806 , G06F12/0868 , G06F12/1009 , G06F12/1027 , G06F12/128
Abstract: A secure enclave circuit stores an enclave page cache map to track contents of a secure enclave in system memory that stores secure data containing a page having a virtual address. An execution unit is to, in response to a request to evict the page from the secure enclave: block creation of translations of the virtual address; record one or more hardware threads currently accessing the secure data in the secure enclave; send an inter-processor interrupt to one or more cores associated with the one or more hardware threads, to cause the one or more hardware threads to exit the secure enclave and to flush translation lookaside buffers of the one or more cores; and in response to detection of a page fault associated with the virtual address for the page in the secure enclave, unblock the creation of translations of the virtual address.
-
42.
公开(公告)号:US10534724B2
公开(公告)日:2020-01-14
申请号:US14998157
申请日:2015-12-24
Applicant: INTEL CORPORATION
Inventor: Carlos V. Rozas , Ilya Alexandrovich , Gilbert Neiger , Francis X. McKeen , Ittai Anati , Vedvyas Shanbhogue , Mona Vij , Rebekah Leslie-Hurd , Krystof C. Zmudzinski , Somnath Chakrabarti , Vincent R. Scarlata , Simon P. Johnson
IPC: G06F12/14 , H04L9/32 , G06F12/0802 , H04L9/14
Abstract: Instructions and logic support suspending and resuming migration of enclaves in a secure enclave page cache (EPC). An EPC stores a secure domain control structure (SDCS) in storage accessible by an enclave for a management process, and by a domain of enclaves. A second processor checks if a corresponding version array (VA) page is bound to the SDCS, and if so: increments a version counter in the SDCS for the page, performs an authenticated encryption of the page from the EPC using the version counter in the SDCS, and writes the encrypted page to external memory. A second processor checks if a corresponding VA page is bound to a second SDCS of the second processor, and if so: performs an authenticated decryption of the page using a version counter in the second SDCS, and loads the decrypted page to the EPC in the second processor if authentication passes.
-
公开(公告)号:US10324862B2
公开(公告)日:2019-06-18
申请号:US15282300
申请日:2016-09-30
Applicant: Intel Corporation
Inventor: Rebekah M. Leslie-Hurd , Francis X. McKeen , Carlos V. Rozas , Gilbert Neiger , Asit K. Mallick , Ittai Anati , Ilya Alexandrovich , Vedvyas Shanbhogue , Somnath Chakrabarti
IPC: G06F3/06 , G06F12/12 , G06F12/0875 , G06F9/455
Abstract: Implementations of the disclosure provide for supporting oversubscription of guest enclave memory pages. In one implementation, a processing device comprising a memory controller unit to access a secure enclave and a processor core, operatively coupled to the memory controller unit. The processing device is to identify a target memory page in memory. The target memory page is associated with a secure enclave of a virtual machine (VM). A data structure comprising context information corresponding to the target memory page is received. A state of the target memory page is determined based on the received data structure. The state indicating whether the target memory page is associated with at least one of: a child memory page or a parent memory page of the VM. Thereupon, an instruction to evict the target memory page from the secure enclave is generated based on the determined state.
-
公开(公告)号:US10230528B2
公开(公告)日:2019-03-12
申请号:US14703420
申请日:2015-05-04
Applicant: Intel Corporation
Inventor: Binata Bhattacharyya , Amy L. Santoni , Raghunandan Makaram , Francis X. McKeen , Simon P. Johnson , George Z. Chrysos , Siddhartha Chhabra
Abstract: Systems and methods for memory protection for implementing trusted execution environment. An example processing system comprises: an on-package memory; a memory encryption engine (MEE) comprising a MEE cache, the MEE to: responsive to failing to locate, within the MEE cache, an encryption metadata associated with a data item loaded from an external memory, retrieve at least part of the encryption metadata from the OPM, and validate the data item using the encryption metadata.
-
公开(公告)号:US10216648B2
公开(公告)日:2019-02-26
申请号:US15612837
申请日:2017-06-02
Applicant: Intel Corporation
Inventor: Francis X. McKeen , Vincent R. Scarlata , Carlos V. Rozas , Ittai Anati , Vedvyas Shanbhogue
IPC: G06F12/14 , G06F12/0875 , G06F12/0804 , G06F9/4401 , G06F21/53
Abstract: Embodiments of an invention for maintaining a secure processing environment across power cycles are disclosed. In one embodiment, a processor includes an instruction unit and an execution unit. The instruction unit is to receive an instruction to evict a root version array page entry from a secure cache. The execution unit is to execute the instruction. Execution of the instruction includes generating a blob to contain information to maintain a secure processing environment across a power cycle and storing the blob in a non-volatile memory.
-
公开(公告)号:US20190012273A1
公开(公告)日:2019-01-10
申请号:US16036654
申请日:2018-07-16
Applicant: Intel Corporation
Inventor: Rebekah M. Leslie-Hurd , Francis X. McKeen , Carlos V. Rozas , Krystof C. Zmudzinski
CPC classification number: G06F12/1441 , G06F9/52 , G06F21/53 , G06F21/74 , G06F21/79
Abstract: Secure memory allocation technologies are described. A processor includes a processor core and a memory controller that is coupled between the processor core and main memory. The main memory comprises a protected region including secured pages. The processor, in response to a content copy instruction, is to initialize a target page in the protected region of an application address space. The processor, in response to the content copy instruction, is also to select content of a source page in the protected region to be copied. The processor, in response to the content copy instruction, is also to copy the selected content to the target page in the protected region of the application address space.
-
公开(公告)号:US10152350B2
公开(公告)日:2018-12-11
申请号:US15200820
申请日:2016-07-01
Applicant: Intel Corporation
Inventor: Somnath Chakrabarti , Mona Vij , Carlos V. Rozas , Brandon Baker , Vincent R. Scarlata , Francis X. McKeen , Simon P. Johnson
Abstract: Particular embodiments described herein provide for an electronic device that can be configured to determine that a secure domain has been created on a device, where keys are required to access the secure domain, obtain the keys that are required to access the secure domain from a network element, and encrypt the keys and store the encrypted keys on the device. In an example, only the secure domain can decrypt the encrypted keys and the device is a virtual machine.
-
公开(公告)号:US20180329829A1
公开(公告)日:2018-11-15
申请号:US15592089
申请日:2017-05-10
Applicant: Intel Corporation
Inventor: Krystof C. Zmudzinski , Carlos V. Rozas , Francis X. McKeen , Rebekah M. Leslie-Hurd , Meltem Ozsoy , Somnath Chakrabarti , Mona Vij
IPC: G06F12/1027 , G06F12/1009 , G06F12/14 , G06F9/455
Abstract: Translation lookaside buffer (TLB) tracking and managing technologies are described. A processing device comprises a translation lookaside buffer (TLB) and a processing core to execute a virtual machine monitor (VMM), the VMM to manage a virtual machine (VM) including virtual processors. The processing core to execute, via the VM, a plurality of conversion instructions on at least one of the virtual processors to convert a plurality of non-secure pages to a plurality of secure pages. The processing core also to execute, via the VM, one or more allocation instructions on the at least one of the virtual processors to allocate at least one secure page of the plurality of secure pages, execution of the one or more allocation instructions to include determining whether the TLB is cleared of mappings to the at least one secure page prior to allocating the at least one secure page.
-
公开(公告)号:US09990314B2
公开(公告)日:2018-06-05
申请号:US15612845
申请日:2017-06-02
Applicant: INTEL CORPORATION
Inventor: Carlos V. Rozas , Ilya Alexandrovich , Gilbert Neiger , Francis X. McKeen , Ittai Anati , Vedvyas Shanbhogue , Shay Gueron
IPC: G06F12/00 , G06F13/24 , G06F12/0806 , G06F12/08 , G06F12/0875 , G06F21/00 , G06F21/71 , G06F21/85
CPC classification number: G06F13/24 , G06F12/08 , G06F12/0806 , G06F12/0875 , G06F21/00 , G06F21/71 , G06F21/85 , G06F2212/1024 , G06F2212/1052 , G06F2212/62
Abstract: Instructions and logic interrupt and resume paging in secure enclaves. Embodiments include instructions, specify page addresses allocated to a secure enclave, the instructions are decoded for execution by a processor. The processor includes an enclave page cache to store secure data in a first cache line and in a last cache line for a page corresponding to the page address. A page state is read from the first or last cache line for the page when an entry in an enclave page cache mapping for the page indicates only a partial page is stored in the enclave page cache. The entry for a partial page may be set, and a new page state may be recorded in the first cache line when writing-back, or in the last cache line when loading the page when the instruction's execution is being interrupted. Thus the writing-back, or loading can be resumed.
-
公开(公告)号:US09977743B2
公开(公告)日:2018-05-22
申请号:US15252719
申请日:2016-08-31
Applicant: Intel Corporation
Inventor: Rebekah M. Leslie-Hurd , Francis X. McKeen , Carlos V. Rozas , Somnath Chakrabarti , Asit Mallick
IPC: G06F12/08 , G06F21/57 , G06F12/0817 , G06F12/0808 , G06F12/0811 , G06F12/084
CPC classification number: G06F12/0824 , G06F12/0808 , G06F12/0811 , G06F12/084 , G06F21/53 , G06F21/572 , G06F2212/1008 , G06F2212/1052 , G06F2212/152 , G06F2212/60 , G06F2212/62 , G06F2221/032
Abstract: A processing device includes a first counter having a first count value of a number of child pages among a plurality of child pages present in an enclave memory of a first virtual machine (VM). The plurality of child pages are associated with a parent page in the enclave memory. The processing device includes a second counter having a second count value of a number of child pages among the plurality of child pages not present in the enclave memory and being shared by a second VM, wherein the second VM is different from the first VM. A non-zero value of at least one of the first counter or the second counter prevents eviction of the parent page from the enclave memory.
-
-
-
-
-
-
-
-
-