CN111259380B - 内存页转移方法和函数调用方法 - Google Patents

内存页转移方法和函数调用方法 Download PDF

Info

Publication number
CN111259380B
CN111259380B CN202010033813.6A CN202010033813A CN111259380B CN 111259380 B CN111259380 B CN 111259380B CN 202010033813 A CN202010033813 A CN 202010033813A CN 111259380 B CN111259380 B CN 111259380B
Authority
CN
China
Prior art keywords
secure
container
memory page
linear address
secure container
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010033813.6A
Other languages
English (en)
Other versions
CN111259380A (zh
Inventor
吴宇
杜朝晖
应志伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202010033813.6A priority Critical patent/CN111259380B/zh
Publication of CN111259380A publication Critical patent/CN111259380A/zh
Application granted granted Critical
Publication of CN111259380B publication Critical patent/CN111259380B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供了一种内存页转移方法,包括:确定第一安全容器对应的待转移的安全内存页和所述安全内存页在第一安全容器的第一线性地址;获取所述安全内存页在第二安全容器中的第二线性地址;以及将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址。本公开了还提供了一种函数调用方法。

Description

内存页转移方法和函数调用方法
本申请是申请日为2017年8月22日,申请号为201710726204.7、发明名称为“一种内存页转移方法”的发明专利申请的分案申请。
技术领域
本发明涉及一种内存页转移方法和函数调用方法,尤其是涉及一种在多个enclave之间进行内存页相互转移和函数调用的方法。
背景技术
Intel的SGX(Software Guard Extensions)技术,是Intel公司为建立一个安全可靠的程序运行环境而提供的一套软硬件解决方案(包括新产生的17条相关指令,和对应的硬件设施)。与普通程序不同,安全容器(enclave)中的程序是运行在隔离的内存中(称为EPC,Enclave Page Cache),所有非enclave的程序都将无法访问EPC,这是由硬件控制的。另外每个enclave的EPC物理页面都对应一个控制访问权限的EPCM(Enclave Page CacheMap)结构,只有自身的enclave才能访问自己的EPC物理页面,而别的enclave会因为无法通过EPCM检查而无法访问该页面,从而达到多个enclave之间的隔离。
多个enclave之间的访问隔离虽然强化了软件的安全性,但同时也产生一些问题:1)两个enclave之间无法快速实现函数相互调用,这样容易导致同一个函数在EPC内存中存在多个副本,浪费EPC内存空间且不便于维护。2)两个enclave之间不能进行快速的数据交换和通讯,这导致一些需要多个enclave协作的高级应用变得复杂和低效。
发明内容
本发明主要针对安全容器因为为相互隔离而产生的问题,本发明提出一种动态修改物理页面拥有者权限的方法,从而可以实现:1)两个enclave之间可以快速相互调用函数2)两个enclave可以快速进行数据交换和通讯enclave之间由于相互隔离导致的上述不足之处。
为实现上述目的,本发明提供了一种内存页转移方法,方法包括:处理器接收到第一安全容器enclave调用第二安全容器函数的请求;确定第一安全容器对应的待转移的安全内存EPC页,以及第一线性地址,即待转移的安全内存页在第一安全容器中的线性地址;获取第二线性地址,即待转移的安全内存页在第二安全容器中的线性地址;以第一安全容器为当前安全容器,第二安全容器为目标安全容器,在第一安全容器中调用跨安全容器跳转EAJMP指令来传递指令参数;找到安全内存页对应的安全内存控制表EPCM,将其中的安全内存页归属字段ENCLAVESECS内容由当前安全容器身份标签修改为目标安全容器身份标签,并将合法线性地址字段ENCLAVEADDRESS内容由当前线性地址修改为目标线性地址。
优选的,方法还包括:第一安全容器与第二安全容器进行相互认证,如果认证成功,则相互交换各自安全容器身份标签enclave ID、第一线性地址和第二线性地址,以及共享随机数。
优选的,跨安全容器跳转EAJMP指令的指令参数包括以下字段:目标安全容器身份标签Target_Enclave_ID、当前安全容器身份标签Current_Enclave_ID、共享随机数Shared_Key、目标安全容器的函数编号Target_Enclave_Func、待转移安全内存页面数量EPC_PAGE_NUM、待转移的安全内存页在当前安全容器中的线性地址Current_Enclave_Page_Vaddr、待转移的安全内存页在目标安全容器中的线性地址Target_Enclage_Page_Vaddr)、当前安全容器的线程控制信息Current_Enclave_TCS和目标安全容器的线程控制信息Target_Enclave_TCS。
优选的,跨安全容器跳转EAJMP指令参数分两部分传递;目标安全容器身份标签Target_Enclave_ID存放在约定好的寄存器传递;其余参数存放在待转移的安全内存页传递。
优选的,待转移的安全内存页还存放调用函数所需要的参数信息和函数执行结果。
优选的,还包括:第二安全容器读取转移过来的安全内存EPC页面上的安全容器跳转EAJMP指令的指令参数;通过目标安全容器的函数编号Target_Enclave_Func)到对应函数,并根据目标安全容器的线程控制信息Target_Enclave_TCS运行该函数;将函数的处理结果存放在待转移的安全内存EPC页面上。
优选的,目标安全容器的线程控制信息Target_Enclave_TCS为空时,则产生全新的线程控制信息TCS。
优选的,还包括:当第二安全容器执行完函数后,以第二安全容器为当前安全容器,以第一安全容器为目标安全容器,在第二安全容器中再次调用跨安全容器跳转EAJMP指令,并更新跨安全容器跳转指令内的字段;将安全内存页归属字段ENCLAVESECS的内容由当前安全容器身份标签修改为目标安全容器身份标签,将合法线性地址字段ENCLAVEADDRESS的内容由当前线性地址修改为目标线性地址;第一安全容器从安全内存页面读取函数执行结果;处理器根据第一安全容器的线程控制信息,重新返回第一安全容器中对应的线程继续执行程序。
本发明提供了一种内存页转移方法,包括:确定第一安全容器对应的待转移的安全内存页和所述待转移的安全内存页在第一安全容器的第一线性地址;获取所述待转移的安全内存页在第二安全容器中的第二线性地址;以及将所述待转移的安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址。
优选的,所述方法还可以包括:所述第一安全容器与所述第二安全容器进行相互认证,如果认证成功,则相互交换各自安全容器身份标签、所述第一线性地址和所述第二线性地址,以及共享随机数。
优选的,所述方法还可以包括:在所述待转移的安全内存页中存放第一安全容器的身份标签、共享随机数、第二安全容器的函数编号、要转移权限的安全内存页面数量、所述第一线性地址、所述第二线性地址、第一安全容器的线程控制信息以及第二安全容器的线程控制信息中的至少一项。
优选的,所述方法还可以包括:在所述待转移的安全内存页中存放函数执行所需要的参数以及函数执行的结果。
本发明还提供了一种函数调用方法,包括:接收第一安全容器调用第二安全容器的函数的请求;确定第一安全容器对应的安全内存页和所述安全内存页在第一安全容器的第一线性地址;获取所述安全内存页在第二安全容器中的第二线性地址;将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址;所述第二安全容器根据所述安全内存页中的字段进行函数计算,并将结果存放在所述安全内存页中。
优选的,所述方法还可以包括:在所述安全内存页中存放第一安全容器的身份标签、共享随机数、第二安全容器的函数编号、安全内存页面数量、第一线性地址、第二线性地址、第一安全容器的线程控制信息以及第二安全容器的线程控制信息中的至少一项。
优选的,所述方法还可以包括:将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第二安全容器的身份标签修改为第一安全容器的身份标签,以及将合法线性地址字段内容从第二线性地址修改为第一线性地址;所述第一安全容器从所述安全内存页读取所述结果;以及根据所述第一安全容器的线程控制信息,重新返回所述第一安全容器中对应的线程。
优选的,所述第二安全容器根据所述安全内存页中的字段进行函数计算,可以包括:根据所述安全内存页中的第二安全容器的函数编号字段和第二安全容器的线程控制信息字段,找到需要用到的函数以及线程,通过读取所述安全内存页中的函数执行所需参数,进行函数计算。
根据本发明的实施例,通过动态修改EPCM中的ENCLAVESECS和ENCLAVEADDRESS字段,可以实现一个EPC页面分时被不同的enclave访问。这样可以达到如下效果:1)不同的enclave之间可以实现函数调用2)不同的enclave之间时间数据传递和通讯。
附图说明
图1为本发明实施例提供的一种内存页转移方法流程图;
图2为根据本发明一个实施例实现一种数据存放示意图;
图3为根据本发明一个实施例实现的一种初始状态示意图;
图4为根据本发明一个实施例实现的一种传递页面结构示意图;
图5为根据本发明一个实施例实现的一种页面返回结构示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
如图1所示,为本发明实施例提供的一种内存页转移方法流程图。
本发明实施例提供了一种内存页转移方法,方法包括:处理器接收到第一安全容器enclave调用第二安全容器函数的请求;确定第一安全容器对应的待转移的安全内存EPC页,以及第一线性地址,即待转移的安全内存页在第一安全容器中的线性地址;获取第二线性地址,即待转移的安全内存页在第二安全容器中的线性地址;以第一安全容器为当前安全容器,第二安全容器为目标安全容器,在第一安全容器中调用跨安全容器跳转EAJMP指令来传递指令参数;找到安全内存页对应的安全内存控制表EPCM,将其中的安全内存页归属字段ENCLAVESECS内容由当前安全容器身份标签修改为目标安全容器身份标签,并将合法线性地址字段ENCLAVEADDRESS内容由当前线性地址修改为目标线性地址。
本发明的核心是动态修改物理页面拥有者权限,而每个EPC页面的权限都是由对应的安全内存控制表EPCM控制的。EPCM的结构如下:
Figure BDA0002365306110000051
Figure BDA0002365306110000061
只要能够动态修改ENCLAVESECS和ENCLAVEADDRESS两个字段,就能够把一个enclave的物理页面转移给另一个enclave,从而实现enclave间的函数调用和数据传递。为了加快这一过程的执行速度,定义一条带参数指令跨安全容器跳转EAJMP(Enclave AcrossJump),该指令的参数分两部分传递(寄存器的传递速率快,但寄存器的数量有限,因此把一部分参数放在物理页面上传递):
第一部分参数:通过约定好的寄存器传递,如下:
参数名称 说明
Target_Enclave_ID 目标enclave的ID
第二部分参数,通过物理页面传递,如下:
Figure BDA0002365306110000062
表1:EAJMP指令参数说明
注意:enclave的ID声明为一个enclave对应的安全容器控制信息SECS(SGXEnclaveControlStructure)的物理地址。
EAJMP第二部分参数被存放在待转移页面上,其页面的结构如图2所示。参看图2,其示出根据本发明一个实施例的一种数据存放示意图。如图2所示,在待转移的页面上,存放以下参数:当前enclave的ID,共享随机数,目标enclave的函数编号,要转移权限的EPC页面数量,当前enclave中将要转移的页面的线性地址,目标enclave中将要接收被转移物理页面的线性地址,当前enclave的线程控制信息TCS(Thread Control Structure)地址,目标enclave的TCS地址。
此外,在该页面中还预留空间来存放函数执行所需要的参数,以及函数执行的结果。
如图3所示,为根据本发明一个实施例实现的一种初始状态示意图。在该实施例中,假定安全容器B需要调用安全容器A中的函数,于是处理器执行以下过程。
处理器接收到安全容器enclave B调用安全容器A函数的请求;确定安全容器B对应的待转移的安全内存EPC页,以及线性地址B,即待转移的安全内存页在第一安全容器中的线性地址;获取线性地址A,即待转移的安全内存页在第二安全容器中的线性地址。此时,如图3所述,安全容器B与安全容器A进行相互认证,如果认证成功,则相互交换各自安全容器身份标签enclave ID、线性地址B和线性地址A,以及共享随机数。但是此时,应用A中的安全容器A仍然无法访问待转移页面,而安全容器B可以通过安全内存控制表进行对待转移页面的访问。
如图4所示,为根据本发明一个实施例实现的一种传递页面示意图。
此时,在安全容器B中调用跨安全容器跳转EAJMP指令来传递指令参数;找到安全内存页对应的安全内存控制表EPCM,将其中的安全内存页归属字段ENCLAVESECS内容由当前安全容器身份标签修改为目标安全容器身份标签,此时也就是将安全容器B标签改为安全容器A标签,并将合法线性地址字段ENCLAVEADDRESS内容由当前线性地址修改为目标线性地址,也就是将线性地址B改为线性地址A。通过修改上述字段,安全容器A现在可以通过安全内存控制表访问安全内存中的待转移页面。接着,安全容器A根据页面结构中的Target_Enclave_Func和Target_Enclave_TCS字段,找到应用A中需要用到的函数以及线程,通过读取页面中的函数执行所需参数,进行函数计算。并将结果存放于函数执行结果存放区。此时,应用B中的安全容器B因为没有权限,而无法对该页面进行访问。
如图5所示,为根据本发明一个实施例实现的一种页面返回示意图。
当安全容器A执行完函数后,以安全容器A为当前安全容器,以安全容器B为目标安全容器,在安全容器A中再次调用跨安全容器跳转EAJMP指令,并更新跨安全容器跳转指令内的字段;将安全内存页归属字段ENCLAVESECS的内容由当前安全容器身份标签修改为目标安全容器身份标签,此时也就是将安全容器A标签改回安全容器B标签,将合法线性地址字段ENCLAVEADDRESS的内容由当前线性地址修改为目标线性地址,也就是将线性地址A改回线性地址B。于是,安全容器B可以从安全内存页面读取函数执行结果。处理器根据安全容器B的线程控制信息,重新返回安全容器B中对应的线程继续执行程序。在此阶段,由于访问权限归还于安全容器B,所以安全容器B可以在此访问该安全页面,而安全容器A无法进行页面访问。
通过以上操作,执行了安全容器之间转移页面、返还页面的过程,既实现了安全容器之间函数的调用,又保证了安全容器的运行安全。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种内存页转移方法,包括:
确定第一安全容器对应的待转移的安全内存页和所述安全内存页在第一安全容器的第一线性地址;
获取所述安全内存页在第二安全容器中的第二线性地址;以及
将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址。
2.如权利要求1所述的方法,还包括:所述第一安全容器与所述第二安全容器进行相互认证,如果认证成功,则相互交换各自安全容器身份标签、所述第一线性地址和所述第二线性地址,以及共享随机数。
3.如权利要求1或2所述的方法,还包括:
在所述安全内存页中存放第一安全容器的身份标签、共享随机数、第二安全容器的函数编号、待转移的安全内存页面数量、所述第一线性地址、所述第二线性地址、第一安全容器的线程控制信息以及第二安全容器的线程控制信息中的至少一项。
4.如权利要求3所述的方法,还包括:在所述安全内存页中存放函数执行所需要的参数以及函数执行的结果。
5.一种函数调用方法,包括:
接收第一安全容器调用第二安全容器的函数的请求;
确定第一安全容器对应的安全内存页和所述安全内存页在第一安全容器的第一线性地址;
获取所述安全内存页在第二安全容器中的第二线性地址;
将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址;
所述第二安全容器根据所述安全内存页中的字段进行函数计算,并将结果存放在所述安全内存页中。
6.如权利要求5所述的方法,还包括:
在所述安全内存页中存放第一安全容器的身份标签、共享随机数、第二安全容器的函数编号、安全内存页面数量、第一线性地址、第二线性地址、第一安全容器的线程控制信息以及第二安全容器的线程控制信息中的至少一项。
7.如权利要求5或6所述的方法,还包括:
将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第二安全容器的身份标签修改为第一安全容器的身份标签,以及将合法线性地址字段内容从第二线性地址修改为第一线性地址;
所述第一安全容器从所述安全内存页读取所述结果;以及
根据所述第一安全容器的线程控制信息,返回所述第一安全容器中对应的线程。
8.权利要求5或6所述的方法,其中,所述第二安全容器根据所述安全内存页中的字段进行函数计算,包括:
根据所述安全内存页中的第二安全容器的函数编号字段和第二安全容器的线程控制信息字段,找到需要用到的函数以及线程,通过读取所述安全内存页中的函数执行所需参数,进行函数计算。
CN202010033813.6A 2017-08-22 2017-08-22 内存页转移方法和函数调用方法 Active CN111259380B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010033813.6A CN111259380B (zh) 2017-08-22 2017-08-22 内存页转移方法和函数调用方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710726204.7A CN107392011B (zh) 2017-08-22 2017-08-22 一种内存页转移方法
CN202010033813.6A CN111259380B (zh) 2017-08-22 2017-08-22 内存页转移方法和函数调用方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201710726204.7A Division CN107392011B (zh) 2017-08-22 2017-08-22 一种内存页转移方法

