处理器启动方法、装置及提供初始程序装入程序的装置制造方法及图纸

技术编号:9276245 阅读:490 留言:0更新日期:2013-10-24 23:25
本发明专利技术实施例公开了一种处理器启动方法、装置及提供IPL的装置,以解决处理器启动时加载并执行任意IPL,对系统安全性造成影响的问题。所述方法包括:处理器读取提供方生成的预加载IPL中SBH中的公钥,并生成与公钥对应的第二公钥摘要值;当第二公钥摘要值与预存的第一公钥摘要值相同时,通过公钥对SBH中的摘要密文进行解密操作,得到第一IPL摘要值;生成预加载IPL中程序代码的第二IPL摘要值;当第一IPL摘要值与第二IPL摘要值相同时,执行预加载IPL使得处理器启动。本发明专利技术实施例在处理器启动过程中,进行两次比较的过程,分别为公钥摘要值的比较和IPL摘要值的比较。增加了比较的过程,提高了系统的安全性。

【技术实现步骤摘要】
处理器启动方法、装置及提供初始程序装入程序的装置
本专利技术实施例涉及计算机
,特别是涉及一种处理器启动方法、装置及提供初始程序装入程序的装置。
技术介绍
在处理器启动时,首先会通过只读内存(Read-OnlyMemory;ROM)代码加载一段较小的初始程序装入程序(InitialProgramLoader;IPL),被加载的IPL仅进行系统的基本配置;然后跳转并执行该IPL,并进一步加载更多的可执行程序到系统中。现在的处理器在启动时,对加载的任意IPL均会执行对应的配置操作,如果加载的IPL为恶意修改后的IPL或者非指定的IPL,则处理器启动并执行这些IPL会对系统安全造成影响。
技术实现思路
本专利技术实施例公开了一种处理器启动方法、装置及提供初始程序装入程序的装置,以解决处理器启动时加载并执行任意IPL,对系统安全性造成影响的问题。为了解决上述问题,本专利技术实施例公开了一种处理器启动方法,包括:处理器读取提供方生成的预加载初始程序装入程序IPL中安全启动控制块头SBH中的公钥,并生成与公钥对应的的第二公钥摘要值;当第二公钥摘要值与预存的第一公钥摘要值相同时,通过公钥对SBH中的摘要密文进行解密操作,得到第一IPL摘要值;生成预加载IPL中程序代码的第二IPL摘要值;当第一IPL摘要值与第二IPL摘要值相同时,执行预加载IPL使得处理器启动。本专利技术实施例还公开了一种处理器启动装置,包括:公钥读取模块,用于读取提供方生成的预加载初始程序装入程序IPL中安全启动控制块头SBH中的公钥;公钥摘要值生成模块,用于生成与公钥对应的的第二公钥摘要值;解密模块,用于当第二公钥摘要值与预存的第一公钥摘要值相同时,通过公钥对SBH中的摘要密文进行解密操作,得到第一IPL摘要值;第二IPL摘要值生成模块,用于生成预加载IPL中程序代码的第二IPL摘要值;IPL执行模块,用于当第一IPL摘要值与第二IPL摘要值相同时,执行预加载IPL使得处理器启动。本专利技术实施例还公开了一种提供初始程序装入程序的装置,包括:第一IPL摘要值生成模块,用于生成预加载IPL中程序代码的第一IPL摘要值;加密模块,用于通过密钥对中私钥对第一IPL摘要值进行加密操作,获得摘要密文;SBH生成模块,用于根据摘要密文以及密钥对中公钥,生成SBH;IPL获得模块,用于根据SBH以及预加载IPL中程序代码,得到预加载IPL。本专利技术实施例通过采用上述技术方案,安全启动数据包括公钥(预置的公钥)、公钥摘要值(第一公钥摘要值)以及IPL的摘要密文。其中,第一公钥摘要值存储在处理器硬件只读存储器件中,在芯片生产或者出厂阶段写入。预置的公钥和IPL的摘要密文在提供方生成预加载IPL时存储在IPL启动控制块头(SecurityBootHeader;SBH)中。在处理器预启动时,首先将带有SBH的IPL(预加载IPL)加载到系统中。然后从IPLSBH中读出加密算法的公钥,通过摘要算法生成第二公钥摘要值并与存储在处理器硬件里的第一公钥摘要值比较,如果相同,则处理器继续启动流程。本步骤确保IPLSBH中的预置的公钥没有被篡改。如果上述生成的第二公钥摘要值与存储在处理器硬件里的第一公钥摘要值相同,再从IPLSBH中读出IPL的摘要密文,使用公钥(IPLSBH中的公钥)对IPL的摘要密文进行解密得到第一IPL摘要值。对预先加载到系统中的IPL的程序代码通过摘要算法生成第二IPL摘要值。将解密得到的第一IPL摘要值与通过摘要算法生成的第二IPL摘要值进行比较,如果相同,则处理器启动成功,可以执行预加载IPL。如果伪造处理器启动时预加载的IPL,必须得到密钥对(包括公钥和私钥),然后通过私钥对伪造的IPL的摘要值进行加密。虽然公钥公开保存在已发布的IPLSBH中,但私钥却是不对外公开的。根据加密算法的原理,私钥进行加密,公钥用于解密,根据公钥不可以推算出密钥对。所以不可以通过公开的公钥推算出密钥对进而采用该秘钥对伪造的IPL摘要进行加密。并且在本技术方案中,安全启动数据中包括的第一公钥摘要值(存储在处理器不可修改的硬件中),可以起到验证从IPLSBH读取出的公钥是否被修改的作用。修改后的公钥的公钥摘要值与安全启动数据中的第一公钥摘要值必定不同,则处理器启动失败,处理器不能加载运行伪造的IPL,提高了系统的安全性和稳定性。而且,由于私钥不对外公开,具有保密性,利用私钥对IPL摘要值进行加密得到IPL的摘要密文,只能被唯一的不可修改的公钥解密,解密得到的IPL摘要值也是唯一。即使伪造IPL,但伪造出的IPL的IPL摘要值与对安全启动数据中的IPL的摘要密文进行解密得到的IPL摘要值不同,则处理器启动失败,处理器不能加载运行伪造的IPL,提高了系统的安全性和稳定性。附图说明图1是本专利技术实施例一中一种处理器启动方法流程图;图2是本专利技术实施例二中一种处理器启动方法流程图;图3是本专利技术实施例二中步骤200和步骤202的执行过程示意图;图4是本专利技术实施例二中步骤204至步骤210的执行过程示意图;图5是本专利技术实施例三中一种处理器启动装置结构示意图;图6是本专利技术实施例四种一种提供IPL的装置结构示意图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术实施例公开的一种处理器启动方法和处理器,可以在处理器启动过程中进行两次比较,第一次比较为公钥摘要值的比较,第二次比较为IPL摘要值的比较,第二次比较的前提条件为第一次比较的结果为进行比较的两个公钥摘要值相同。并且当第一次比较的结果为公钥摘要值不同时,处理器启动失败,可以进入死循环的状态;当第一次比较的结果为公钥摘要值相同时,进行第二次比较。如果第二次比较的结果为IPL摘要值不同,则处理器启动失败;如果第二次比较的结果为IPL摘要值相同,则处理器启动成功,处理器可以加载并运行可执行程序。下面通过列举几个具体的实施例详细介绍本专利技术公开的一种处理器启动方法和处理器。实施例一详细介绍本专利技术实施例公开的一种处理器启动方法。参照图1,示出了本专利技术实施例中一种处理器启动方法流程图。步骤100,处理器读取提供方生成的预加载IPL中SBH中的公钥,并生成与公钥对应的的第二公钥摘要值。其中,提供方可以为预加载IPL的生产方或者供应方,提供方还可以是区别于处理器生产方和处理器使用方之外的第三方。处理器获得提供方生成的预加载IPL后,从预加载IPL的SBH中读取出公钥,通常情况下,预加载IPL的SBH中只有一个公钥。处理器根据读取出的公钥生成公钥的唯一一个第二公钥摘要值。步骤102,当第二公钥摘要值与预存的第一公钥摘要值相同时,通过公钥对SBH中的摘要密文进行解密操作,得到第一IPL摘要值。处理器生成第二公钥摘要值之后,将第二公钥摘要值与预存的第一公钥摘要值进行比较。其中,预存的第一公钥摘要值可以预先存储在处理器硬件只读存储器件中,是根据预置的公钥生成的。第二公钥摘要值与第一公钥摘要值相同,可以表示在预加载IPL的SBH中读取得到的公钥是与预置的公钥一致的,是没有被篡改的“真实”的公钥。由于读取得到的公钥为没有被篡改的“真实”的公钥,所以,可以通过读取到的公钥对SBH中的摘要密文进行解密操作,本文档来自技高网...
处理器启动方法、装置及提供初始程序装入程序的装置

