用于电子控制器安全刷新的数据校验方法技术

技术编号:24798831 阅读:33 留言:0更新日期:2020-07-07 20:56
本发明专利技术提供了一种用于电子控制器安全刷新的数据校验方法,所述用于电子控制器安全刷新的数据校验方法包括:步骤一:电子控制器接收程序包;步骤二:利用所述电子控制器中的安全模块对所述程序包进行校验;校验过程中,利用密码学方法验证所述程序包中某一个或某几个数据段的完整性和合法性,若判定所述程序包来自于合法程序发布方,则所述程序包通过验证;步骤三:若所述程序包通过验证,则所述电子控制器的启动引导程序开始执行刷新过程;否则,启动引导程序不执行刷新过程;步骤四:在所述刷新过程执行完成后,所述电子控制器从所述启动引导程序跳转到应用程序中。

【技术实现步骤摘要】
用于电子控制器安全刷新的数据校验方法
本专利技术涉及电子控制器
,特别涉及一种用于电子控制器安全刷新的数据校验方法。
技术介绍
随着汽车智能网联趋势的发展,汽车电子控制器(ECU)面临越来越多的安全威胁。一种安全威胁是非法地篡改ECU的程序,并用篡改后的程序对ECU进行更新,达到改变ECU工作逻辑的目的。应对此种安全威胁的手段之一,是在ECU上部署安全刷新的措施。安全刷新的过程是:步骤一:ECU接收加密的程序包;步骤二:利用ECU中的安全模块对刷新进ECU中的程序包进行校验。校验过程中,利用密码学方法来验证程序包的完整性和合法性,例如,非对称加密算法和Hash算法,或者基于对称密码的CMAC算法,只有来自于合法程序发布方的程序包才能验证通过。步骤三:若校验结果通过,则安全模块让ECU的启动引导程序(Bootloader)开始执行正常的刷新过程;否则,Bootloader不执行刷新过程。步骤四:在刷新过程执行完成后,系统从Bootloader跳转到应用程序中。通常的做法是对整个程序包进行校验,这往往对ECU的性能要求较高,包括主频、内存和存储空间等。然而,大多汽车上ECU的性能并不强大,对整个程序包进行校验,会带来耗时高和计算量大的缺点,影响ECU的刷新时间。
技术实现思路
本专利技术的目的在于提供一种用于电子控制器安全刷新的数据校验方法,以解决现有的在安全刷新过程中对于控制器性能要求过高的问题。为解决上述技术问题,本专利技术提供一种用于电子控制器安全刷新的数据校验方法,所述用于电子控制器安全刷新的数据校验方法包括:步骤一:电子控制器接收程序包;步骤二:利用所述电子控制器中的安全模块对所述程序包进行校验;校验过程中,利用密码学方法验证所述程序包中某一个或某几个数据段的完整性和合法性,若判定所述程序包来自于合法程序发布方,则所述程序包通过验证;步骤三:若所述程序包通过验证,则所述电子控制器的启动引导程序开始执行刷新过程;否则,启动引导程序不执行刷新过程;步骤四:在所述刷新过程执行完成后,所述电子控制器从所述启动引导程序跳转到应用程序中。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,所述用于电子控制器安全刷新的数据校验方法还包括:对待校验的数据段的地址信息进行动态调整来选择待校验的数据段,或者,通过固定的地址信息选择待校验数据段,或者通过动态调整部分地址信息,其他部分地址信息固定以选择待校验数据段。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,所述合法程序发布方生成所述程序包时,将待校验的数据段的信息包含在一配置文件中,与程序包同时发送至所述电子控制器中,所述配置文件包括待校验数据段的地址信息,以及所述待校验数据段的参考签名值。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,所述程序包加密后发送至所述电子控制器,程序包加密和解密算法采用对称算法或非对称算法,所述对称算法或非对称算法包括但不限于AES算法、RSA算法和ECC算法等。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,电子控制器接收程序包包括:在所述程序包触发所述电子控制器进行刷新之后,程序包及配置文件被传递到所述电子控制器的安全模块中进行处理,所述安全模块提取出其中的待校验数据段和参考签名值。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,利用所述电子控制器中的安全模块对所述程序包进行校验包括:所述安全模块根据配置文件中待校验数据段的地址信息索引数据,所述安全模块利用签名算法计算所述待校验数据段的计算签名值,所述计算签名值与参考签名值进行比对,若所述计算签名值和参考签名值相等,则所述程序包通过验证;若所述计算签名值和参考签名值相异,则所述程序包未通过验证;所述签名算法包括但不限于Hash算法、CMAC算法或HMAC算法等。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,若选择某一个数据段进行校验,则对该所述数据段的计算签名值和参考签名值进行比对。可选的,在所述的用于电子控制器安全刷新的数据校验方法中,若选择多个数据段进行校验,则所述配置文件中带有多个参考签名值或其组合,多个参考签名值或其组合分别对应所选的某几个数据段,所述安全模块分别对某几个数据段的参考签名值或其组合进行校验,当所有参考签名值或其组合均通过校验,则所述程序包通过验证;或者,对多个所选的数据段进行合并,用签名算法进行计算得到计算签名总值,则对所述计算签名总值和所述参考签名值或其组合进行比对;或者,用签名算法分别对每个数据段进行计算,对得到的多个计算签名值进行合并得到所述计算签名总值,对所述计算签名总值和所述参考签名值或其组合进行比对。在本专利技术提供的用于电子控制器安全刷新的数据校验方法中,在进行软件升级的时候,不需要对整个程序包进行校验,而只需要对若干个数据段进行校验即可,解决了安全刷新耗时高和计算量大的缺点,减小对电子控制器的刷新时间的影响。另外,待校验数据段可以进行动态选择,通过配置文件通知待刷新的电子控制器,可以提高刷新数据校验的效率,间接降低对汽车电子控制器的性能要求。附图说明图1是现有的用于电子控制器安全刷新的数据校验方法示意图;图2是本专利技术一实施例的用于电子控制器安全刷新的数据校验方法示意图;图3是本专利技术一实施例的用于电子控制器安全刷新的数据校验方法中程序包示意图;图4是本专利技术一实施例的用于电子控制器安全刷新的数据校验方法示意图;图中所示:10-程序包;11-配置文件;20-电子控制器;21-安全模块;22-启动引导程序;23-应用程序。具体实施方式以下结合附图和具体实施例对本专利技术提出的用于电子控制器安全刷新的数据校验方法作进一步详细说明。根据下面说明和权利要求书,本专利技术的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本专利技术实施例的目的。本专利技术的核心思想在于提供一种用于电子控制器安全刷新的数据校验方法,以解决现有的在安全刷新过程中对于控制器性能要求过高的问题。为实现上述思想,本专利技术提供了一种用于电子控制器安全刷新的数据校验方法,所述用于电子控制器安全刷新的数据校验方法包括:步骤一:电子控制器接收程序包;步骤二:利用所述电子控制器中的安全模块对所述程序包进行校验;校验过程中,利用密码学方法验证所述程序包中某一个或某几个数据段的完整性和合法性,若判定所述程序包来自于合法程序发布方,则所述程序包通过验证;步骤三:若所述程序包通过验证,则所述电子控制器的启动引导程序开始执行刷新过程;否则,启动引导程序不执行刷新过程;步骤四:在所述刷新过程执行完成后,所述电子控制器从所述启动引导程序跳转到应用程序中。本专利技术的实施例提供一种用于电子控制器20安全刷新的数据校验方法,如图2~4所示,所述用于电子控制器20安全刷新的数据校验方法包括:步骤一:电子控制器20接收加密的程序本文档来自技高网...

