中央处理器和验证主机板数据的方法

文档序号:8922891阅读:521来源:国知局
中央处理器和验证主机板数据的方法
【技术领域】
[0001]本发明涉及计算机系统,更具体地,涉及具有主机板数据验证功能的中央处理器和验证主机板数据的方法。
【背景技术】
[0002]近来,计算机系统在各领域得到广泛的应用。由于信息网络的普及,计算机系统的安全问题日益受到关注。通过网络传播的恶意应用程序可能通过窃取、篡改、删除计算机系统中存储的数据给用户造成损失。
[0003]计算机系统在开机时,是依据储存在主机板上的只读存储器(Read OnlyMemory, ROM)中的系统初始化指令,例如基本输入输出系统(Basic Input OutputSystem, B1S)或扩展固件接口(Extensible Firmware Interface, EFI),来完成最初的启动和初始化过程。开机过程中,还可能需要从主机板中读取其他数据,例如,为了更新中央处理器(Central Processing Unit, CPU)中的微代码,从主机板中读取微代码(ucode)补丁 (patch)ο
[0004]为了确保上述储存在主机板上的数据(例如前述系统初始化指令或者微代码补丁等)的安全,可以通过基于非对称加解密算法的数字签名算法来验证数据的完整性。在多级验证的情况下,数字签名验证的安全性最终依赖于信任根。如果计算机系统的信任根被恶意篡改,则其他层面的安全措施对此无能为力。因此,系统信任根的完整性是保障整个计算机系统安全性的基础。
[0005]可以在单独的可信任平台模块(Trusted Platform Module,TPM)芯片中存储信任根数据(例如,2048位RSA公共密钥),这带来了额外的硬件成本。另一方面,如果在主机板ROM中存储信任根数据,则由于主机板数据本身有可能被恶意篡改,这样建立的信任根不能确保计算机系统的安全性。

【发明内容】

