本发明涉及嵌入式设备,特别涉及升级签名固件的方法、电子设备和存储介质。
背景技术:
1、已有的针对安全启动签名固件的升级方案中,验证签名固件的公钥信息通常都是在非可信环境中传递,无法保证签名固件升级的安全性,从而无法满足一些对安全性要求较高的应用场景。
技术实现思路
1、本发明的实施例提供升级签名固件的方法、电子设备和存储介质,其能够有效提高签名固件升级的安全性。
2、在本发明的一个方面,提供一种升级签名固件的方法。该方法包括:从签名后的待升级固件中的启动引导程序固件中获取公钥参数信息和数字签名算法类型;由可信操作系统将所述公钥参数信息和所述数字签名算法类型保存至安全存储中,由所述可信操作系统计算与所述公钥参数信息相对应的消息摘要,并对所述消息摘要进行加密;将加密后的消息摘要写入命令行参数;基于所述安全存储中的所述公钥参数信息和所述数字签名算法类型以及所述命令行参数中的所述加密后的消息摘要对所述签名后的待升级固件进行校验;以及若所述校验的结果为成功,则对所述签名后的待升级固件进行升级。
3、在本发明的又一方面,提供一种电子设备。该电子设备包括存储器,被配置为存储计算机程序;以及处理器,被配置为执行所述计算机程序以执行上述的升级签名固件的方法。
4、在本发明的再一方面,提供一种计算机可读介质。该介质上存储有计算机程序,所述计算机程序被处理器执行以实现上述的升级签名固件的方法。
5、根据本发明的实施例,通过可信操作系统将公钥参数信息和数字签名算法类型保存至安全存储中,由可信操作系统计算与公钥参数信息相对应的消息摘要,并对消息摘要进行加密,将加密后的消息摘要写入命令行参数,后续基于安全存储中的公钥参数信息和数字签名算法类型以及命令行参数中的加密后的消息摘要对签名后的待升级固件进行校验,校验成功才进行升级,以此提高了公钥信息的安全性,且将命令行参数中加密后的消息摘要作为与可信操作系统之间的通信凭证,从而有效提高签名固件升级的安全性。
1.一种升级签名固件的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,从签名后的待升级固件中的启动引导程序固件中获取公钥参数信息和数字签名算法类型包括:
3.根据权利要求2所述的方法,其特征在于,还包括:
4.根据权利要求3所述的方法,其特征在于,由可信操作系统将所述公钥参数信息和所述数字签名算法类型保存至安全存储中包括:
5.根据权利要求4所述的方法,其特征在于,由所述可信操作系统计算与所述公钥参数信息相对应的消息摘要,并对所述消息摘要进行加密包括:
6.根据权利要求4所述的方法,其特征在于,基于所述安全存储中的所述公钥参数信息和所述数字签名算法类型以及所述命令行参数中的所述加密后的消息摘要对所述签名后的待升级固件进行校验包括:
7.根据权利要求1所述的方法,其特征在于,还包括:
8.根据权利要求7所述的方法,其特征在于,还包括:
9.根据权利要求8所述的方法,其特征在于,根据所述命令行参数中的所述系统标记和所述熔断标记确定是否需要进行校验包括:
10.根据权利要求8所述的方法,其特征在于,根据所述命令行参数中的所述系统标记和所述熔断标记确定是否需要进行校验包括:
11.根据权利要求4所述的方法,其特征在于,基于所述安全存储中的所述公钥参数信息和所述数字签名算法类型以及所述命令行参数中的所述加密后的消息摘要对所述签名后的待升级固件进行校验包括:
12.根据权利要求11所述的方法,其特征在于,基于熔断标记确定是否退出升级流程包括:
13.根据权利要求7所述的方法,其特征在于,对所述签名后的待升级固件进行升级包括:
14.根据权利要求1所述的方法,其特征在于,还包括:
15.一种电子设备,其特征在于,包括:
16.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行以实现根据权利要求1至14中任一项所述的方法。