一种系统安全启动方法及装置与流程

文档序号:11156203阅读:来源:国知局

技术特征:

1.一种系统安全启动方法,其特征在于,将存储区域分为至少两级BOOT:其中,第一级BOOT存储BOOT引导区信息,其他级BOOT中每级BOOT均存储至少两个BOOT区的信息,所述方法包括:

获取步骤:所述BOOT引导区从第i级BOOT的存储信息中获取该级的控制信息,并根据所述控制信息从该级BOOT中选取一待认证BOOT区;

认证步骤:所述BOOT引导区对所选BOOT区进行认证,若认证成功,则引导中央控制器对所选的BOOT区加载运行;若认证失败,则在该级BOOT的其他BOOT区中选取一待认证BOOT区,重复该步骤,直到认证成功,加载选取的BOOT区,并在加载成功后,令i=i+1,i最小取2,返回所述获取步骤。

2.如权利要求1所述的方法,其特征在于,在所述获取步骤前,还包括:

引导区加载步骤:所述中央控制器对所述BOOT引导区进行认证后加载。

3.如权利要求1所述的方法,其特征在于,所述BOOT引导区选取一待认证BOOT区后,修改所述控制信息使其选定除所选BOOT区以及认证失败的BOOT区外的其他BOOT区;

当所选BOOT认证/加载失败,根据修改后的控制信息选取BOOT区;

当所选BOOT加载成功,恢复所述控制信息选定当前BOOT区。

4.如权利要求1所述的方法,其特征在于,所述BOOT引导区对所选BOOT区进行认证时,

从所述该级BOOT的存储信息获取安全信息;

根据所述安全信息对所选BOOT进行认证。

5.如权利要求4所述的方法,其特征在于,根据所述安全信息对所选BOOT进行认证,包括:

对所选的BOOT区的版本进行哈希运算,获取哈希值;

从所述BOOT引导区的存储信息中获取BOOT区的认证公钥;

根据所述认证公钥对所选BOOT区的版本签名进行解密,获取解密值;

判断所述哈希值与所述解密值是否一致,当所述哈希值和解密值一致时,认证通过;否则,认证失败。

6.一种系统安全启动装置,其特征在于,包括:

存储模块:包括至少两级BOOT,第一级BOOT存储BOOT引导区信息,其他级BOOT中每级BOOT均存储至少两个BOOT区的信息;

获取模块:用于所述BOOT引导区从第i级BOOT存储信息中获取该级的控制信息,并根据所述控制信息从该级BOOT中选取一待认证BOOT区;

认证模块:用于所述BOOT引导区对所选BOOT区进行认证,若认证成功,则引导中央控制器对所选的BOOT区加载运行;若认证失败,则在该级BOOT的其他BOOT区中选取一待认证BOOT区,重复该步骤,直到认证成功,加载选取的BOOT区,并在加载成功后,令i=i+1,i最小取2,并由所述获取模块继续处理。

7.如权利要求6所述的装置,其特征在于,所述装置还包括引导区加载模块:

用于所述中央控制器对所述BOOT引导区进行认证后加载。

8.如权利要求6所述的装置,其特征在于,所述装置还包括控制模块:

用于所述BOOT引导区选取一待认证BOOT区后,修改所述控制信息使其选定除所选BOOT区以及认证失败的BOOT区外的其他BOOT区;

当所选BOOT认证/加载失败,根据修改后的控制信息选取BOOT区;

当所选BOOT加载成功,恢复所述控制信息选定当前BOOT区。

9.如权利要求6所述的装置,其特征在于,所述认证模块包括:

获取单元,用于从所述存储模块中获取该级BOOT的安全信息;

认证单元,用于所述BOOT引导区根据所述安全信息对所选BOOT进行认证。

10.如权利要求9所述的装置,其特征在于,所述认证单元具体用于,

对所选的BOOT区的版本进行哈希运算,获取哈希值;

从所述存储模块的BOOT引导区存储信息中获取BOOT区的认证公钥;

根据所述认证公钥对所选BOOT区的版本签名进行解密,获取解密值;

判断所述哈希值与所述解密值是否一致,当所述哈希值和解密值一致时,认证通过;否则失败。

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