[0006]因此,为了解决上述问题,本发明提供具有主机板数据验证功能的中央处理器和验证主机板数据的方法。
[0007]根据本发明实施例的一个方面,提供一种中央处理器,包括:片内只读存储器,用于存储信任根摘要信息,其中该信任根摘要信息不允许修改;以及核心,用于在开机过程中使用摘要算法计算存储在主机板中的信任根数据的摘要信息,将该摘要信息与该信任根摘要信息进行比较,如果该摘要信息与该信任根摘要信息一致,则利用该信任根数据执行签名验证算法以验证主机板数据的完整性。
[0008]根据本发明实施例,该片内只读存储器可以包括多个熔丝,分别用于烧写具有不同优先级的候选信任根摘要信息,而且该核心可以使用已烧写在所述熔丝中的具有最高优先级的候选信任根摘要信息作为该信任根摘要信息。
[0009]根据本发明实施例,该签名验证算法可以是基于非对称加解密算法,该主机板数据可以被基于该非对称加解密算法使用私有密钥加密,该信任根数据可以包括与该私有密钥对应的公共密钥。
[0010]根据本发明实施例,该核心可以包括用于执行该摘要算法的硬件电路。
[0011]根据本发明实施例,该中央处理器可以进一步存储摘要指令,而且该核心可以通过执行该摘要指令来执行该摘要算法。
[0012]根据本发明实施例,该核心可以包括用于执行该签名验证算法的硬件电路。
[0013]根据本发明实施例,该中央处理器可以进一步存储签名验证指令,而且该核心可以通过执行该签名验证指令来执行该签名验证算法。
[0014]根据本发明实施例,该主机板数据可以包括该中央处理器的微代码补丁,当该核心在该开机过程中接收到特定指令时,该核心计算该摘要信息。
[0015]根据本发明实施例的另一方面,提供一种验证主机板数据的方法,包括:在开机过程中从主机板中读取信任根数据;使用摘要算法计算该信任根数据的摘要信息;将该摘要信息与存储在中央处理器的片内只读存储器中的信任根摘要信息进行比较,其中该信任根摘要信息不允许修改;如果该摘要信息与该信任根摘要信息一致,则从主机板中读取主机板数据;以及利用该信任根数据执行签名验证算法以验证主机板数据的完整性。
[0016]根据本发明实施例,该片内只读存储器可以包括多个熔丝,分别用于烧写具有不同优先级的候选信任根摘要信息,该方法可以进一步包括:使用已烧写在所述熔丝中的具有最高优先级的候选信任根摘要信息作为该信任根摘要信息。
[0017]根据本发明实施例,该签名验证算法可以是基于非对称加解密算法,该主机板数据可以被基于该非对称加解密算法使用私有密钥加密,该信任根数据可以包括与该私有密钥对应的公共密钥。
[0018]根据本发明实施例,可以通过该中央处理器中的硬件电路来执行该摘要算法。
[0019]根据本发明实施例,可以通过执行存储在该中央处理器中的摘要指令来执行该摘要算法。
[0020]根据本发明实施例,可以通过该中央处理器中的硬件电路来执行该签名验证算法。
[0021 ] 根据本发明实施例,可以通过执行存储在该中央处理器中的签名验证指令来执行该签名验证算法。
[0022]根据本发明实施例,该主机板数据可以包括中央处理器的微代码补丁,当在前述开机过程中接收到特定指令时,执行前述从该主机板中读取该信任根数据的步骤。
[0023]通过使用根据本发明的中央处理器和验证主机板数据的方法,一方面在中央处理器内部的片内只读存储器中建立系统信任根,大大提高了系统的安全性;另一方面,由于在片内只读存储器中仅存储具有较短尺寸的信任根摘要信息,而不存储完整的信任根数据,可以节省有限的存储空间,降低硬件成本。
【附图说明】
[0024]图1示出包括根据本发明的实施例的中央处理器102的计算机系统100 ;
[0025]图2示出根据本发明另一实施例的中央处理器102 ;
[0026]图3示出根据本发明另一实施例的图2的中央处理器102中的片内只读存储器 201 ;
[0027]图4示出根据本发明另一实施例的图1的主机板101中的B1S ROM 111 ;以及
[0028]图5是根据本发明的实施例的验证主机板数据的方法的流程图。
【具体实施方式】
[0029]下面参照附图详细描述根据本发明的示范性实施例。附图中,将相同或类似的附图标记赋予结构以及功能基本相同的组成部分,并且为了使说明书更加简明,省略了关于基本上相同的组成部分的冗余描述。
[0030]图1示出包括根据本发明一实施例的中央处理器102的计算机系统100。
[0031]参照图1,计算机系统100包括主机板101、中央处理器102、输入/输出(I/O)设备103、以及存储设备104。主机板101包括B1S ROM 111和随机存取存储器(RAM) 112。值得注意的是,这里是以B1S作为系统初始化指令来举例,采用其他系统初始化指令(例如EFI)技术的计算机系统100也落入本发明要保护的范围。
[0032]图2示出根据本发明另一实施例的中央处理器102。
[0033]参照图2,中央处理器102包括片内只读存储器(on-die ROM) 201和核心202。其中片内只读存储器201用于存储信任根摘要信息2011,该信任根摘要信息2011不允许修改。核心202用于在计算机系统100开机时使用一摘要算法计算存储在主机板101中的一信任根数据的一摘要信息;核心202将计算出的摘要信息与片内只读存储器201内的信任根摘要信息2011进行比较以验证该信任根数据的完整性,如果该摘要信息与信任根摘要信息2011不一致,则表明主机板中的信任根数据已经被篡改,验证失败。
[0034]如果该摘要信息与与信任根摘要信息2011 —致,则利用该信任根数据执行签名验证算法以验证一主机板数据的完整性。根据本发明实施例,该主机板数据可以包括微代码补丁,用于更新中央处理器102的微代码。然而,本发明不限于此,在其他实施例中,该主机板数据也可以是主机板101的系统初始化指令,例如B1S代码或EFI代码。
[0035]在一实施例中,片内只读存储器201可以是中央处理器102中的片内(on-die)ROM,其内容在中央处理器102的芯片制造过程中预先设定而且无法被更改,从而保证其预先存储的信任根摘要信息2011不会被篡改,因此可作为整个计算机系统100的信任根。本发明一方面以中央处理器102内部的片内只读存储器201作为系统信任根,大大提高了系统的安全性;另一方面,由于片内只读存储器201中仅存储具有较短尺寸的信任根摘要信息2011而不是完整的信任根数据,可以节省有限的存储空间。
[0036]根据本发明的实施例,中央处理器102还可以进一步包括摘要算法模块203以及签名验证算法模块204,分别实现摘要算法及签名验证算法。在一实施例中,摘要算法模块203可以以摘要指令的形式实现,以及/或者签名验证算法模块204可以以签名验证指令的形式实现,核心202通过执行该摘要指令来执行该摘要算法,和/或通过执行该签名验证指令来执行该签名验证算法,在这样的实施例中,摘要算法模块203和/或签名验证算法模块204需要占用中央处理器102内的额外存储空间来存放该摘要指令和/或该签名验证指令,但本发明不限于此。在另一实施例中,摘要算法模块203和/或签名验证算法模块204可以用硬件电路实现,该硬件电路可以包括在核心202中,该情况下,可以不在中央处理器102中存储摘要指令和/或签名验证指令,从而进一步节省存储空间,由于中央处理器102的制造成本随片内只读存储器201容量增大而显著提高,本发明可以进一步降低中央处理器102的制造成本。
[0037]图3示出根据本发明另一实施例的图2的中央处理器102中的片内只读存储器201。根据本发明实施例,片内只读存储器201可以包括熔丝301和熔丝302,用于烧写两条候选信任根摘要信息。其中,烧写在熔丝302中的候选信任根摘要信息具有比烧写在熔丝301中的候选信任根摘要信息更高的优先级。仅当熔丝302未被烧写时,核心201才使用烧写在熔丝301中的候选信任根摘要信息作为信任根摘要信息。
[0038]虽然图3中的片内只读存储器201仅包括两个熔丝,但本发明不限于此。根据实施例,片内只读存储器201可以包括多个熔丝,分别用于烧写具有不同优先级的候选信任根摘要信息,而且核心202可以使用已烧写在所述熔丝中的具有最高优先级的候选信任根摘要信息作为信任根摘要信息。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1