一种芯片安全启动的方法及装置制造方法及图纸

技术编号:37878340 阅读:15 留言:0更新日期:2023-06-15 21:06
本发明专利技术公开了一种芯片安全启动的方法及装置,包括:安全芯片的控制器启动BOOT程序,对安全数据存储区中的安全数据校验成功后对BOOT程序存储区的BOOT程序执行完整性和合法性校验成功后,安全芯片的控制器判断COS程序存储区中的COS程序下载密码是否正确,如果是,安全芯片的控制器下载COS程序,清除所述COS程序下载密码,控制安全芯片复位,如果否,安全芯片的控制器对COS程序存储区中的COS程序的完整性和合法性进行校验,校验成功后安全芯片的控制器引导所述COS程序;校验失败则安全芯片的控制器设置错误状态。本发明专利技术保证了芯片启动的安全性,从而保护了硬件的安全,而且保障了芯片执行合法的更新和下载COS程序。芯片执行合法的更新和下载COS程序。芯片执行合法的更新和下载COS程序。

【技术实现步骤摘要】
一种芯片安全启动的方法及装置


[0001]本专利技术涉及信息安全领域,特别涉及一种芯片安全启动的方法及装置。

技术介绍

[0002]安全芯片是信息安全领域的硬件基石,现有技术中,在安全芯片的启动过程中,通常对BOOT程序的完整性进行校验,但是仅仅对BOOT程序进行完整性校验无法确保安全芯片的安全,安全芯片启动过程中存在安全隐患,另外,允许对安全芯片的COS程序无限制的进行多次更新和下载也会造成安全风险。

技术实现思路

