【技术实现步骤摘要】
一种安全启动方法及装置、电子设备和存储介质
[0001]本公开涉及计算机
,尤其涉及一种安全启动方法及装置、电子设备和存储介质。
技术介绍
[0002]为了保证电子设备在启动过程中的安全性,通常采用安全启动技术进行启动。安全启动技术是通过密码学的方法保护电子设备启动中软件完整性的有效措施。当前电子设备通用安全启动方案为:上电,执行一级程序加载验证二级程序并执行,二级程序加载验证三级程序并执行。其中,一级程序、二级程序和三级程序可以分别为无盘启动只读存储器接口(Boot Read Only Memory,BootROM)、引导加载程序(BootLoader)和内核(Kernel)或者实时操作系统(Real Time Operating System,BTOS)。
[0003]在上述安全启动过程中,进行程序验证时可以采用简单循环容易校验(Cyclic Redundancy Check,CRC)、对称加密算法、哈希摘要算法和非对称加密算法相结合、基于根密钥(Root Of Key,ROK)和X509构建可信链等。其中 ...
【技术保护点】
【技术特征摘要】
1.一种安全启动方法,其特征在于,所述方法包括:启动一级程序后,加载所述一级程序的可信链中的一级安全凭证,所述一级程序的可信链中包括多个级别的安全凭证,所述一级程序的可信链中的一级安全凭证中包括第一算法描述,所述第一算法描述用于指示第一密码算法、第一哈希算法、第一公钥和第一签名;获取用于安全启动二级程序的第一可信根密钥;基于所述第一可信根密钥、所述第一密码算法、所述第一签名以及所述第一哈希算法,对所述第一公钥进行验证;在所述第一公钥验证成功的情况下,基于所述第一公钥以及所述一级程序的可信链中的最后一级安全凭证中的签名,对所述二级程序的镜像文件进行验证;在所述二级程序的镜像文件验证成功的情况下,启动所述二级程序。2.根据权利要求1所述的方法,其特征在于,所述获取用于安全启动二级程序的第一可信根密钥包括:基于第一对应关系,从一次性编程的存储器件中获取与所述第一密码算法以及所述第一哈希算法对应的所述第一可信根密钥,所述第一对应关系用于指示密码算法、哈希算法与可信根密钥之间的对应关系。3.根据权利要求1所述的方法,其特征在于,所述基于所述第一可信根密钥、所述第一密码算法、所述第一签名以及所述第一哈希算法,对所述第一公钥进行验证,包括:采用所述第一可信根密钥和所述第一密码算法对所述第一签名进行解密处理,得到第一哈希值;采用所述第一哈希算法对所述第一公钥进行哈希处理,得到第二哈希值;在所述第一哈希值与所述第二哈希值相同的情况下,确定所述第一公钥验证成功。4.根据权利要求1所述的方法,其特征在于,所述一级程序的可信链中包括N个级别的安全凭证,其中,N为大于1的整数,所述基于所述第一公钥以及所述一级程序的可信链中的最后一级安全凭证中的签名,对所述二级程序的镜像文件进行验证,包括:在基于所述第一公钥对所述一级程序的可信链中的N
‑
1级安全凭证中的公钥验证成功的情况下,加载所述一级程序的可信链中的N级安全凭证,所述一级程序的可信链中的N级安全凭证中包括中间算法描述,所述中间算法描述用于指示中间密码算法、中间哈希算法和中间签名和分区信息,所述分区信息用于指示所述二级程序的镜像文件的存储地址;根据所述分区信息,加载所述二级程序的镜像文件;采用所述一级程序的可信链中的N
‑
1级安全凭证中的公钥和所述中间密码算法对所述中间签名进行解密处理,得到第三哈希值;采用所述中间哈希算法对所述二级程序的镜像文件进行哈希处理,得到第四哈希值;在所述第三哈希值与所述第四哈希值相同的情况下,确定所述二级程序的镜像文件验证成功。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:启动所述二级程序后,加载所述二级程序的可信链中的一级安全凭证,所述二级程序的可信链中包括多个级别的安全凭证,所述二级程序的可信链中的一级安全凭证中包括第二算法描述,所述第二算法描述用于指示第二密码算法、第二哈希算法、第二公钥和第二签名;
获取用于安全启动三级程序的第二可信根密钥;基于所述第二可信根密钥、所述第二密码算法、所述第二签名以及所述第二哈希算法,对所述第二公钥进行验证;在所述第二公钥验证成功的情况下,基于所述第二公钥以及所述二级程序的可信链中的最后一级安全凭证中的签名,对所述三级程序的镜像文件进行验证;在所述三级程序的镜像文件验证成功的情况下,启动所述三级程序。6.根据权利要求5所述的方法,其特征在于,所述获取用于安全启动三级程序的第二可信根密钥,包括:将所述第一可信根密钥和所述二级程序启动过程中验证成功的公钥中的任意一者确定为所述第二可信根密钥。7.根据权利要求5所述的方法,其特征在于,在运行所述一级程序、所述二级程序和所述三级程序的电子设备启动时,所述一级程序、所述二级程序和所述三级程序依次启动。8.根据权利要求7所述的方法,其特征在于,所述一级程序包括无盘启动只读存储器接口BootROM,所述二级程序包括引导加载程序BootLoader,所述三级程序包括显卡输入输出系统VBIOS和实时操作系统RTOS。9.根据权利要求1至8中任意一项所述的方法,其特征在于,所述一级程序的可信链中的一级安全凭证中还包括第一数字证书,所述第一数字证书中包括第一签名算法、所述第一公钥和所述第一签名,所述方法还包括:基于所述第一签名算法和所述第一签名对所述第一公钥进行验证。10.一种安全启动装置,其特征在于,所述装置包括:第一加载模块,用于启动一级程序后,加载所述一级程序的可信链中的一级安全凭证,所述一级程序的可信链中包括多个级别的安全凭证,...
【专利技术属性】
技术研发人员:罗建洪,杨珏,张精义,刘琛,马少阳,余德军,杨上山,张钰勃,
申请(专利权)人:摩尔线程智能科技北京有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。