Publications (2)

Publication Number Publication Date
CN111259380A CN111259380A (zh) 2020-06-09
CN111259380B true CN111259380B (zh) 2021-02-12

Family

ID=60353956

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010033813.6A Active CN111259380B (zh) 2017-08-22 2017-08-22 内存页转移方法和函数调用方法
CN201710726204.7A Active CN107392011B (zh) 2017-08-22 2017-08-22 一种内存页转移方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201710726204.7A Active CN107392011B (zh) 2017-08-22 2017-08-22 一种内存页转移方法

Country Status (1)

Country Link
CN (2) CN111259380B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290838B (zh) * 2020-05-09 2020-08-18 支付宝(杭州)信息技术有限公司 基于容器集群的应用访问请求处理方法及装置
CN116108454B (zh) * 2023-04-06 2023-06-30 支付宝(杭州)信息技术有限公司 内存页面管理方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750620A (zh) * 2015-04-23 2015-07-01 四川师范大学 一种内存迁移方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100476759C (zh) * 2004-03-16 2009-04-08 钟巨航 外存储器的虚拟分隔方法及其装置
CN101819564B (zh) * 2009-02-26 2013-04-17 国际商业机器公司 协助在虚拟机之间进行通信的方法和装置
KR101457355B1 (ko) * 2009-12-22 2014-11-04 인텔 코포레이션 보안 애플리케이션 실행을 제공하는 방법 및 장치
US8972746B2 (en) * 2010-12-17 2015-03-03 Intel Corporation Technique for supporting multiple secure enclaves
CN103136059A (zh) * 2011-11-24 2013-06-05 中兴通讯股份有限公司 一种内存区间相互隔离的程序之间的通讯方法及处理单元
US9323686B2 (en) * 2012-12-28 2016-04-26 Intel Corporation Paging in secure enclaves
US9747102B2 (en) * 2012-12-28 2017-08-29 Intel Corporation Memory management in secure enclaves
US9189411B2 (en) * 2012-12-28 2015-11-17 Intel Corporation Logging in secure enclaves
US20140189246A1 (en) * 2012-12-31 2014-07-03 Bin Xing Measuring applications loaded in secure enclaves at runtime
US9430384B2 (en) * 2013-03-31 2016-08-30 Intel Corporation Instructions and logic to provide advanced paging capabilities for secure enclave page caches
US9698989B2 (en) * 2013-07-23 2017-07-04 Intel Corporation Feature licensing in a secure processing environment
US9767044B2 (en) * 2013-09-24 2017-09-19 Intel Corporation Secure memory repartitioning
WO2015047442A1 (en) * 2013-09-27 2015-04-02 Mcafee, Inc. Trusted execution of an executable object on a local device
US9311508B2 (en) * 2013-12-27 2016-04-12 Intel Corporation Processors, methods, systems, and instructions to change addresses of pages of secure enclaves
US9355262B2 (en) * 2013-12-27 2016-05-31 Intel Corporation Modifying memory permissions in a secure processing environment
US9703733B2 (en) * 2014-06-27 2017-07-11 Intel Corporation Instructions and logic to interrupt and resume paging in a secure enclave page cache
US20160085695A1 (en) * 2014-09-24 2016-03-24 Intel Corporation Memory initialization in a protected region
CN104573553A (zh) * 2014-12-30 2015-04-29 中国航天科工集团第二研究院七O六所 一种面向Xen的虚拟机内存共享的安全隔离方法
US20170303150A1 (en) * 2016-02-16 2017-10-19 Saguna Networks Ltd. Methods Circuits Devices Systems and Functionally Associated Computer Executable Code to Support Edge Computing on a Communication Network
CN106777166A (zh) * 2016-12-21 2017-05-31 济南浪潮高新科技投资发展有限公司 一种利用Docker容器进行虚拟内存数据库存储的实现方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750620A (zh) * 2015-04-23 2015-07-01 四川师范大学 一种内存迁移方法及装置