[0003]本专利技术提供了一种的方法及装置,解决了上述技术问题。
[0004]本专利技术提供的一种芯片安全启动的方法,该方法包括:
[0005]步骤1,安全芯片上电后安全芯片的控制器启动BOOT程序;
[0006]步骤2,安全芯片的控制器对安全数据存储区中的安全数据进行校验,判断校验是否成功,如果是,执行步骤3,如果否,执行步骤7;
[0007]步骤3,安全芯片的控制器对BOOT程序存储区的BOOT程序执行完整性校验,判断校验结果是否成功,如果是,执行步骤4,如果否,执行步骤7;
[0008]步骤4,安全芯片的控制器根据安全数据对BOOT程序执行合法性校验,判断校验结果是否为成功,如果是,执行步骤5,如果否,执行步骤7;
[0009]步骤5,安全芯片的控制器判断COS程序存储区中的COS程序下载密码是否正确,如果是,安全芯片的控制器下载COS程序,清除COS程序下载密码,控制安全芯片复位,如果否,安全芯片的控制器对COS程序存储区中的COS程序的完整性进行校验,判断校验结果是否为成功,如果是,执行步骤6,如果否,执行步骤7;
[0010]步骤6,安全芯片的控制器根据安全数据对COS程序执行合法性校验,判断校验结果是否为成功,如果是,安全芯片的控制器引导COS程序;如果否,执行步骤7;
[0011]步骤7,安全芯片的控制器设置错误状态。
[0012]本专利技术提供了一种芯片安全启动的装置,该装置包括:
[0013]上电模块,用于安全芯片上电;
[0014]启动模块,用于上电模块上电后,安全芯片的控制器启动BOOT程序;
[0015]第一校验模块,用于安全芯片的控制器对安全数据存储区的安全数据进行校验;
[0016]第一判断模块,用于判断第一校验模块的校验结果,当第一判断模块的判断结果为是时,触发第二校验模块,当第一判断模块的判断结果为否时,触发设置状态模块;
[0017]第二校验模块,用于安全芯片的控制器对BOOT程序存储区的BOOT程序执行完整性校验;
[0018]第二判断模块,用于判断第二校验模块的校验结果,当第二判断模块的判断结果为是时触发第三校验模块,当第二判断模块的判断结果为否时,触发设置状态模块;
[0019]第三校验模块,用于安全芯片的控制器根据安全数据对BOOT程序执行合法性校验;
[0020]第三判断模块,用于判断第三校验模块的校验结果,当第三判断模块的判断结果为是时,触发第四判断模块,当第三判断模块的判断结果为否时,触发设置状态模块;
[0021]第四判断模块,用于安全芯片的控制器判断COS程序存储区中的COS程序下载密码是否正确,当第四判断模块的判断结果为是时,触发下载清除复位模块,当第四判断模块的判断结果为否时,触发第四校验模块;
[0022]下载清除复位模块,用于安全芯片的控制器下载COS程序,清除COS程序下载密码,控制安全芯片复位;
[0023]第四校验模块,用于安全芯片的控制器对COS程序存储区中的COS程序的完整性进行校验;
[0024]第五判断模块,用于判断第四校验模块的校验结果,当第五判断模块的判断结果为是时,触发第五校验模块,当第五判断模块的判断结果为否时,触发设置状态模块;
[0025]第五校验模块,用于安全芯片的控制器根据安全数据对COS程序执行合法性校验;
[0026]第六判断模块,用于判断第五校验模块的校验结果,当第六判断模块的判断结果为是时,触发引导模块,当第六判断模块的判断结果为否时,触发设置状态模块;
[0027]引导模块,用于安全芯片的控制器引导COS程序;
[0028]设置状态模块,用于安全芯片的控制器设置错误状态。
[0029]本专利技术还提供了一种计算机可读存储介质,包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行上述芯片安全启动的方法。
[0030]本专利技术还提供了一种安全芯片,此芯片与存储器耦合,用于执行存储器中存储的计算机程序,以执行上述芯片安全启动的方法。
[0031]本专利技术的有益效果:本专利技术提供了一种芯片安全启动的方法及装置,保证了芯片启动的安全性,从而保护了硬件的安全,而且保障了芯片执行合法的更新和下载COS程序。
附图说明
[0032]图1为本专利技术实施例一提供的一种芯片安全启动的方法的流程图;
[0033]图2和图3为本专利技术实施例二提供的一种芯片安全启动的方法的流程图;
[0034]图4为本专利技术实施例二提供的一种芯片安全启动的方法中安全芯片的控制器等待接收上位机的指令后执行的另一种实施方式的流程图。
具体实施方式
[0035]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0036]实施例一
[0037]本实施例提供了一种芯片安全启动的方法,如图1所示,包括如下步骤:
[0038]步骤1,安全芯片上电后安全芯片的控制器启动BOOT程序;
[0039]步骤2,安全芯片的控制器对安全数据存储区中的安全数据进行校验,判断校验是否成功,如果是,执行步骤3,如果否,执行步骤7;
[0040]步骤3,安全芯片的控制器对BOOT程序存储区的BOOT程序执行完整性校验,判断校验结果是否成功,如果是,执行步骤4,如果否,执行步骤7;
[0041]步骤4,安全芯片的控制器根据安全数据对BOOT程序执行合法性校验,判断校验结果是否为成功,如果是,执行步骤5,如果否,执行步骤7;
[0042]步骤5,安全芯片的控制器判断COS程序存储区中的COS程序下载密码是否正确,如果是,安全芯片的控制器下载COS程序,清除COS程序下载密码,控制安全芯片复位,如果否,安全芯片的控制器对COS程序存储区中的COS程序的完整性进行校验,判断校验结果是否成功,如果是,执行步骤6,如果否,执行步骤7;
[0043]步骤6,安全芯片的控制器根据安全数据对COS程序执行合法性校验,判断校验结果是否为成功,如果是,安全芯片的控制器引导COS程序;如果否,执行步骤7;
[0044]步骤7,安全芯片的控制器设置错误状态。
[0045]在一种可本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片安全启动的方法,其特征在于,所述方法包括:步骤1,安全芯片上电后安全芯片的控制器启动BOOT程序;步骤2,所述安全芯片的控制器对安全数据存储区中的安全数据进行校验,判断校验是否成功,如果是,执行步骤3,如果否,执行步骤7;步骤3,所述安全芯片的控制器对BOOT程序存储区的BOOT程序执行完整性校验,判断校验结果是否成功,如果是,执行步骤4,如果否,执行步骤7;步骤4,所述安全芯片的控制器根据所述安全数据对所述BOOT程序执行合法性校验,判断校验结果是否为成功,如果是,执行步骤5,如果否,执行步骤7;步骤5,所述安全芯片的控制器判断COS程序存储区中的COS程序下载密码是否正确,如果是,所述安全芯片的控制器下载COS程序,清除所述COS程序下载密码,控制所述安全芯片复位,如果否,所述安全芯片的控制器对所述COS程序存储区中的COS程序的完整性进行校验,判断校验结果是否为成功,如果是,执行步骤6,如果否,执行步骤7;步骤6,所述安全芯片的控制器根据所述安全数据对所述COS程序执行合法性校验,判断校验结果是否为成功,如果是,所述安全芯片的控制器引导所述COS程序;如果否,执行步骤7;步骤7,所述安全芯片的控制器设置错误状态。2.如权利要求1所述方法,其特征在于,所述步骤3具体为:所述安全芯片的控制器控制安全芯片的第一运算模块对BOOT程序存储区的BOOT程序的数据根据第一算法进行运算得到第二运算结果,判断所述第二运算结果与所述安全数据中的BOOT程序哈希值是否相同,如果是,则校验结果为成功,执行步骤4,如果否,则校验结果为失败,执行步骤7;所述步骤4具体为:所述安全芯片的控制器控制安全芯片的第二运算模块使用第二算法根据第二运算结果、所述安全数据中的BOOT程序公钥和BOOT程序签名值进行验签操作,判断验签结果是否为成功,如果是,执行步骤5,如果否,执行步骤7;所述步骤5中所述安全芯片的控制器对COS程序的完整性进行校验,判断校验是否成功,如果是,执行步骤6,如果否,执行步骤7具体为:所述安全芯片的控制器控制所述安全芯片的第一运算模块对所述COS程序存储区的COS程序的数据根据第一算法进行运算得到第三运算结果,判断所述第三运算结果与所述安全数据中的COS程序哈希值是否相同,如果是,执行步骤6,如果否,执行步骤7;步骤6具体为:所述安全芯片的控制器控制安全芯片的第二运算模块使用第二算法根据所述第三运算结果、所述安全数据中的COS程序公钥和COS程序签名值进行验签操作,判断验签结果是否为成功,如果是,所述安全芯片的控制器引导COS程序;如果否,执行步骤7。3.如权利要求1所述方法,其特征在于,所述步骤5中,所述安全芯片的控制器下载COS程序,清除所述COS程序下载密码,控制安全芯片复位具体包括:步骤m1,所述安全芯片的控制器等待接收上位机发送的指令;步骤m2,所述安全芯片的控制器判断接收到指令的类型,当接收到指令为写COS程序指令时,执行步骤m3;当接收到的指令为清除COS程序下载密码指令时,执行步骤m4;当接收到的指令为复位指令时,执行步骤m5;
步骤m3,所述安全芯片的控制器根据写COS程序指令中的地址和COS程序的数据,将COS程序写入COS存储区,返回步骤m1;步骤m4,所述安全芯片的控制器将安全芯片闪存中预置位置的COS程序下载密码清除,返回步骤m1;步骤m5,所述安全芯片的控制器将安全芯片复位。4.如权利要求3所述方法,其特征在于,所述步骤m2还包括:当接收到指令为下载COS程序公钥指令时,执行步骤m6;步骤m6,所述安全芯片的控制器判断闪存的所述BOOT存储区的预定位置是否存储有COS程序公钥,如果是,所述安全芯片的控制器报错,返回步骤m1;如果否,执行步骤m7;步骤m7,所述安全芯片的控制器将下载COS程序公钥指令中的COS程序公钥写入BOOT存储区的预定位置,返回步骤m1。5.如权利要求1所述方法,其特征在于,所述步骤1之前还包括:步骤01,所述安全芯片的控制器启动温度和电压检测模块;所述方法还包括:当所述温度和电压检测模块判断温度或电压有异常时,所述安全芯片复位。6.如权利要求3所述方法,其特征在于,所述步骤m2还包括:当指令...

【专利技术属性】
技术研发人员:张贺李会同王亚伟郑树宇
申请(专利权)人:北京宏思电子技术有限责任公司
类型:发明
国别省市:

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

1