CAN通信方法、设备及系统技术方案

技术编号:27948014 阅读:33 留言:0更新日期:2021-04-02 14:32
本申请实施例提供一种CAN通信方法、设备及系统,该方法应用于控制器局域网CAN通信系统,CAN通信系统包括CAN总线和与CAN总线连接的至少两个电子控制单元ECU,该方法包括:第一ECU获取第一随机数,第一ECU为至少两个ECU中的任意一个ECU,第一随机数为至少两个ECU中的主ECU在CAN总线上发送的;第一ECU获取第一随机数对应的第一随机序列;第一ECU根据第一随机序列对在CAN总线上接收的数据报文进行解密处理,和/或,对在CAN总线上发送的数据报文进行加密处理。提高了CAN通信的安全性。

【技术实现步骤摘要】
【国外来华专利技术】CAN通信方法、设备及系统
本申请涉及通信
,尤其涉及一种CAN通信方法、设备及系统。
技术介绍
目前,在多种设备(例如车辆、工业设备等)中设置有控制器局域网(controllerareanetwork,CAN)通信系统,CAN通信系统中包括CAN总线和与CAN总线连接的至少两个电子控制单元(electroniccontrolunit,ECU)。在实际应用过程中,ECU通常以广播的方式在CAN总线上发送报文,与CAN总线连接的所有ECU均可以接收到广播的数据。然而,在上述过程中,ECU在CAN总线中广播的数据可能会受到攻击,使得CAN总线中传输的数据泄露或者被非法篡改,导致CAN通信的安全性较低。
技术实现思路
本申请实施例提供一种CAN通信方法、设备及系统,提高了CAN通信的安全性。第一方面,本申请实施例提供一种CAN通信方法,该方法可以应用于控制器局域网CAN通信系统,CAN通信系统包括CAN总线和与CAN总线连接的至少两个电子控制单元ECU,针对至少两个ECU中的任意一个第一ECU:第一ECU获取第一随机数,第一本文档来自技高网...

【技术保护点】
一种CAN通信方法,其特征在于,应用于控制器局域网CAN通信系统,所述CAN通信系统包括CAN总线和与所述CAN总线连接的至少两个电子控制单元ECU,所述方法包括:/n第一ECU获取第一随机数,所述第一ECU为所述至少两个ECU中的任意一个ECU,所述第一随机数为所述至少两个ECU中的主ECU在所述CAN总线上发送的;/n所述第一ECU获取所述第一随机数对应的第一随机序列;/n所述第一ECU根据所述第一随机序列对在CAN总线上接收的数据报文进行解密处理,和/或,对在所述CAN总线上发送的数据报文进行加密处理。/n

【技术特征摘要】
【国外来华专利技术】一种CAN通信方法,其特征在于,应用于控制器局域网CAN通信系统,所述CAN通信系统包括CAN总线和与所述CAN总线连接的至少两个电子控制单元ECU,所述方法包括:
第一ECU获取第一随机数,所述第一ECU为所述至少两个ECU中的任意一个ECU,所述第一随机数为所述至少两个ECU中的主ECU在所述CAN总线上发送的;
所述第一ECU获取所述第一随机数对应的第一随机序列;
所述第一ECU根据所述第一随机序列对在CAN总线上接收的数据报文进行解密处理,和/或,对在所述CAN总线上发送的数据报文进行加密处理。


根据权利要求1所述的方法,其特征在于,所述第一ECU获取第一随机数,包括:
所述第一ECU确定所述第一ECU的主从状态,所述主从状态用于指示所述第一ECU为主ECU或者从ECU;
所述第一ECU根据所述第一ECU的主从状态获取所述第一随机数。


根据权利要求2所述的方法,其特征在于,所述第一ECU确定所述第一ECU的主从状态,包括:
所述第一ECU在所述CAN总线上发送包括第一报文标识的主节点竞争报文;
在所述CAN总线上接收所述至少两个ECU中除所述第一ECU之外的其它ECU发送的包括第二报文标识的主节点竞争报文;
根据所述第一报文标识和所述第二报文标识的大小,按照预设排序规则对所述至少两个ECU进行排序;
判断排序后的所述第一ECU是否位于第一位,若是,则确定所述第一ECU为主ECU,若否,则确定所述第一ECU为从ECU。


