-
31.
公开(公告)号:US10558588B2
公开(公告)日:2020-02-11
申请号:US15651771
申请日:2017-07-17
Applicant: Intel Corporation
Inventor: Carlos V. Rozas , Mona Vij , Rebekah M. Leslie-Hurd , Krystof C. Zmudzinski , Somnath Chakrabarti , Francis X. Mckeen , Vincent R. Scarlata , Simon P. Johnson , Ilya Alexandrovich , Gilbert Neiger , Vedvyas Shanbhogue , Ittai Anati
Abstract: A processor includes a decode unit to decode an instruction that is to indicate a page of a protected container memory, and a storage location outside of the protected container memory. An execution unit, in response to the instruction, is to ensure that there are no writable references to the page of the protected container memory while it has a write protected state. The execution unit is to encrypt a copy of the page of the protected container memory. The execution unit is to store the encrypted copy of the page to the storage location outside of the protected container memory, after it has been ensured that there are no writable references. The execution unit is to leave the page of the protected container memory in the write protected state, which is also valid and readable, after the encrypted copy has been stored to the storage location.
-
公开(公告)号: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.
-
33.
公开(公告)号: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.
-
公开(公告)号:US20190065406A1
公开(公告)日:2019-02-28
申请号:US16174337
申请日:2018-10-30
Applicant: Intel Corporation
Inventor: Michael Steiner , Thomas Knauth , Li Lei , Bin Xing , Mona Vij , Somnath Chakrabarti
Abstract: In a method for protecting extra-enclave communications, a data processing system allocates a portion of random access memory (RAM) to a server application that is to execute at a low privilege level, and the data processing system creates an enclave comprising the portion of RAM allocated to the server application. The enclave protects the RAM in the enclave from access by software that executes at a high privilege level. The server application obtains a platform attestation report (PAR) for the enclave from the processor. The PAR includes attestation data from the processor attesting to integrity of the enclave. The server application also generates a public key certificate for the server application. The public key certificate comprises the attestation data. The server application utilizes the public key certificate to establish a transport layer security (TLS) communication channel with a client application outside of the enclave. Other embodiments are described and claimed.
-
公开(公告)号: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.
-
公开(公告)号: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.
-
公开(公告)号:US20180097809A1
公开(公告)日:2018-04-05
申请号:US15283208
申请日:2016-09-30
Applicant: Intel Corporation
Inventor: Somnath Chakrabarti , Mona Vij , Carlos V. Rozas , Brandon Baker , Vincent R. Scarlata , Malini K. Bhandaru , Ning Sun , Jun Nakajima , Francis X. McKeen , Simon P. Johnson
IPC: H04L29/06
CPC classification number: H04L63/10 , H04L63/08 , H04L63/126 , H04L67/10
Abstract: Particular embodiments described herein provide for receiving a request from a first cloud component in a cloud network, wherein the request is to access a key and the key allows the first cloud component to access located trusted execution environment of a second cloud component in the cloud network and allow the request on the condition that the first cloud component is authenticated. A more specific example includes determining a type for the first cloud component, and comparing the determined type of the first cloud component with a component type associated with the key. The example may also include blocking the request if the determined type of the first cloud component does not match the component type associated with the key.
-
公开(公告)号:US20180007051A1
公开(公告)日:2018-01-04
申请号:US15201447
申请日:2016-07-02
Applicant: Intel Corporation
Inventor: Mona Vij , Somnath Chakrabarti , Carlos V. Rozas , Asit K. Mallick
IPC: H04L29/06
CPC classification number: H04L63/10 , G06F21/10 , G06F21/6245 , H04L63/06 , H04L63/08
Abstract: A processor of an aspect includes a decode unit to decode an instruction. The instruction to indicate a first structure in a protected container memory and to indicate a second structure in the protected container memory. The processor also includes an execution unit coupled with the decode unit. The execution unit, in response to the instruction, is to determine whether a status indicator is configured to allow at least one key to be exchanged between the first and second structures, and is to exchange the at least one key between the first and second structures when the status indicator is configured to allow the at least one key to be exchanged between the first and second structures.
-
-
-
-
-
-
-
-
-