在机密计算架构中管理内存的方法和装置制造方法及图纸

技术编号:38466769 阅读:32 留言:0更新日期:2023-08-11 14:43
本说明书实施例提供一种在机密计算架构中管理内存的方法和装置。机密计算架构包括,安全世界,领域世界,非安全世界,根世界;对应方法包括:非安全世界的操作系统在非安全世界的内存中,为非安全世界的第一可信应用分配第一内存区段。根世界中的根监视器更新总颗粒度保护表GPT,使得在更新后的总GPT中,所述第一内存区段的访问权限被设置为不可访问。此外,根监视器还针对第一可信应用创建第一颗粒度保护表GPT,在所述第一GPT中,所述第一内存区段的访问权限被设置为可访问的非安全内存。段的访问权限被设置为可访问的非安全内存。段的访问权限被设置为可访问的非安全内存。

【技术实现步骤摘要】
在机密计算架构中管理内存的方法和装置


[0001]本说明书一个或多个实施例涉及机密计算框架,尤其涉及一种在机密计算框架中管理内存的方法及装置。

技术介绍

[0002]随着各行业计算技术的发展,以及云端和终端用户的增加,人们将大量数据存储在各种计算机设备中。在行业发展的同时,人们对于设备和数据安全的关注也在日益增加。为了确保设备和数据的安全性,各个架构厂商也分别提出了各自的解决方案,如ARM提出了可信区技术(TrustZone),AMD提出了安全虚拟机加密技术(SEV),英特尔提出了软件防护扩展(SGX)技术,等等。这些解决方案为用户提供一个安全的可信执行环境,用于机密地保存和处理数据,使其免受不可信的内核与传统应用程序的损害。以Arm可信区技术为例,它将传统内核和应用程序的运行环境视作为非安全世界,并创建了一个隔离的安全世界,以及定义了具有最高权限的安全层用于世界切换。非安全世界将无法直接访问安全世界,需要经过安全层的固件验证才能访问特定的资源。
[0003]在Arm可信区技术的框架下,用户态的应用一般运行于非安全世界中,因此,用户态应本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种在机密计算架构中管理内存的方法,所述机密计算架构包括,安全世界,领域世界,非安全世界,根世界;所述方法包括:非安全世界的操作系统在非安全世界的内存中,为非安全世界的第一可信应用分配第一内存区段;根世界中的根监视器更新总颗粒度保护表GPT,使得在更新后的总GPT中,所述第一内存区段的访问权限被设置为不可访问;所述根监视器针对所述第一可信应用创建第一颗粒度保护表GPT,在所述第一GPT中,所述第一内存区段的访问权限被设置为可访问的非安全内存。2.根据权利要求1所述的方法,其中,为非安全世界的第一可信应用分配第一内存区段包括:所述操作系统从预先分配的内存池中确定出所述第一内存区段;所述内存池是采用连续内存分配器CMA分配的一段内存页物理地址连续的内存。3.根据权利要求1所述的方法,其中,在所述第一GPT中,所述安全世界,领域世界和根世界的内存区段,以及非安全世界中分配给其他可信应用的内存区段,均被设置为不可访问。4.根据权利要求1所述的方法,还包括:所述根监视器对所述第一内存区段进行有效性验证,所述有效性验证包括,验证是否与其他已分配内存重叠。5.根据权利要求1所述的方法,其中,所述总GPT和所述第一GPT存储在内存的根世界部分中。6.根据权利要求1所述的方法,还包括:响应于CPU发出内存访问请求,所述根监视器根据CPU当前运行的应用,从已维护的GPT集中确定目标GPT,并将目标GPT设置为对所述内存访问请求进行颗粒度保护检查的基础;所述已维护的GPT集包括所述总GPT和所述第一GPT。7.根据权利要求6所述的方法,其中,所述根监视器根据CPU当前运行的应用,从已维护的GPT集中确定目标GPT,包括:若CPU当前运行的应用为所述第一可信应用,所述根监视器确定所述目标GPT为所述第一GPT;若CPU当前运行的应用不是用户态可信应用,所述根监视器确定所述目标GPT为所述总GPT。8.根据权利要求6所述的方法,其中,将目标GPT设置为对所述内存访问请求进行颗粒度保护检查的基础,包括:获取所述目标GPT在内存中的物理地址作为目标基地址;将所述CPU的GPT基地址寄存器设置为所述目标基地址。9.根据权利要求6所述的方法,其中,所述CPU包括第一内核和第二内核;所述根监视器根据CPU当前运行的应用,从已维护的G...

【专利技术属性】
技术研发人员:张锋巍张一鸣胡煜鑫黄浩洋闫守孟何征宇
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1