Also Published As

Publication number Publication date
CN107392011B (zh) 2019-11-22
CN111259380A (zh) 2020-06-09
CN107392011A (zh) 2017-11-24

Similar Documents

Publication Publication Date Title
CN108959932B (zh) 用于可信执行环境的安全芯片存储器的技术
EP2889777B1 (en) Modifying memory permissions in a secure processing environment
CN109636592B (zh) 高性能智能合约设计
US7606995B2 (en) Allocating resources to partitions in a partitionable computer
CN107544918B (zh) 一种内存页共享方法
CN101872328B (zh) 在虚拟机环境中的客户机之间共享信息
CN112119423B (zh) 形式化验证的系统和方法
US9785378B2 (en) Tracking transformed memory pages in virtual machine chain migration
CN110442381A (zh) 用于保护有条件的推测性指令执行的影子缓存
DE102019108266A1 (de) Techniken zum bereitstellen von isolation auf funktionsebene mit auf fähigkeit basierender sicherheit
DE60044783D1 (de) Partitionierte speichervorrichtung mit merkmalen unterschiedlicher speichertechnologien
JP2017505492A (ja) 目標メモリ・アドレスに対応するメモリ属性ユニットの領域を特定するための領域特定演算
US20160350260A1 (en) Dynamic Non-Uniform Memory Architecture (NUMA) Locality for Remote Direct Memory Access (RDMA) Applications
CN106528269B (zh) 轻量级的虚拟机访问控制系统及控制方法
CN111259380B (zh) 内存页转移方法和函数调用方法
US20090228673A1 (en) Fine Granularity Hierarchiacal Memory Protection
EP1456759B1 (en) Access control method and device in an embedded system
US7668862B2 (en) System and method for controlling the use of a method in an object-oriented computing environment
CN110445765A (zh) 基于区块链的数据共享方法、终端设备及介质
US20220261489A1 (en) Capability management method and computer device
EP3631672B1 (en) Compute node security
CN107832121B (zh) 一种应用于分布式串行长事务的并发控制方法
US20040193832A1 (en) Physical mode windows
de Vivo et al. A brief essay on capabilities
CN112585590A (zh) 存储器访问控制

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 300000 North 2-204 industrial incubation-3-8, No. 18, Haitai West Road, Huayuan Industrial Zone, Binhai New Area, Tianjin

Applicant after: Haiguang Information Technology Co., Ltd

Address before: 300000 North 2-204 industrial incubation-3-8, No. 18, Haitai West Road, Huayuan Industrial Zone, Binhai New Area, Tianjin

Applicant before: HAIGUANG INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant