一种安全芯片配置方法及设备与流程

文档序号:34861730发布日期:2023-07-23 10:39阅读:54来源:国知局
一种安全芯片配置方法及设备与流程

本发明涉及计算机领域,尤其涉及一种安全芯片配置方法及设备。


背景技术:

1、tpcm是一个集成在可信平台中的硬件模块,是主动免疫可信体系的可信根,主要用于建立和保障信任源点,提供可信平台控制、完整性度量、安全存储、可信报告以及密码服务等一系列可信计算功能。通过主动度量控制芯片(tpcm)植入可信源根,在tcm基础上加以信任根控制功能,实现密码与控制相结合,将可信平台控制模块设计为可信计算控制节点,实现了tpcm对整个平台的主动控制。平台完整性报告是指可信计算平台将平台软硬件系统的完整性状态传送给可信验证方,以便向可验证方报告待验证平台的完整性状态,然后再由可信验证方根据平台的完整性报告,结合完整性参考值和度量操作的工作日志对平台状态进行可信验证。tpcm在平台完整性度量结束后,对度量结果进行比较,同时还将错误的度量结果通过触发中断方式主动报告给平台。

2、当前云服务允许每个虚拟机拥有自己的操作系统和应用程序,不同的虚拟机的操作系统和应用程序可以不相同。因此,对于云服务器上虚拟机运行异构操作系统和不同应用程序,不能通过固定的度量值实现对所有虚拟机的安全控制,需要在安全芯片内设计一种可信的虚拟机安全校验方法,使得安全芯片实现对运行异构操作系统的虚拟机的可信管理。


技术实现思路

1、针对上述现有技术中存在的缺陷,本发明提供一种安全芯片配置方法,所述安全芯片包括任务模块、地址分配模块、校验模块、定时模块、第一随机数生成模块以及第二随机数生成模块,所述方法包括:

2、启动所述定时模块,所述任务模块开始接收并存储启动请求至请求列表,所述启动请求用于请求启动虚拟机,所述启动请求中包括所述虚拟机运行的操作系统和应用程序列表;

3、所述定时模块到达预设时长后,所述任务模块将请求列表发送至地址分配模块,以及清空请求列表;

4、所述地址分配模块接收所述请求列表,获取所述请求列表的项数,将所述项数发送至第一随机数生成模块,并接收第一随机数生成模块返回的包含个随机数的随机数列表;

5、所述地址分配模块基于所述随机数列表以及所述请求列表为所述请求列表中的每一项启动请求分配物理地址空间,所述请求列表中的启动请求的物理地址空间连续;

6、所述请求列表对应的虚拟机全部加载完毕后,所述校验模块对全部所述虚拟机进行安全校验,所述安全校验包括对虚拟机进行加载位置验证,所述加载位置验证基于所述第二随机数生成模块生成的校验随机数。

7、其中,在所述定时模块到达预设时长后重置定时模块时长为0,重新启动所述定时模块,所述任务模块新建请求列表,将重启定时模块后接收到的启动请求存储到新建请求列表中,所述任务模块将原请求列表发送至地址分配模块后,清空所述原请求列表。

8、其中,所述物理地址空间以页表为单位进行地址分配;

9、所述第一随机数生成模块生成的随机数大于等于零且小于页表大小;

10、按照虚拟机启动请求在所述请求列表出现的先后顺序中为所述虚拟机分配页表,在所述请求列表相邻的虚拟机对应的页表是连续的;

11、获取所述虚拟机启动请求在请求列表中的位置,将随机数列表对应位置的随机数指示的值作为所述虚拟机的页表加载起始位置。

12、其中,所述地址分配模块根据所述虚拟机运行的操作系统和应用程序列表,确定为所述虚拟机分配的页表数量,包括:

13、当所述地址分配模块计算所述虚拟机运行的操作系统和应用程序列表的初始占用内存大小需要个页表时,为所述虚拟机分配个页表;

14、所述初始占用内存大小为加载所述操作系统所需存储空间和所述应用程序列表中所有应用程序所需存储空间之和。