【技术保护点】
一种处理器启动方法,其特征在于,包括:处理器读取提供方生成的预加载初始程序装入程序IPL中安全启动控制块头SBH中的公钥,并生成与所述公钥对应的的第二公钥摘要值;当所述第二公钥摘要值与预存的第一公钥摘要值相同时,通过所述公钥对所述SBH中的摘要密文进行解密操作,得到第一IPL摘要值;生成所述预加载IPL中程序代码的第二IPL摘要值;当所述第一IPL摘要值与所述第二IPL摘要值相同时,执行所述预加载IPL使得所述处理器启动。

【技术特征摘要】
1.一种处理器启动方法,其特征在于,包括:处理器读取提供方生成的预加载初始程序装入程序IPL中安全启动控制块头SBH中的公钥,并生成与所述公钥对应的的第二公钥摘要值;当所述第二公钥摘要值与预存的第一公钥摘要值相同时,通过所述公钥对所述SBH中的摘要密文进行解密操作,得到第一IPL摘要值,其中,所述预存的第一公钥摘要值预先存储在处理器硬件只读存储器件中;生成所述预加载IPL中程序代码的第二IPL摘要值;当所述第一IPL摘要值与所述第二IPL摘要值相同时,执行所述预加载IPL使得所述处理器启动。2.根据权利要求1所述的方法,其特征在于,所述提供方生成预加载IPL的过程包括:所述提供方生成所述预加载IPL中程序代码的第一IPL摘要值;通过密钥对中私钥对所述第一IPL摘要值进行加密操作,获得摘要密文;根据所述摘要密文以及所述密钥对中公钥,生成所述SBH;根据所述SBH以及所述预加载IPL中程序代码,得到预加载IPL。3.根据权利要求1所述的方法,其特征在于,所述生成与所述公钥对应的的第二公钥摘要值包括:对所述公钥进行摘要算法运算生成所述第二公钥摘要值。4.根据权利要求1所述的方法,其特征在于,所述生成所述预加载IPL中程序代码的第二IPL摘要值包括:对所述预加载IPL中程序代码进行摘要算法运算生成所述第二...

【专利技术属性】
技术研发人员:刘旭明王洪仁
申请(专利权)人:北京创毅讯联科技股份有限公司北京创毅视讯科技有限公司
类型:发明
国别省市:

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

1