根据权利要求3所述的方法,其特征在于,在确定所述第一ECU为主ECU之后,还包括:
在所述第一ECU确定生命周期结束时,所述第一ECU发送主节点轮换通知消息,所述主节点轮换通知消息用于指示所述第一ECU的主从状态切换为从ECU,所述第一ECU的下一个ECU的主从状态切换为主ECU。


根据权利要求3或4所述的方法,其特征在于,所述第一ECU确定所述第一ECU的主从状态之后,还包括:
在所述第一ECU为主ECU时,所述第一ECU发送第一报文,所述第一报文中包括的所述第一ECU的主从状态为主状态、所述第一ECU的建环状态为有效状态;
在所述第一ECU为从ECU时,在所述第一ECU接收到第二ECU发送的第二报文中包括的所述第二ECU的建环状态为有效状态之后,所述第一ECU发送第三报文,所述第三报文包括的所述第一ECU的主从状态为从状态、所述第一ECU的建环状态为有效状态,所述第二ECU为排序后的所述第一ECU的前一个ECU,所述第一EUC的建环状态为有效状态用于指示所述第一ECU之前的ECU发送的报文中包括的建环状态均为有效状态。


根据权利要求5所述的方法,其特征在于,所述第一ECU根据所述第一ECU的主从状态获取所述第一随机数,包括:
在所述第一ECU为主ECU时,在所述第一ECU确定所述至少两个ECU发送的报文中的建环状态均为有效时,则所述第一ECU生成所述第一随机数;
在所述第一ECU为从ECU时,则所述第一ECU接收所述主ECU发送的所述第一随机数。


根据权利要求1-6任一项所述的方法,其特征在于,所述第一ECU根据所述第一随机序列对在所述CAN总线上发送的数据报文进行加密处理,包括:
所述第一ECU确定第一计数值;
所述第一ECU根据待发送的第一应用数据、所述第一计数值和所述第一随机数确定第一校验和;
所述第一ECU通过所述第一随机序列对所述第一应用数据、所述第一计数值和所述第一校验和进行加密处理,得到待发送的数据报文,并发送所述待发送的数据报文。


根据权利要求1-7任一项所述的方法,其特征在于,所述第一ECU根据所述第一随机序列对在CAN总线上接收的数据报文进行解密处理之后,还包括:
所述第一ECU在接收到的数据报文中获取第二计数值、第二应用数据和第二校验和;
在所述第一ECU验证所述第二计数值正确后,所述第一ECU根据所述第二计数值、所述第二应用数据和所述第一随机数确定第三校验和;
在所述第一ECU确定所述第三校验和与所述第二校验和相同时,确定接收到的数据报文正确。


一种CAN通信系统,其特征在于,包括控制器局域网CAN总线和与所述CAN总线连接的至少两个电子控制单元ECU,针对所述至少两个ECU中的任意一个第一ECU,所述第一ECU用于:
获取第一随机数,所述第一随机数为所述至少两个ECU中的主ECU在所述CAN总线上发送的;
获取所述第一随机数对应的第一随机序列;
根据所述第一随机序列对在CAN总线上接收的数据报文进行解密处理,和/或,对在所述CAN总线上发送的数据报文进行加密处理。


根据权利要求9所述的系统,其特征在于,所述第一ECU具体用于:
确定所述第一ECU的主从状态,所述主从状态用于指示所述第一ECU为主ECU或者从ECU;
根据所述第一ECU的主从状态获取所述第一随机数。


根据权利要求10所述的系统,其特征在于,所述第一ECU具体用于:
在所述CAN总线上发送包括第一报文标识的主节点竞争报文;
在所述CAN总线上接收所述至少两个ECU中除所述第一ECU之外的其它ECU发送的包括第二报文标识的主节点竞争报文;
根据所述第一报文标识和所述第二报文标识的大小,按照预设排序规则对所述至少两个ECU进行排序;
判断排序后的所述第一ECU是否位于第一位,若是,则确定所述第一ECU为主ECU,若否,则确定所述第一ECU为从ECU。


根据权利要求11所述的系统,其特征在于,在...

【专利技术属性】
技术研发人员:沙庆迪魏卓杨艳江
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1