【技术实现步骤摘要】
内存页转移方法和函数调用方法本申请是申请日为2017年8月22日,申请号为201710726204.7、专利技术名称为“一种内存页转移方法”的专利技术专利申请的分案申请。
本专利技术涉及一种内存页转移方法和函数调用方法,尤其是涉及一种在多个enclave之间进行内存页相互转移和函数调用的方法。
技术介绍
Intel的SGX(SoftwareGuardExtensions)技术,是Intel公司为建立一个安全可靠的程序运行环境而提供的一套软硬件解决方案(包括新产生的17条相关指令,和对应的硬件设施)。与普通程序不同,安全容器(enclave)中的程序是运行在隔离的内存中(称为EPC,EnclavePageCache),所有非enclave的程序都将无法访问EPC,这是由硬件控制的。另外每个enclave的EPC物理页面都对应一个控制访问权限的EPCM(EnclavePageCacheMap)结构,只有自身的enclave才能访问自己的EPC物理页面,而别的enclave会因为无法通过EPCM检查而无法访问该页面,从而达 ...
【技术保护点】
1.一种内存页转移方法,包括:/n确定第一安全容器对应的待转移的安全内存页和所述安全内存页在第一安全容器的第一线性地址;/n获取所述安全内存页在第二安全容器中的第二线性地址;以及/n将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址。/n
【技术特征摘要】
1.一种内存页转移方法,包括:
确定第一安全容器对应的待转移的安全内存页和所述安全内存页在第一安全容器的第一线性地址;
获取所述安全内存页在第二安全容器中的第二线性地址;以及
将所述安全内存页的安全内存控制表中的安全内存页归属字段内容从第一安全容器的身份标签修改为第二安全容器的身份标签,以及将合法线性地址字段内容从第一线性地址修改为第二线性地址。
2.如权利要求1所述的方法,还包括:所述第一安全容器与所述第二安全容器进行相互认证,如果认证成功,则相互交换各自安全容器身份标签、所述第一线性地址和所述第二线性地址,以及共享随机数。
3.如权利要求1或2所述的方法,还包括:
在所述安全内存页中存放第一安全容器的身份标签、共享随机数、第二安全容器的函数编号、待转移的安全内存页面数量、所述第一线性地址、所述第二线性地址、第一安全容器的线程控制信息以及第二安全容器的线程控制信息中的至少一项。
4.如权利要求3所述的方法,还包括:在所述安全内存页中存放函数执行所需要的参数以及函数执行的结果。
5.一种函数调用方法,包括:
接收第一安全容器调用第二安全容器的函数的请求;
确定第一安全容器对应的安全内存页和所述安全内存页在第一安全容器的第一线性地址;
获取所述安全内存页在第二安全容器中的第二线性地址...
【专利技术属性】
技术研发人员:吴宇,杜朝晖,应志伟,
申请(专利权)人:海光信息技术有限公司,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。