路由激活确认方法、电子控制单元及诊断系统与流程

文档序号:36427399发布日期:2023-12-20 23:00阅读:36来源:国知局
路由激活确认方法与流程

本技术涉及车载诊断,特别是涉及一种路由激活确认方法、电子控制单元及诊断系统。


背景技术:

1、车载领域中,车上的电子控制单元ecu(electronic control unit)支持通过以太网进行网络诊断doip(diagnostic communication over internet protocol)。在诊断中,ecu可作为doip节点。路由激活是doip诊断的重要环节,外部的测试设备(又称诊断设备)与doip节点建立通信连接后,测试设备发送路由激活请求(routing activation request),doip节点接收到请求后,内部检验外部测试设备的合法性,通过安全认证过程检验合法之后,外部测试设备才能开始诊断。图1a为一种路由激活过程示意图。

2、图1b展示了内部检验外部测试设备的合法性的一般流程。相关技术中,内部检验外部测试设备的合法性如图1b所示一般涉及到如下环节:

3、1)检验外部测试设备的源地址是否一致;2)检验测试设备的路由激活类型是否是支持的路由激活类型;3)socket处理(socket通信连接);4)检验是否需要身份认证;5)检验是否需要确认机制。目前环节1)2)3)方面的判断流程是比较固定的,通常doip节点集成的协议栈都会有相应的判断流程。环节4)方面,协议栈对于检验是否需要身份认证通常是不进行认证。环节5)方面,对于检验是否需要确认机制,通常是不进行判断,或者仅使用路由激活请求携带的字段进行简单的字节匹配以验证确认。如图1b所示,在带有灰色底色的虚线框中标识的区域,代表了路由激活处理环节涉及路由激活确认的环节,该区域中n代表忽略路由激活确认,或者即便进行路由激活确认,也忽视其实施情况。

4、由于路由激活请求容易被破解,因此路由激活请求的检验确认过程非常重要。一些协议栈忽略确认的过程,从安全性上十分危险。例如,如果引入非法的外部测试设备,对车辆的安全也是有很大的隐患。为此,有必要提供一种能够保障doip诊断安全性的路由激活确认方案。


技术实现思路

1、基于上述问题,本技术提供了一种路由激活确认方法、电子控制单元及诊断系统,以在路由激活确认环节上提升doip诊断的安全性。

2、本技术实施例公开了如下技术方案:

3、本技术第一方面提供了一种路由激活确认方法,应用于车上的电子控制单元ecu,方法包括:

4、根据测试设备的第一路由激活请求生成随机种子数据,并基于第一路由激活请求和随机种子数据生成第一路由激活响应;

5、向测试设备发送第一路由激活响应,以使测试设备基于第一路由激活响应携带的随机种子数据进行运算处理生成第一种子处理结果;

6、通过预设运算处理方式对随机种子数据进行运算处理,生成随机种子数据的第二种子处理结果;预设运算处理方式为ecu与合法测试设备协定的针对ecu所生成的随机种子数据的运算处理方式;

7、接收测试设备的第二路由激活请求,第二路由激活请求携带第一种子处理结果;

8、基于第一种子处理结果与第二种子处理结果的一致性验证结果,向测试设备发送第二路由激活响应。

9、在可选的实现方式中,根据测试设备的第一路由激活请求生成随机种子数据,包括:

10、接收到第一路由激活请求后,判断四个预设条件是否均满足;

11、若四个预设条件均满足,则生成随机种子数据;四个预设条件包括第一预设条件、第二预设条件、第三预设条件和第四预设条件;

12、第一预设条件为第一路由激活请求的源地址为ecu的已知的地址;

13、第二预设条件为第一路由激活请求的激活类型为ecu支持的激活类型;

14、第三预设条件为tcp协议的socket通信处于可用状态;

15、第四预设条件为路由激活确认不需要身份验证流程或身份验证已通过。

16、在可选的实现方式中,通过预设运算处理方式对随机种子数据进行运算处理,生成随机种子数据的第二种子处理结果,包括:

17、通过对随机种子数据进行数据长度扩增、数据加密以及逻辑运算,生成随机种子数据的第二种子处理结果。

18、在可选的实现方式中,通过对随机种子数据进行数据长度扩增、数据加密以及逻辑运算,生成随机种子数据的第二种子处理结果,包括:

19、采用校验掩码扩增随机种子数据的数据长度,得到随机种子数据的扩增数据;校验掩码由ecu的供应商提供;

20、通过第一加密算法处理扩增数据,生成第一加密数据;

21、对第一加密数据进行数据首尾异或运算,得到第一运算结果;

22、采用第二加密算法基于随机种子数据、第一运算结果以及目标密钥进行运算,得到响应密钥;目标密钥为第二加密算法对应的密钥;

23、对响应密钥进行数据首尾异或运算,得到第二运算结果作为第二种子处理结果。

24、在可选的实现方式中,随机种子数据的数据长度为4字节;采用校验掩码扩增随机种子数据的数据长度,得到随机种子数据的扩增数据,包括:

25、通过在随机种子数据的每个字节统一增加预设数值,得到随机种子数据对应的4字节修改数据;

