信息配置方法、直接存储访问方法及相关装置制造方法及图纸

技术编号:27536444 阅读:21 留言:0更新日期:2021-03-03 11:23
本申请实施例提供一种信息配置方法、直接存储访问方法及相关装置,其中信息配置方法包括:获取加密虚拟机的配置请求,所述配置请求至少包括待所述加密虚拟机访问的加密数据的GPA、用于传输所述加密数据的DMA设备的设备标识和所述加密数据的密钥信息;基于所述配置请求,创建对应所述GPA的密钥页表项,并将所述加密数据的密钥信息存储至所述密钥页表项指向的内存空间;生成配置信息,所述配置信息至少包括所述GPA、所述密钥页表项对应的密钥地址信息和所述设备标识;将所述配置信息发送给IOMMU,以使所述IOMMU在与所述设备标识对应的数据项中配置所述密钥地址信息,使加密虚拟机能够直接、高效的对DMA设备进行数据读写。高效的对DMA设备进行数据读写。高效的对DMA设备进行数据读写。

【技术实现步骤摘要】
信息配置方法、直接存储访问方法及相关装置


[0001]本申请实施例涉及虚拟机
,具体涉及一种信息配置方法、直接存储访问方法及相关装置。

技术介绍

[0002]通过虚拟化技术(Virtualization),主机可虚拟化出多台虚拟机(Virtual Machine,VM),从而高效利用主机的硬件资源;虚拟化出的虚拟机可在物理主机中分配虚拟机内存空间等,每台虚拟机的虚拟机内存空间主要用于任务消耗及支持虚拟化。
[0003]为提高虚拟机的安全性,可对虚拟机的内存空间进行加密,其中,被加密的虚拟机内存空间可称为加密内存空间,相应的虚拟机可称为加密虚拟机。
[0004]在计算机体系中,加密虚拟机存在对DMA(Direct Memory Access,直接存储访问)设备进行数据读写的需求,如DMA设备为硬盘,加密虚拟机可以DMA方式,对硬盘进行数据读写;而在DMA设备也存在数据加密需求的情况下(如硬盘中的数据出于安全考虑,存在加密需求),由于加密虚拟机的加密内存空间和DMA设备内的数据均处于加密状态,且加密虚拟机使用的密钥与DMA设备加密使用的密钥可能不同,这导致加密虚拟机无法直接、高效的对DMA设备进行数据读写。因此,如何提供改进方案,以使加密虚拟机能够直接、高效的对DMA设备进行数据读写,成为了本领域技术人员亟需解决的技术问题。

技术实现思路

