基于数据压缩的可信平台控制系统及可信固件恢复方法与流程

文档序号:35982913发布日期:2023-11-10 02:48阅读:39来源:国知局
基于数据压缩的可信平台控制系统及可信固件恢复方法与流程

本发明涉及可信计算机,具体涉及基于数据压缩的可信平台控制系统及可信固件恢复方法。


背景技术:

1、本节中的陈述仅提供与本公开相关的背景信息,并且可能不构成现有技术。

2、在目前的可信计算机技术领域中,系统启动过程中,是通过执行保存在可信平台模块(tcm)中的可度量核心根(core root of trust for measurement,crtm)发起对关键硬件信息和操作系统核心文件的可信度量;若可信固件受到攻击或损坏,需要进行可信固件的恢复,否则会导致可信计算机无法启动。

3、目前主流的恢复方法为:tcm先从可信固件备份区读取备份数据至通用计算内存区,接着tcm度量通用计算内存区中的可信固件,度量通过后将可信固件回写至可信固件存储区完成恢复;但是此方法将可信固件备份数据存储在tcm片外,容易遭受恶意攻击,导致可信计算机在受到攻击后瘫痪并且无法恢复,安全性较低;而将备份数据存储在tcm内是一种较好的解决方案,但可信固件备份数据占用空间较大,现有tcm的性能难以满足。

4、而无损数据压缩算法可以将文件数据进行有效压缩,即可以完全还原被压缩的数据,适用于文件数据等不能容忍丢失的场合进行使用;因此,若需将可信固件数据备份存储在tcm内以提高其恢复的安全性,就需要研究基于数据压缩的可信平台控制系统及可信固件恢复方法;该技术可将可信固件数据进行压缩并存储在tcm内,当需要对可信固件进行恢复时,tcm先从自身存储区读取压缩后的可信固件数据并进行完整性校验;校验成功后进行解压,并将解压后的可信固件回写至可信固件存储区;最后,tcm度量存储区中的可信固件,度量成功则完成可信固件的恢复;通过此方法,能够在现有tcm性能不变的情况下,提高可信固件恢复的安全性。


技术实现思路

1、本发明的目的在于:针对现有技术中存在的可信固件备份的问题,提供了基于数据压缩的可信平台控制系统及可信固件恢复方法,将数据压缩算法应用到可信固件的恢复中,改变固件恢复的传统思路,通过自主设计的可信固件恢复方法对可信固件进行恢复;在可信计算机启动过程中,tcm作为计算机的主动设备最先加电,先于可信固件启动,构建以tcm模块为信任根的信任链;接着可信固件启动,若启动过程中tcm对可信固件的度量失败,tcm从自身固件备份区中读取固件压缩数据并进行完整性校验;校验成功后tcm调用压缩算法对其进行解压,并将解压后的数据回写至可信固件存储区,最后对存储区中的数据进行度量,度量成功则可信固件恢复完成,可信固件启动;从而解决了上述问题。

2、本发明的技术方案如下:

3、基于数据压缩的可信平台控制系统,包括:

4、可信平台控制模块,所述可信平台控制模块建立了以可信平台控制模块芯片为信任根的计算平台信任链,由可信平台控制模块芯片控制可信计算机;

5、可信固件恢复控制电路,所述可信固件恢复控制电路由可信平台控制模块内的逻辑控制电路和可信计算机的主板上的相关接口电路组成,所述可信平台控制模块通过可信固件恢复控制电路控制可信固件恢复的整个过程;

6、可信固件恢复控制程序,所述可信固件恢复控制程序工作在可信平台控制模块上,用于可信固件的恢复。

7、进一步地,所述可信平台控制模块与可信计算机主板连接,与可信固件及可信计算机的外围设备组成可信平台,为可信计算机的系统软件和应用软件提供可信度量、可信存储和可信报告。

8、进一步地,所述可信平台控制模块,包括:

9、定时器;

10、执行引擎,所述执行引擎用于可信平台对可信平台控制模块所下发指令的执行;

11、控制裁决引擎,所述控制裁决引擎用于可信平台对使用可信平台控制模块的请求进行判断;

12、非易失性存储单元,所述非易失性存储单元内存储有核心度量根;且所述非易失性存储单元内设有可信固件压缩存储区,用于储存可信固件压缩数据;

13、易失性存储单元,所述易失性存储单元设有平台配置寄存器pcr,用于临时存储可信平台的度量值;

14、随机数发生器,所述随机数发生器用于可信平台控制模块内部随机数的产生;

