控制器的安全防护方法、控制器的主芯片及控制器技术

技术编号:28225454 阅读:14 留言:0更新日期:2021-04-28 09:58
本发明专利技术提供一种控制器的安全防护方法、控制器的主芯片及控制器,所述控制器包括主芯片和设置在所述主芯片外部的安全芯片,所述主芯片包括启动引导程序区和应用程序区,在所述控制器的上电过程中,所述主芯片启动并进入所述启动引导程序区,且能从所述安全芯片中获取相应的密钥和数字签名,并根据该密钥计算出相应的校验数字签名,在所述校验数字签名和相应的数字签名相匹配时,所述主芯片完整运行启动引导程序,并在所述启动引导程序运行完成后跳转到所述应用程序区,进而完成所述控制器的安全启动,且可以有效解决现有控制器安全启动方案中存在的安全启动功能成本较高、在主芯片性能降低时难以实现控制器安全启动功能等问题。降低时难以实现控制器安全启动功能等问题。降低时难以实现控制器安全启动功能等问题。

【技术实现步骤摘要】
控制器的安全防护方法、控制器的主芯片及控制器


[0001]本申请涉及控制器
,尤其涉及一种控制器的安全防护方法、控制器的主芯片及控制器。

技术介绍

[0002]随着各种智能系统(例如汽车智能网联系统)技术的发展,系统的控制器(例如汽车的电机控制器等)面临越来越多的安全威胁。其中,一种安全威胁是非法地篡改控制器中的启动引导程序,并用篡改后的启动引导程序进行控制器启动,造成系统中的其他各部件无法正常运行,另一种安全威胁是非法地篡改控制器中的应用程序,并用篡改后的应用程序对控制器进行刷新,达到改变控制器工作逻辑的目的。
[0003]如图1所示,现有常规的用于实现控制器安全启动的功能,主要是基于控制器10中的主芯片100来实现,主芯片100,比如是含有安全硬件扩展(Secure Hardware Extension,简写为SHE)模块的主芯片或含有硬件安全模块(Hardware Security Module,简写为HSM)的主芯片,一般是通过在其微控制单元(Micro Controller Unit,简写为MCU)101所在的片上集成相应的安全模块102(例如是SHE模块等低配置的安全模块或者HSM模块等高配置的安全模块)来实现,该安全模块102作为微控制单元100的片上外围设备,能够将加密密钥的控制从软件域转移到硬件域,从而保护这些密钥免受软件攻击。
[0004]基于上述的主芯片100来实现控制器安全启动的方法通常包括以下过程:
[0005](1)主芯片100的微控制单元101获取主芯片100中预存的加密密钥和密钥签名;
[0006](2)主芯片100的微控制单元101根据加密密钥生成验证签名,然后安全模块102比较密钥签名和验证签名,若密钥签名和验证签名一致,则实现控制器10的安全启动。
[0007]然而在实践中发现,上述这种控制器安全启动的方式,因为需要主芯片内部集成安全模块,因此对主芯片的性能要求较高,同时也增加了主芯片的硬件成本;而当降低主芯片性能时,例如在主芯片中采用更低配的安全模块来取代上述的SHE模块或者HSM模块,甚至在主芯片中完全取消上述安全模块时,控制器的安全启动功能难以实现,进而导致控制器的安全刷新功能等也无法实现。
[0008]因此,需要一种新的控制器安全防护方案,既能够保证控制器的安全启动等功能的实现,又能够降低对控制器主芯片的性能要求,进而有效降低用于增强控制器安全性的实现成本。

技术实现思路