[0005]有鉴于此,本申请实施例提供一种信息配置方法、直接存储访问方法及相关装置,以使加密虚拟机能够直接、高效的对DMA设备进行数据读写。/>[0006]为实现上述目的,本申请实施例提供如下技术方案:
[0007]一种信息配置方法,应用于安全处理器,所述方法包括:
[0008]获取加密虚拟机的配置请求,所述配置请求至少包括待所述加密虚拟机访问的加密数据的虚拟物理地址GPA、用于传输所述加密数据的直接存储访问DMA设备的设备标识和所述加密数据的密钥信息;
[0009]基于所述配置请求,创建对应所述GPA的密钥页表项,并将所述加密数据的密钥信息存储至所述密钥页表项指向的内存空间;
[0010]生成配置信息,所述配置信息至少包括所述GPA、所述密钥页表项对应的密钥地址信息和所述设备标识;
[0011]将所述配置信息发送给与所述DMA设备对应的输入输出内存管理单元IOMMU,以使所述IOMMU在与所述设备标识对应的数据项中配置所述密钥地址信息。
[0012]本申请实施例还提供另一种信息配置方法,应用于输入输出内存管理单元IOMMU,所述方法包括:
[0013]获取安全处理器发送的配置信息,所述配置信息至少包括:待加密虚拟机访问的加密数据的虚拟物理地址GPA、与所述GPA的密钥页表项对应的密钥地址信息和存储所述加
密数据的直接存储访问DMA设备的设备标识;其中,所述加密数据的密钥信息存储在所述密钥页表项指向的内存空间;
[0014]确定与所述设备标识对应的数据项;
[0015]在所述数据项中配置所述密钥地址信息。
[0016]本申请实施例还提供一种直接存储访问方法,上述应用于IOMMU的信息配置方法,所述直接存储访问方法应用于输入输出内存管理单元IOMMU,包括:
[0017]获取针对直接存储访问DMA设备的DMA请求,所述DMA请求至少包括待访问的DMA设备的设备标识和虚拟物理地址GPA;
[0018]确定配置在所述DMA设备的数据项中的密钥地址信息;
[0019]根据所述密钥地址信息和所述GPA查询对应所述DMA设备的密钥信息;
[0020]为内存控制器配置所述密钥信息,以使内存控制器基于所述密钥信息,针对加密虚拟机对DMA设备读写的数据进行加解密。
[0021]本申请实施例还提供一种信息配置装置,包括:
[0022]配置请求获取模块,用于获取加密虚拟机的配置请求,所述配置请求至少包括待所述加密虚拟机访问的加密数据的虚拟物理地址GPA、用于传输所述加密数据的直接存储访问DMA设备的设备标识和所述加密数据的密钥信息;
[0023]页表项创建模块,用于基于所述配置请求,创建对应所述GPA的密钥页表项,并将所述加密数据的密钥信息存储至所述密钥页表项指向的内存空间;
[0024]配置信息生成模块,用于生成配置信息,所述配置信息至少包括所述GPA、所述密钥页表项对应的密钥地址信息和所述设备标识;
[0025]配置信息发送模块,用于将所述配置信息发送给与所述DMA设备对应的输入输出内存管理单元IOMMU,以使所述IOMMU在与所述设备标识对应的数据项中配置所述密钥地址信息。
[0026]本申请实施例还提供另一种信息配置装置,包括:
[0027]配置信息获取模块,用于获取安全处理器发送的配置信息,所述配置信息至少包括:待加密虚拟机访问的加密数据的虚拟物理地址GPA、与所述GPA的密钥页表项对应的密钥地址信息和存储所述加密数据的直接存储访问DMA设备的设备标识;其中,所述加密数据的密钥信息存储在所述密钥页表项指向的内存空间;
[0028]数据项确定模块,用于确定与所述设备标识对应的数据项;
[0029]地址信息配置模块,用于在所述数据项中配置所述密钥地址信息。
[0030]本申请实施例还提供一种直接存储访问装置,包括:
[0031]访问请求获取模块,用于获取针对直接存储访问DMA设备的DMA请求,所述DMA请求至少包括待访问的DMA设备的设备标识和虚拟物理地址GPA;
[0032]地址信息确定模块,用于确定配置在所述DMA设备的数据项中的密钥地址信息;
[0033]密钥页表查询模块,用于根据所述密钥地址信息和所述GPA查询对应所述DMA设备的密钥信息;
[0034]密钥信息配置模块,用于为内存控制器配置所述密钥信息,以使内存控制器基于所述密钥信息,针对加密虚拟机对DMA设备读写的数据进行加解密。
[0035]本申请实施例还提供一种安全处理器,所述安全处理器被配置为执行如上述所述
的应用于安全处理器的信息配置方法。
[0036]本申请实施例还提供一种输入输出内存管理单元IOMMU,所述IOMMU被配置为执行如上述所述的应用于IOMMU的信息配置方法,和/或,执行如上述所述的应用于IOMMU的直接存储访问方法。
[0037]本申请实施例还提供一种电子设备,包括如上述所述的安全处理器,以及如上述所述的输入输出内存管理单元IOMMU。
[0038]本申请实施例提供的信息配置方法中,安全处理器可获取加密虚拟机用于信息配置的配置请求,所述配置请求至少包括待加密虚拟机访问的加密数据的虚拟物理地址GPA、存储所述加密数据的直接存储访问DMA设备的设备标识和所述加密数据的密钥信息;从而,安全处理器基于所述配置请求创建对应所述GPA的密钥页表项,并将所述加密数据的密钥信息存储至所述密钥页表项指向的内存空间,并进一步生成配置信息,所述配置信息至少包本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种信息配置方法,其特征在于,应用于安全处理器,所述方法包括:获取加密虚拟机的配置请求,所述配置请求至少包括待所述加密虚拟机访问的加密数据的虚拟物理地址GPA、用于传输所述加密数据的直接存储访问DMA设备的设备标识和所述加密数据的密钥信息;基于所述配置请求,创建对应所述GPA的密钥页表项,并将所述加密数据的密钥信息存储至所述密钥页表项指向的内存空间;生成配置信息,所述配置信息至少包括所述GPA、所述密钥页表项对应的密钥地址信息和所述设备标识;将所述配置信息发送给与所述DMA设备对应的输入输出内存管理单元IOMMU,以使所述IOMMU在与所述设备标识对应的数据项中配置所述密钥地址信息。2.根据权利要求1所述的信息配置方法,其特征在于,所述安全处理器通过所述安全处理器与所述IOMMU的接口发送所述配置信息。3.根据权利要求1所述的信息配置方法,其特征在于,所述数据项具体为设备表中的设备表项DTE,其中,一项DTE用于记录IOMMU连接的一DMA设备的基本设备信息,并以DMA设备的设备标识进行索引。4.根据权利要求3所述的信息配置方法,其特征在于,所述DTE中设置有64位的密钥页表根目录key table root pointer字段,所述密钥地址信息配置在所述key table root pointer字段。5.根据权利要求1所述的信息配置方法,其特征在于,所述数据项中配置的所述密钥地址信息仅支持安全处理器和IOMMU访问。6.根据权利要求1所述的信息配置方法,其特征在于,所述配置请求还包括:所述加密虚拟机计算的所述配置请求的第一完整性校验数据;在生成配置信息之前,所述方法还包括:计算所述配置请求的第二完整性校验数据;基于所述第一完整性校验数据和所述第二完整性校验数据,校验所述配置请求是否完整,若校验所述配置请求完整,进入执行所述基于所述配置请求生成配置信息的步骤。7.根据权利要求6所述的信息配置方法,其特征在于,还包括:若校验所述配置请求不完整,向所述加密虚拟机反馈第一配置结果信息,其中,所述第一配置结果信息至少包括配置失败的应答信息,以使所述加密虚拟机确定所述信息配置失败。8.根据权利要求6所述的信息配置方法,其特征在于,还包括:若所述数据项中成功配置所述密钥地址信息,向所述加密虚拟机反馈第二配置结果信息,其中,所述第二配置结果信息至少包括配置成功的应答信息,以使所述加密虚拟机确定所述信息配置成功。9.根据权利要求8所述的信息配置方法,其特征在于,所述数据项中成功配置所述密钥地址信息的情况包括:获取所述IOMMU发送的配置成功通知,或,在校验所述配置请求完整且将所述配置信息发送给所述IOMMU后,默认所述数据项中成功配置所述虚拟机标识。10.根据权利要求1-9任一项所述的信息配置方法,其特征在于,所述安全处理器与所述加密虚拟机通过所述加密内存页面进行交互;
其中,所述加密虚拟机运行于虚拟机模式,以虚拟机物理地址GPA访问所述内存加密内存页面,所述安全处理器运行于主机模式,以所述HPA访问所述内存加密内存页面,所述GPA与所述HPA通过嵌套页表NPT进行转换;并且,加密虚拟机通过退出虚拟机模式以进入主机模式,在主机模式下,安全处理器通过控制主机内核执行虚拟机运行指令,以返回虚拟机模式。11.一种信息配置方法,其特征在于,应用于输入输出内存管理单元IOMMU,所述方法包括:获取安全处理器发送的配置信息,所述配置信息至少包括:待加密虚拟机访问的加密数据的虚拟物理地址GPA、与所述GPA的密钥页表项对应的密钥地址信息和存储所述加密数据的直接存储访问DMA设备的设备标识;其中,所述加密数据的密钥信息存储在所述密钥页表项指向的内存空间;确定与所述设备标识对应的数据项;在所述数据项中配置所述密钥地址信息。12.根据权利要求11所述的信息配置方法,其特征在于,所述安全处理器通过所述安全处理器与所述IOMMU的接口发送所述配置信息。13.根据权利要求11所述的信息配置方法,其特征在于,所述数据项具体为设备表中的设备表项DTE,其中,一项DTE用于记录IOMMU连接的一DMA设备的基本设备信息,并以DMA设备的设备标识进行索引。14.根据权利要求13所述的信息配置方法,其特征在于,所述DTE中设置有64位的密钥页表根目录key table root pointer字段,所述密钥地址信息配置在所述key table root pointer字段。15.根据权利要求11所述的信息配置方法,其特征在于,所述数据项中配置的所述密钥地...

【专利技术属性】
技术研发人员:姜新应志伟
申请(专利权)人:海光信息技术股份有限公司
类型:发明
国别省市:

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

1