【技术保护点】
1.一种用于电子控制器安全刷新的数据校验方法,其特征在于,所述用于电子控制器安全刷新的数据校验方法包括:/n步骤一:电子控制器接收程序包;/n步骤二:利用所述电子控制器中的安全模块对所述程序包进行校验;/n校验过程中,利用密码学方法验证所述程序包中某一个或某几个数据段的完整性和合法性,若判定所述程序包来自于合法程序发布方,则所述程序包通过验证;/n步骤三:若所述程序包通过验证,则所述电子控制器的启动引导程序开始执行刷新过程;否则,启动引导程序不执行刷新过程;/n步骤四:在所述刷新过程执行完成后,所述电子控制器从所述启动引导程序跳转到应用程序中。/n

【技术特征摘要】
1.一种用于电子控制器安全刷新的数据校验方法,其特征在于,所述用于电子控制器安全刷新的数据校验方法包括:
步骤一:电子控制器接收程序包;
步骤二:利用所述电子控制器中的安全模块对所述程序包进行校验;
校验过程中,利用密码学方法验证所述程序包中某一个或某几个数据段的完整性和合法性,若判定所述程序包来自于合法程序发布方,则所述程序包通过验证;
步骤三:若所述程序包通过验证,则所述电子控制器的启动引导程序开始执行刷新过程;否则,启动引导程序不执行刷新过程;
步骤四:在所述刷新过程执行完成后,所述电子控制器从所述启动引导程序跳转到应用程序中。


2.如权利要求1所述的用于电子控制器安全刷新的数据校验方法,其特征在于,所述用于电子控制器安全刷新的数据校验方法还包括:对待校验的数据段的地址信息进行动态调整来选择待校验的数据段,或者,通过固定的地址信息选择待校验数据段,或者通过动态调整部分地址信息,其他部分地址信息固定以选择待校验数据段。


3.如权利要求2所述的用于电子控制器安全刷新的数据校验方法,其特征在于,所述合法程序发布方生成所述程序包时,将待校验的数据段的信息包含在一配置文件中,与程序包同时发送至所述电子控制器中,所述配置文件包括待校验数据段的地址信息,以及所述待校验数据段的参考签名值。


4.如权利要求3所述的用于电子控制器安全刷新的数据校验方法,其特征在于,所述程序包加密后发送至所述电子控制器,程序包加密和解密算法采用对称算法或非对称算法,所述对称算法或非对称算法包括但不限于AES算法、RSA算法和ECC算法等。


5.如权利要求3所述的用于电子控制器安全刷...

【专利技术属性】
技术研发人员:罗勇贾鹤鹏林旺城姜亮李萌
申请(专利权)人:联合汽车电子有限公司
类型:发明
国别省市:上海;31

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

1