15、算法引擎,所述算法引擎用于可信平台控制模块内部算法的执行,所述算法,包括:数据压缩算法;

16、所述定时器、执行引擎、控制裁决引擎、非易失性存储单元、易失性存储单元、随机数发生器、算法引擎、平台配置寄存器pcr由输入输出桥接单元进行地址空间的映射。

17、进一步地,所述可信固件恢复控制电路,包括:

18、可信计算机的主板上的cpu通过gpio接口和spi接口与可信平台控制模块内的逻辑控制电路连接,实现cpu复位控制信号和可信固件数据的传输;

19、可信计算机的主板上的可信固件储存区通过spi接口与可信平台控制模块内的逻辑控制电路连接,实现数据传输;

20、可信计算机的主板上的reset与可信平台控制模块内的逻辑控制电路连接,实现主机系统复位控制信号的传输。

21、进一步地,所述可信平台控制模块通过可信固件恢复控制电路控制cpu的复位信号和cpu对可信固件的数据访问通道来控制可信固件恢复的整个过程;当可信固件损坏时,可信平台控制模块首先控制cpu的复位信号使其处于复位状态,同时控制可信固件的访问通道,可信固件恢复控制电路根据恢复过程中收到的控制信息来控制整个可信固件恢复流程。

22、进一步地,所述可信固件恢复控制程序,包括:

23、可信固件驱动,所述可信固件驱动用于可信平台控制模块与可信固件之间进行通信;

24、控制信号产生模块,所述控制信号产生模块用于依据可信平台控制模块的特定指令,发出相应的控制信号;

25、逻辑控制电路驱动,所述逻辑控制电路驱动用于可信平台控制模块与逻辑控制电路之间进行通信。

26、进一步地,当主机系统复位时,可信平台控制模块首先执行核心度量根,接着对可信固件实施可信度量判断是否需要进行可信固件的恢复;若需要进行可信固件的恢复则向逻辑控制电路发送控制信号,控制对可信固件压缩存储区中数据的访问以及流程中各种情况的处理。

27、基于数据压缩的可信固件恢复方法,基于上述的可信平台控制系统,包括:

28、步骤s1:可信计算机加电启动,通过可信固件恢复控制电路(主动度量控制电路)拉住cpu,使可信平台控制模块作为可信根首先启动,获得可信度量权;

29、步骤s2:可信平台控制模块对可信固件实施可信度量,若可信度量成功,释放可信固件启动控制信号,将信任链传递到可信固件;若可信度量失败,则通过可信平台控制系统进行可信固件的恢复。

30、进一步地,所述步骤s1,包括:

31、步骤s11:可信计算机加电启动;

32、步骤s12:可信平台控制模块通过可信固件恢复控制电路向cpu发送复位信号,cpu收到复位信号,将控制权交给可信平台控制模块;

33、步骤s13:可信平台控制模块启动,度量可信固件储存区中的可信固件。

34、进一步地,所述步骤s2,包括:

35、步骤s21:可信平台控制模块对可信固件实施可信度量,若可信度量成功,则可信固件启动,将启动权传递给下一固件,或者启动操作系统进行开机;若可信度量失败,则将可信固件压缩存储区中的可信固件压缩数据读取到易失性存储单元内;

36、步骤s22:可信平台控制模块对所述可信固件压缩数据进行完整性校验,若校验失败则关机;若完整性校验通过,则可信平台控制模块基于数据压缩算法,通过算法引擎对可信固件压缩数据进行解压;

37、步骤s23:解压完成后,可信平台控制模块将解压后的数据回写至可信固件存储区,并对可信固件存储区中的可信固件进行可信度量,若可信度量失败则回到步骤s21;若可信度量成功,则可信固件启动,将启动权传递给下一固件,或者启动操作系统进行开机。

38、与现有的技术相比本发明的有益效果是:

39、基于数据压缩的可信平台控制系统及可信固件恢复方法,可在现有tcm性能不变的情况下,增强可信固件恢复的安全性;由于使用了无损数据压缩算法,将可信固件的备份程序压缩存储在tcm的非易失性存储单元中,在检测到可信固件损坏时,tcm对其校验并解压以进行可信固件的恢复;并且在恢复过程中,由于将固件压缩数据解压并回写至可信固件存储区后,再对存储区中的可信固件进行度量,保证了整个恢复流程的安全可信,本发明可以很好的应用到高安全等级计算平台中,提高可信固件恢复的性能与安全性。

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