本说明书实施例提出了一种虚拟机监控器秘密的保护方法、装置和电子设备,其中,上述虚拟机监控器秘密的保护方法中,Host OS kernel从initramfs中加载虚拟机监控器,度量虚拟机监控器的完整性,将完整性度量值扩展到TPM的寄存器中,之后在任何用户态应用执行之前启动虚拟机监控器;虚拟机监控器在TPM的非易失存储器中查找加密数据;如果查找到,则虚拟机监控器读取所述加密数据,使用TPM的寄存器中的所述完整性度量值,对所述加密数据进行解封操作,获得秘密,并将所述秘密保存在所述虚拟机监控器的内存中;所述虚拟机监控器扩展常数到TPM的寄存器中,掩盖TPM的寄存器中的所述完整性度量值。
本说明书实施例提出了一种虚拟机监控器的加载方法、装置和电子设备,其中,上述虚拟机监控器的加载方法中,操作系统的启动加载器(boot loader)加载Host OS kernel和initramfs之后,上述Host OS kernel将上述initramfs安装到内存中的临时根目录(/),将控制权转移给上述initramfs的内存中的临时根目录下的初始化程序(/init),进入早期用户空间开始执行,然后上述initramfs的初始化程序调用钩子函数进行hypervisor的加载,在上述hypervisor加载完成之后,上述initramfs的初始化程序完成对磁盘上的真正根文件系统的安装(mount),并将控制权移交给上述真正根文件系统下的初始化程序。从而可以实现在系统完成内核加载之后并且进入用户空间之前实现虚拟机监控器的可信加载。