[0009]本专利技术的一目的在提供一种控制器的安全防护方法及控制器,能解决现有技术中存在的对控制器主芯片的性能要求较高、控制器安全启动功能成本较大或者在主芯片性能降低时难以实现控制器安全启动功能等问题。
[0010]本专利技术的另一目的在提供一种控制器的主芯片,能够降低对控制器主芯片的性能要求并实现控制器安全启动功能。
[0011]为了实现上述目的,本专利技术提供一种控制器的安全防护方法,所述控制器包括主芯片和设置在所述主芯片外部的安全芯片,所述主芯片包括用于存放启动引导程序的启动引导程序区和用于存放应用程序的应用程序区,所述安全芯片与所述主芯片连接,且所述安全芯片中预存有第一密钥和第一数字签名;所述安全防护方法包括安全启动所述控制器,且安全启动所述控制器的步骤包括:
[0012]在所述控制器的上电过程中,所述主芯片启动并进入所述启动引导程序区;
[0013]所述主芯片从所述安全芯片中获取所述第一密钥和所述第一数字签名,并根据所述第一密钥计算出相应的校验数字签名;
[0014]若所述校验数字签名和所述第一数字签名相匹配,则所述主芯片完整运行启动引导程序,并在所述启动引导程序运行完成后从所述启动引导程序区跳转到所述应用程序区,以完成所述控制器的安全启动。
[0015]可选地,所述主芯片利用所述启动引导程序区中的相应函数,从所述安全芯片中获取所述第一密钥和所述第一数字签名,并根据所述第一密钥计算出所述校验数字签名,以及判断所述校验数字签名和所述第一数字签名是否相匹配。
[0016]可选地,所述启动引导程序区中预存有非对称公钥,所述应用程序区中预存有与所述非对称公钥相对应的非对称私钥;在安全启动所述控制器之后,所述安全防护方法还包括安全刷新所述控制器,且安全刷新所述控制器的步骤包括:
[0017]在所述应用程序区中生成相应的应用程序时,所述主芯片利用所述非对称私钥计算生成用于标记所述应用程序合法性的第二数字签名;
[0018]所述主芯片读取所述第二数字签名并采用所述非对称公钥对所述第二数字签名进行签名验证;
[0019]若签名验证通过,则所述主芯片对所述应用程序区进行安全刷新;
[0020]在刷新成功后,所述主芯片重新计算安全刷新后的所述应用程序区的第一数字签名,并将重新计算出的第一数字签名更新到所述安全芯片中,以完成所述控制器的安全刷新。
[0021]可选地,所述主芯片利用所述启动引导程序区中的相应函数,从所述应用程序区中获取所述第二数字签名,并采用所述非对称公钥对所述第二数字签名进行签名验证,且在签名验证通过后,进一步对所述应用程序区进行安全刷新。
[0022]可选地,所述安全防护方法还包括保护所述安全芯片与所述启动引导程序区之间的通信安全,且保护所述安全芯片与所述启动引导程序区之间的通信安全的步骤包括:
[0023]在所述启动引导程序区和所述安全芯片中分别预置会话密钥生成密钥;
[0024]在所述主芯片进入所述启动引导程序区之后且在所述通信信道建立前,所述主芯片在所述启动引导程序区中生成并发送随机数至所述安全芯片;
[0025]所述启动引导程序区和所述安全芯片分别基于所述随机数和所述会话密钥生成密钥,产生相应的第二密钥,以建立能够使得双方安全通信的通信信道;
[0026]所述启动引导程序区和所述安全芯片分别利用所述第二密钥,对所述通信信道传输的指令和数据进行加密和解密,以保护所述安全芯片与所述启动引导程序区之间的通信安全。
[0027]基于同一专利技术构思,本专利技术还提供一种控制器的主芯片,所述主芯片与外部的安
全芯片连接,所述安全芯片中预存有第一密钥和第一数字签名,其中,所述主芯片包括:
[0028]启动引导程序区,被配置为存放启动引导程序,并在所述控制器的上电过程中启动,能从所述安全芯片中获取所述第一密钥和所述第一数字签名,并根据所述第一密钥计算出相应的校验数字签名,且在所述校验数字签名和所述第一数字签名相匹配时,允许所述主芯片完整运行所述启动引导程序,并在所述启动引导程序运行完成后允许所述主芯片跳转到所述应用程序区,以实现所述控制器的安全启动;
[0029]应用程序区,被配置为存放应用程序。
[0030]可选地,所述启动引导程序区中预存有非对称公钥,所述应用程序区中预存有非对称私钥;
[0031]所述应用程序区还被配置为在生成相应的应用程序时,能利用所述非对称私钥计算生成用于标记所述应用程序合法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种控制器的安全防护方法,其特征在于,所述控制器包括主芯片和设置在所述主芯片外部的安全芯片,所述主芯片包括用于存放启动引导程序的启动引导程序区和用于存放应用程序的应用程序区,所述安全芯片与所述主芯片连接,且所述安全芯片中预存有第一密钥和第一数字签名;所述安全防护方法包括安全启动所述控制器,且安全启动所述控制器的步骤包括:在所述控制器的上电过程中,所述主芯片启动并进入所述启动引导程序区;所述主芯片从所述安全芯片中获取所述第一密钥和所述第一数字签名,并根据所述第一密钥计算出相应的校验数字签名;若所述校验数字签名和所述第一数字签名相匹配,则所述主芯片完整运行启动引导程序,并在所述启动引导程序运行完成后从所述启动引导程序区跳转到所述应用程序区,以完成所述控制器的安全启动。2.根据权利要求1所述的安全防护方法,其特征在于,所述主芯片利用所述启动引导程序区中的相应函数,从所述安全芯片中获取所述第一密钥和所述第一数字签名,并根据所述第一密钥计算出所述校验数字签名,以及判断所述校验数字签名和所述第一数字签名是否相匹配。3.根据权利要求1所述的安全防护方法,其特征在于,所述启动引导程序区中预存有非对称公钥,所述应用程序区中预存有与所述非对称公钥相对应的非对称私钥;在安全启动所述控制器之后,所述安全防护方法还包括安全刷新所述控制器,且安全刷新所述控制器的步骤包括:在所述应用程序区中生成相应的应用程序时,所述主芯片利用所述非对称私钥计算生成用于标记所述应用程序合法性的第二数字签名;所述主芯片读取所述第二数字签名,并采用所述非对称公钥对所述第二数字签名进行签名验证;若签名验证通过,则所述主芯片对所述应用程序区进行安全刷新;在刷新成功后,所述主芯片重新计算安全刷新后的所述应用程序区的第一数字签名,并将重新计算出的第一数字签名更新到所述安全芯片中,以完成所述控制器的安全刷新。4.根据权利要求3所述的安全防护方法,其特征在于,所述主芯片利用所述启动引导程序区中的相应函数,从所述应用程序区中获取所述第二数字签名,并采用所述非对称公钥对所述第二数字签名进行签名验证,且在签名验证通过后,进一步对所述应用程序区进行安全刷新。5.根据权利要求1

4中任一项所述的安全防护方法,其特征在于,所述安全防护方法还包括保护所述安全芯片与所述启动引导程序区之间的通信安全,且保护所述安全芯片与所述启动引导程序区之间的通信安全的步骤包括:在所述启动引导程序区和所述安全芯片中分别预置会话密钥生成密钥;在所述主芯片进入所述启动引导程序区之...

【专利技术属性】
技术研发人员:陈枭雄李继才罗勇项康泰
申请(专利权)人:联合汽车电子有限公司
类型:发明
国别省市:

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

1