26、将12字节的校验掩码与4字节修改数据进行组合,得到的16字节组合结果作为随机种子数据的扩增数据。

27、在可选的实现方式中,通过第一加密算法处理扩增数据,生成第一加密数据,包括:

28、通过sha256算法对16字节组合结果进行加密计算,生成32字节的第一加密数据;第一运算结果的数据长度为16字节;

29、采用第二加密算法基于随机种子数据、第一运算结果以及目标密钥进行运算,得到响应密钥,包括:

30、基于第一运算结果和aes密钥,针对随机种子数据采用aes128算法的加密块链模式进行加密,得到16字节的响应密钥;aes密钥为与aes128算法对应的密钥,aes密钥作为目标密钥,aes密钥的数据长度为16字节。

31、在可选的实现方式中,基于第一运算结果和aes密钥,针对随机种子数据采用aes128算法的加密块链模式进行加密,得到16字节的响应密钥,包括:

32、将随机种子数据划分为n个待加密数据块;其中,依据被划分为的数据块在随机种子数据中的位置先后,n个待加密数据库包括由先至后的第1数据块、第2数据块…第n数据块;n为大于1的整数;

33、对第一运算结果和第1数据块进行异或操作,得到第1数据块对应的异或操作结果;

34、利用aes密钥对第1数据块对应的异或操作结果加密,得到第1数据块对应的密文;

35、对第i-1数据块对应的密文和第i数据块进行异或操作,得到第i数据块对应的异或操作结果;i为大于1且小于或等于n的整数;

36、利用aes密钥对第i数据块对应的异或操作结果加密,得到第i数据块对应的密文;第n数据块对应的密文作为响应密钥。

37、在可选的实现方式中,对响应密钥进行数据首尾异或运算,得到第二运算结果作为第二种子处理结果,包括:

38、对16字节的响应密钥执行一次数据首尾异或运算,得到8字节的中间运算结果;

39、进一步对中间运算结果进行一次数据首尾异或运算,得到4字节的第二运算结果作为第二种子处理结果。

40、本技术第二方面提供了一种路由激活确认方法,应用于测试设备,方法包括:

41、向车上的电子控制单元ecu发送第一路由激活请求,以使ecu根据第一路由激活请求生成随机种子数据;

42、接收ecu的第一路由激活响应,第一路由激活响应携带随机种子数据;

43、对随机种子数据进行运算处理,生成第一种子处理结果;

44、向ecu发送第二路由激活请求,第二路由激活请求携带第一种子处理结果;

45、接收ecu的第二路由激活响应,第二路由激活响应为ecu基于第一种子处理结果和第二种子处理结果的一致性验证结果,生成的路由激活响应;第二种子处理结果为ecu通过预设运算处理方式对随机种子数据进行运算处理,生成的处理结果;预设运算处理方式为ecu与合法测试设备协定的针对ecu所生成的随机种子数据的运算处理方式。

46、本技术第三方面提供了一种电子控制单元,电子控制单元位于车上,电子控制单元用于执行第一方面任一实现方式提供的路由激活确认方法。

47、本技术第四方面提供了一种测试设备,用于与第三方面提供的电子控制单元通信,并且用于执行第二方面提出的路由激活确认方法。

48、本技术第五方面提供了一种诊断系统,该诊断系统包括测试设备和车上的电子控制单元ecu;测试设备用于执行第二方面提出的路由激活确认方法中的步骤;ecu用于执行第一方面任一实现方式提供的路由激活确认方法中的步骤。

49、相较于现有技术,本技术具有以下有益效果:

50、本技术技术方案中,ecu在接收到第一路由激活请求后,基于该请求生成随机的种子数据,并通过向测试设备发送第一路由激活响应,将随机种子数据也一并传输给测试设备。从而ecu和测试设备双方均能够持有由ecu所生成的随机种子数据。在本技术中,ecu与合法测试设备预先协定了针对随机种子数据的统一的运算处理方式。ecu采用该预设运算处理方式对该随机种子数据进行运算处理,生成第二种子处理结果。如果测试设备也是合法的测试设备之一,也采用了该相同的预设运算处理方式对随机种子数据进行运算处理,则可以生成与第二种子处理结果相同的结果。对于ecu而言,其接收测试设备的第二路由激活请求,其中携带了测试设备基于随机种子数据运算得到的第一种子处理结果。ecu基于第一种子处理结果和第二种子处理结果的一致性验证结果,向测试设备发送第二路由激活响应。

51、如果二者一致性验证结果表明二者一致,则ecu发送的第二路由激活响应指示路由激活成功;如果二者一致性验证结果表明二者不一致,则ecu发送的第二路由激活响应指示路由激活失败。在本技术中,由于种子数据是随机生成的,而非固定的,因此相比于采用提前协定好的固定不变的4字节数据进行路由激活请求的检验确认,降低了安全风险,从而更好地保障doip诊断的安全性。此外结合第一种子处理结果和第二种子处理结果的一致性验证结果发送第二路由激活响应,也能够在一定程度上避免非法的测试设备在doip诊断阶段对车辆的安全威胁。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1