15、其中,所述地址分配模块中存储有地址分配列表;

16、所述地址分配模块根据页表加载起始位置、初始占用内存大小、分配的页表数量确定所述虚拟机初始剩余内存;

17、所述地址分配模块对请求列表中的虚拟机完成地址分配后,将所述虚拟机的地址分配信息添加到地址分配列表;

18、所述地址分配列表中包括为请求列表中的每一虚拟机确定的页表加载起始位置、初始占用内存大小、分配的页表数量、分配的页表序号范围、以及所述虚拟机初始剩余内存。

19、其中,所述安全校验包括对虚拟机进行加载位置验证,包括:

20、确定虚拟机对应的第一校验值和第二校验值,将所述第一校验值和第二校验值发送至校验模块;

21、所述校验模块接收到所述虚拟机的校验值后,向所述地址分配模块发送请求校验信息;

22、所述地址分配模块收到所述请求校验信息后,向所述校验模块发送第三校验值和第四校验值;

23、所述校验模块判断所述第一校验值与第三校验值相同,以及第二校验值与第四校验值相同,确定所述虚拟机通过安全校验;

24、所述校验模块判断所述第一校验值与第三校验值不相同,或者第二校验值与第四校验值不相同,确定所述虚拟机未通过安全校验,以及不启动所述虚拟机。

25、其中,由虚拟机监视器生成所述第一校验值和第二校验值;

26、在所述虚拟机监视器生成所述第一校验值和第二校验值之前,向所述第二随机数生成模块请求所述虚拟机对应的校验随机数和哈希函数;

27、所述第二随机数生成模块生成所述虚拟机对应的校验随机数,将所述校验随机数、哈希函数和对应的虚拟机标识发送给所述虚拟机监视器和所述地址分配模块;

28、其中,不同虚拟机对应的校验随机数不相同。

29、其中,由虚拟机监视器根据所述虚拟机的实际页表加载起始位置 a、实际初始占用内存大小 b、以及实际初始剩余内存 c生成所述第一校验值和第二校验值,包括:

30、所述虚拟机监视器计算所述虚拟机的实际页表加载起始位置 a、实际初始占用内存大小 b、以及实际初始剩余内存 c之和 m=a+b+c,根据所述虚拟机对应的哈希函数生成第一校验值 hash(m);

31、以及所述虚拟机监视器计算 n=b-a-c,根据所述虚拟机对应的哈希函数生成第二校验值 hash(n)。

32、其中,所述地址分配模块收到所述第二随机数生成模块发送的所述校验随机数、哈希函数和对应的虚拟机标识所述请求校验信息后,计算第三校验值和第四校验值,在所述校验模块发送请求校验信息后,向所述校验模块发送第三校验值和第四校验值;

33、其中,所述地址分配模块计算第三校验值和第四校验值,包括:

34、所述地址分配模块确定所述虚拟机对应的分配的页表数量 o以及页表大小 pagesize,根据所述虚拟机对应的哈希函数生成第三校验值 hash(o×pagesize);

35、以及所述地址分配模块获取地址分配列表中的页表加载起始位置 x、初始占用内存大小 y以及所述虚拟机初始剩余内存 z,确定 r=y-x-z,根据所述虚拟机对应的哈希函数生成第四校验值 hash(r)。

36、本发明还提出了一种计算机设备,所述设备包括安全芯片,所述安全芯片为tpcm芯片,所述安全芯片内包括存储器和处理器,所述存储器被配置成在其上存储计算机程序指令,所述计算机程序指令当在所述处理器上执行时促使所述处理器执行前述任一项所述的安全芯片配置方法。

37、与现有技术相比,通过本发明的方法使得安全芯片基于虚拟机的操作系统和应用程序的文件大小、以及通过随机页加载位置进行安全校验,以及通过校验随机数对安全芯片在校验过程中传输的用于虚拟机安全验证的数据进行保护,实现安全芯片实现对运行异构操作系统的虚拟机的可信管理。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1