CN117793706A - 一种车内ecu组通信方法及通信*** - Google Patents
一种车内ecu组通信方法及通信*** Download PDFInfo
- Publication number
- CN117793706A CN117793706A CN202410217492.3A CN202410217492A CN117793706A CN 117793706 A CN117793706 A CN 117793706A CN 202410217492 A CN202410217492 A CN 202410217492A CN 117793706 A CN117793706 A CN 117793706A
- Authority
- CN
- China
- Prior art keywords
- group
- ecu
- communication
- common
- vehicle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000006854 communication Effects 0.000 title claims abstract description 525
- 238000004891 communication Methods 0.000 title claims abstract description 521
- 238000000034 method Methods 0.000 title claims abstract description 42
- 239000003999 initiator Substances 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 18
- 239000000284 extract Substances 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 230000006855 networking Effects 0.000 description 3
- 238000003745 diagnosis Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明属于车联网技术领域,尤其涉及一种车内ECU组通信方法及通信***。一种车内ECU组通信方法包括以下内容:根据车辆V上各普通ECU间的通信频率和信任度所构成的综合评分,将车辆V上的普通ECU划分成不同的通信小组,并将分组信息存储至车辆V上的网关ECU内;车辆V启动上电后,网关ECU生成各通信小组的组密钥并进行存储,同时,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内,每个通信小组内的各普通ECU之间均通过通信小组的组密钥进行对称加密通信。本发明能够提高车内网通信安全性和可靠性,保证车内网信息的传输效率。
Description
技术领域
本发明属于车联网技术领域,尤其涉及一种车内ECU组通信方法及通信***。
背景技术
随着时代快速的发展,越来越多的汽车进行联网,车联网时代随之而来,汽车网联化是一把双刃剑,在带来便利的同时,也使得信息安全形势变得愈加严峻和复杂。对车辆而言,车联网分为车外网和车内网,车外网例如车-车、车-路、车-云、云-路等,车内网指车辆自身内部的网络。各种车辆ECU(电子控制器单元)和CAN总线是车内网的主要组成部分,一个车辆的发动机、底盘、车身、娱乐***等相关的数百个ECU都挂载在CAN总线上。
恶意ECU可以通过多种方式挂载在车内网的CAN总线上,如恶意ECU可以伪装成故障检测装置,在车辆进行故障检测时通过OBD接口挂载在CAN总线;或者,某个车辆ECU在受损进行更换时,被安装到车辆上的是恶意ECU等等。而挂载在CAN总线上的恶意ECU,可以窃听CAN总线上以明文形式传播的消息,并通过CAN总线向其他车辆ECU发送恶意消息、进行恶意操作,以达到控制车辆的目的。所以保证各个车辆ECU之间通过CAN总线进行安全通信格外重要。
常用来提高车内网安全性和可靠性的方法是在各车辆ECU正式通信前进行身份认证,或是通过使用多重密钥来加密通过CAN总线进行传播的消息。但是这些方法不仅会增加各车辆ECU的计算开销,而且各车辆ECU还因为需要存储其他所有可能与之进行通信的车辆ECU身份信息、密钥信息,从而导致各车辆ECU的存储空间被大量占用,车内网通信延迟严重,车内网信息的传输效率大大降低,甚至影响到了车辆***的响应速度。
发明内容
本发明的目的是克服上述现有技术的不足,提供一种车内ECU组通信方法,能够提高车内网通信安全性和可靠性,同时保证车内网信息的传输效率。
为实现上述目的,本发明采用了以下技术方案:
一种车内ECU组通信方法,包括以下内容:
根据车辆V上各普通ECU间的通信频率和信任度所构成的综合评分,将车辆V上的普通ECU划分成不同的通信小组,并将分组信息存储至车辆V上的网关ECU内;车辆V启动上电后,网关ECU生成各通信小组的组密钥并进行存储,同时,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内,每个通信小组内的各普通ECU之间均通过通信小组的组密钥进行对称加密通信。
优选的,将车辆V上的普通ECU划分成不同的通信小组,并将分组信息存储至车辆V上的网关ECU内还包括以下子步骤:
S21,将车辆V上任意两个普通ECU记为一个通信单元,车载***统计车辆V上各通信单元在上一个分组周期内的通信频率G(f),G(f)≥0且G(f)为整数;
S22,车载***统计车辆V上各通信单元在上一个分组周期内的信任度G(u),G(u)≤0且G(u)为整数;
通信单元里的两个普通ECU各自的信任度之和构成当前通信单元的信任度G(u),各普通ECU在每个分组周期内的初始信任度均为0,普通ECU每发生一次不信任事件,则对应的普通ECU的信任度减1;
S23,车载***统计车辆V上各通信单元在上一个分组周期内的综合评分G(c)=G(f)+G(u)后,将存在通信关系且综合评分G(c)超过第一批次评分阈值G1的通信单元分入同一个通信小组内;同一个普通ECU只能出现在一个通信小组中,已被分组的普通ECU所对应的通信单元不再参与下一批分组,即不再属于待分组的通信单元;
S24,待分组的通信单元参与下一批次分组,降低下一批次分组的评分阈值,
将存在通信关系且综合评分G(c)超过下一批次分组评分阈值的通信单元分入同一个通信小组内,重复S24,直至最后一批次分组;
S25,最后一批次分组时,将存在通信关系且综合评分G(c)超过最后一批次分组评分阈值的通信单元分入同一个通信小组内,其余未分组的普通ECU被划分至同一个通信小组内,至此当前车辆V上所有普通ECU在当前分组周期内均被分组,车载***将当前分组信息存储至车辆V上的网关ECU内。
优选的,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内还包括以下子步骤:
S31,车辆V启动上电后,网关ECU生成各通信小组的组密钥后,网关ECU将各组密钥与车辆V上所有普通ECU的注册信息、分组信息对应绑定后进行存储;
S32,网关ECU分别使用各普通ECU的公钥Pb非对称加密对应的组密钥以及各普通ECU所在通信小组的成员信息后,形成密钥更新信息M2,网关ECU将密钥更新信息M2传输至车辆V上的各对应的普通ECU内;
通信小组的成员信息指当前通信小组所包含的所有普通ECU的id编号;
S33,各普通ECU使用自身存储的私钥Pr非对称解密密钥更新信息M2后得到对应的组密钥以及自身所在通信小组的成员信息,各普通ECU更新自身所存储的组密钥以及所在通信小组的成员信息。
优选的,在将车辆V上的普通ECU划分成不同的通信小组前,还包括以下子步骤:
S11,车辆V/网关ECU/普通ECU通过在线下安全渠道向云平台发送注册申请来进行注册;
当车辆V发送注册申请时,注册申请中包含当前车辆V自身的id编号;
当网关ECU/普通ECU发送注册申请时,注册申请中包含当前网关ECU/普通ECU自身的id编号、当前网关ECU/普通ECU被安装车辆的id编号;
S12,云平台收到注册申请后,从当前注册申请中提取出id编号与云平台数据库内的注册信息进行比对,若云平台数据库内的注册信息中已存在当前id编号,则云平台向当前车辆V/网关ECU/普通ECU返回重复注册的报文信息;
若云平台数据库内的注册信息中不存在当前车辆V的id编号,则云平台将当前车辆V的id编号作为注册信息进行存储;
若云平台数据库内的注册信息中不存在当前普通ECU/网关ECU的id编号,且存在当前普通ECU/网关ECU被安装车辆的id编号,则云平台通过量子随机数发生器芯片生成一对非对称根密钥并充注进当前普通ECU/网关ECU的安全介质中,同时,云平台将当前普通ECU/网关ECU的id编号、非对称根密钥、当前普通ECU/网关ECU被安装车辆的id编号绑定后形成注册信息并存储于云平台数据库内;
若云平台数据库内的注册信息中不存在当前网关ECU的id编号,且也不存在当前普通ECU/网关ECU被安装车辆的id编号,则云平台向当前网关ECU/普通ECU返回注册异常的报文信息;
云平台数据库内新增注册信息用对应网关ECU的公钥非对称加密后通过无线通信实时发送至对应的网关ECU内,网关ECU使用自身的私钥进行非对称解密后得到新增注册信息并存储,各网关ECU内存储当前网关ECU被安装车辆上所有普通ECU的注册信息。
优选的,车辆V启动上电后,网关ECU生成各通信小组的组密钥并进行存储,同时,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内,同一通信小组内的各普通ECU之间进行组内通信;不同通信小组内的普通ECU基于网关ECU进行跨组通信;各普通ECU使用自身的一对非对称根密钥与网关ECU之间进行通信;车辆V断电后,直至车辆V再次启动上电,当前车辆V上的网关ECU重新生成各通信小组的组密钥,并加密传输至各通信小组所包含的普通ECU内。
优选的,组内通信具体包括以下内容:
将同一通信小组内的普通ECU分为同组消息发送者和同组消息接收者,同组消息发送者使用组密钥将采集到的车辆数据D1对称加密成组内密文信息M3并发送给同组消息接收者,同组消息接收者使用组密钥将组内密文信息M3对称解密后得到车辆数据D1。
优选的,跨组通信具体包括以子步骤:
S41,车辆V上第i个通信小组内的第j个普通ECU向网关ECU发送希望向第a个通信小组内的第e个普通ECU发送消息的跨组通信请求A1:A1={Pb(i,j)⊕S(i)||id(i,j)||id(a,e)},
其中,i、j、a、e均为正整数,id(i,j)表示第i个通信小组内的第j个普通ECU的id编号,id(a,e)表示第a个通信小组内的第e个普通ECU的id编号,S(i)表示第i个通信小组当前的组密钥,Pb(i,j)表示第i个通信小组内的第j个普通ECU的公钥,⊕为异或运算符,||为连接运算符;
S42,网关ECU验证跨组通信发起者身份的合法性:
网关ECU从跨组通信请求A1中提取出跨组通信发起者的id编号id(i,j),再在网关ECU内找到与id(i,j)对应的组密钥S(i)*、与id(i,j)对应的公钥Pb(i,j)*后,计算Pb(i,j)*⊕S(i)*是否与从跨组通信请求A1中提取出的Pb(i,j)⊕S(i)相同,若Pb(i,j)*⊕S(i)*与Pb(i,j)⊕S(i)不相同,则跨组通信发起者身份非法,网关ECU丢弃当前跨组通信请求A1;
若Pb(i,j)*⊕S(i)*与Pb(i,j)⊕S(i)相同,则跨组通信发起者身份合法,网关ECU将跨组通信接收者的公钥Pb(a,e)加密成跨组通信密钥信息M4后,发送给跨组通信发起者:M4=Pb(i,j)[Pb(a,e)],
其中,Pb(i,j)[Pb(a,e)]表示使用跨组通信发起者的公钥Pb(i,j)非对称加密跨组通信接收者的公钥Pb(a,e);
S43,跨组通信发起者,即第i个通信小组内的第j个普通ECU接收到跨组通信密钥信息M4,使用自身的私钥Pr(i,j)非对称解密跨组通信密钥信息M4后得到跨组通信接收者的公钥Pb(a,e);
S44,第i个通信小组内的第j个普通ECU使用跨组通信接收者的公钥Pb(a,e)将采集到的车辆数据D2进行非对称加密后生成跨组信息M5后发送给跨组通信接收者,即第a个通信小组内的第e个普通ECU;
S45,跨组通信接收者使用自身的私钥Pr(a,e)非对称解密跨组信息M5后得到车辆数据D2。
优选的,在步骤44中:跨组通信发起者在向跨组通信接收者发送跨组信息M5后,丢弃跨组通信接收者的公钥Pb(a,e)。
优选的,若车辆V在当前分组周期内所记录的不信任事件总数超过第二安全阈值ST2时,则车载***向驾驶人员发出警报,提醒驾驶人员人工检验网关ECU是否为恶意ECU。
本发明还提供一种基于云端的车辆ECU通信***,包括:车辆V上安装的普通ECU、网关ECU、CAN总线;
网关ECU还包括量子随机数芯片、网关ECU安全介质、网关ECU通信模块、网关ECU处理模块;各普通ECU内还包括普通ECU安全介质、普通ECU通信模块、普通ECU处理模块;
量子随机数芯片用来产生组密钥;
网关ECU通信模块用来接收通过CAN总线传输至网关ECU的信息,或是通过CAN总线向普通ECU发送信息;
网关ECU安全介质用来存储当前车辆V上所有普通ECU的注册信息、分组信息、各通信小组的组密钥信息以及网关ECU自身的注册信息;
网关ECU处理模块用来计算处理网关ECU内的数据,或调用网关ECU安全介质内存储的密钥来对网关ECU通信模块接收或发送的信息进行解密或加密;
普通ECU安全介质用来存储当前普通ECU的注册信息、所在通信小组的成员信息、所在通信小组的组密钥信息;
普通ECU通信模块用来接收通过CAN总线传输至普通ECU的信息,或是通过CAN总线向网关ECU或其他普通ECU发送信息;
普通ECU处理模块用来计算处理普通ECU内的车辆数据,或调用普通ECU安全介质内存储的组密钥或自身的根密钥来进行组内通信、跨组通信、与网关ECU进行通信;
各模块被编程或配置以执行如上述的一种车内ECU组通信方法。
本发明的有益效果在于:
(1)本发明的一种车内ECU组通信方法,根据当前车辆V上各普通ECU在上一个分组周期内的通信频率和信任度进行综合评分后,划分当前车辆V上的所有普通ECU在当前分组周期内所属的通信小组,每个分组周期内的各通信小组成员固定,综合考量了各普通ECU的通信频率、信任度、通信关系,将存在通信关系且通信频率相近、信任度相近的若干个普通ECU划分进同一个通信小组内,最后将不存在通信关系或是信任度较低的若干个普通ECU划分成一个通信小组或是让它们各自作为一个通信小组,只有同一个通信小组内的成员才能拥有同一个组密钥。
(2)在每次车辆V上电后,网关ECU都通过量子随机数芯片产生不同的真随机数来作为当前车辆V上各通信小组的组密钥,即每次车辆V上电后各通信小组的组密钥都不同且都为难以破解的真随机数,即使当前车辆V上出现恶意ECU,恶意ECU也无法在车辆V本次断电之前破解全部通信小组的组密钥,即恶意ECU即使截获CAN总线上传输来的不同通信小组的信息,因为无法逐一破解,更无法得到全部普通ECU所采集到的车辆数据明文,这为后续车内各普通ECU之间进行安全通信奠定了基础。
(3)网关ECU使用当前车辆V上各普通ECU的公钥来非对称加密各普通ECU所属通信小组的组密钥以及各普通ECU所在通信小组的成员信息后,形成密钥更新信息M2,而各普通ECU只有使用自身的私钥才能非对称解密密钥更新信息M2,得到本次车辆上电后的组密钥。所以即使当前车辆V上出现了一个伪装成普通ECU的恶意ECU,也因为该恶意ECU无法获取解密当前密钥更新信息M2的私钥,从而导致该恶意ECU无法解密出正确的组密钥。
(4)本发明的一种车内ECU组通信方法,在定时重新划分通信小组的基础上,每次车辆上电都重新产生各通信小组的组密钥,并且使用不同的普通ECU对应的公钥来非对称加密,使各普通ECU所接收到密钥更新信息M2也不同,大大提高了每次车辆V上电后,车内ECU组密钥更新的安全性和保密性。
(5)同一个通信小组内的成员都是在上一个分组周期内存在通信关系,且综合评分相近的若干个普通ECU,同一个通信小组内的普通ECU之间无论是通信频率还是彼此间的信任度,相较于其他通信小组内的普通ECU而言都是较高的,所以同一通信小组内的各普通ECU之间进行组内通信。同一个通信小组内的各普通ECU只需通过组密钥对称加密自身采集的车辆数据或是对称解密接收到的组内密文信息M3即可,对称加解密相比于非对加解密有更快的加解密速度,在保证组内通信安全的同时,减少了各普通ECU的计算开销,缩短了同一个通信小组内各普通ECU间的通信延迟,提高了车内网信息的传输效率。
(6)不同通信小组间的普通ECU因在上一个分组周期内通信频率、信任度都较低,所以需借助网关ECU先对跨组通信发起者身份的合法性进行验证,只有身份合法的跨组通信发起者才能得到包含跨组通信接收者公钥的跨组通信密钥信息M4,且跨组通信密钥信息M4是网关ECU使用跨组通信发起者的公钥进行非对称加密的,所以跨组通信发起者只有使用自身的私钥进行非对称解密才能得到跨组通信接收者的公钥。跨组通信发起者使用跨组通信接收者的公钥非对称加密生成跨组信息M5并发送给跨组通信接收者,同时跨组通信发起者丢弃当前跨组通信接收者的公钥,跨组通信接收者也只有使用自身的私钥才能进行非对称解密。即跨组通信发起者只能与跨组通信接收者直接进行一次单向的通信,若需再次进行跨组通信,则跨组通信发起者需再次借助网关ECU进行身份验证以获取跨组通信接收者的公钥才行,本发明的跨组通信保证了在上一个分组周期内通信频率、信任度都较低的普通ECU间的通信安全。
(7)同一个通信小组内的各普通ECU在每次车辆V上电后,只需存储当前组密钥即可与需频繁通信的组内成员之间进行通信;而跨组通信过程中,网关ECU给身份合法的跨组通信发起者分发跨组通信接收者的公钥,跨组通信发起者在向跨组通信接收者发送跨组信息M5后,就丢弃当前跨组通信接收者的公钥,即跨组通信过程中各普通ECU无需存储其他普通ECU的公钥,每次跨组通信发起者向网关ECU进行申请即可。本发明的车内ECU通信方法大大减轻了各普通ECU的密钥存储和管理压力,对各普通ECU的存储空间的占用量也较小,进一步避免了因各普通ECU的存储空间占用量过高引起车内网通信延迟、车辆***响应速度降低的情况发生。
(8)在本发明中,若当前车辆上出现恶意ECU,因该恶意ECU在车内ECU组密钥更新的过程中就无法解密出正确的组密钥,从而导致该恶意ECU在组内通信的过程中,也无法解密同组消息发送者所发送来的组内密文信息M3,即恶意ECU无法窃听同组其他普通ECU所采集的车辆数据。若该恶意ECU企图通过CAN总线向当前车辆V上其他普通ECU发送恶意密文来进行恶意操作,也因为该恶意ECU没有对应的组密钥和跨组通信的公钥,所以接收到恶意密文的普通ECU无法解密出恶意密文中所包含的恶意信息,进而普通ECU也不会按照恶意ECU的要求实现恶意操作,提高了车辆后续驾驶过程中的安全性。
(9)一旦当前车辆上出现恶意ECU,就可能导致部分普通ECU或网关ECU所记录的不信任事件数量上升,不信任事件例如部分普通ECU或网关ECU接收不到回复或是接收到的信息解密后发现明文错误或不符合要求,又或者是网关ECU发现跨组通信发起者身份不合法。上一个分组周期内的不信任事件数量不仅会影响该恶意ECU在当前分组周期的分组情况,例如该恶意ECU因上一个分组周期内不信任事件过多导致综合评分过低,从而在当前分组周期内自成一个通信小组,和其他普通ECU间只能进行跨组通信;而且当前分组周期内该恶意ECU被记录的不信任事件总数超过第一安全阈值ST1时,车载***还会直接向驾驶人员发出警报,提醒驾驶人员人工检验该恶意ECU,这就使得恶意ECU会被很快被排查出来。本发明具有在车内通信过程中发现恶意ECU的功能,进一步地提高了车内ECU间的通信安全。
(10)在本发明的一种车内ECU组通信方法中,当前车辆V上所有普通ECU于当前分组周期内所记录的不信任事件总数超过第二安全阈值ST2时,车载***会直接向驾驶人员发出警报,提醒驾驶人员人工检验网关ECU是否为恶意ECU。即本发明在车内ECU通信的过程中即可科学地评定网关ECU的安全性,进一步地提高了提高车内网通信安全性和可靠性。
附图说明
图1为一种车内ECU组通信方法的流程图;
图2为车内若干个普通ECU之间的通信关系示意图;
图3为本发明的车内网整体架构示意图。
具体实施方式
为使本发明的技术方案更加清晰明确,下面结合附图对本发明进行清楚、完整地描述,本领域普通技术人员在没有做出创造性劳动前提下对本发明技术方案的技术特征进行等价替换和常规推理得出的方案均落入本发明的保护范围。
为便于理解和描述,在本发明中,车辆ECU包括网关ECU和普通ECU,车辆上除网关ECU外的所有ECU都属于普通ECU,包括车辆出厂就自带的电子控制器单元(例如柴油机、门锁、雨刮、自动变速器、路由器等),以及通过车辆上的外接接口挂载在CAN总线上的电子控制器单元(例如OBD诊断仪等)。
例如柴油机、雨刮等普通ECU在车辆的使用中出现故障时,是需要及时更换的。
实施例1
如图1所示,为本发明一种车内ECU组通信方法的流程图,具体步骤如下:
S1,车辆V、网关ECU和普通ECU均通过线下的安全渠道进行注册后,各普通ECU内均被充注一对非对称根密钥,网关ECU内存储当前网关ECU被安装车辆上所有普通ECU的注册信息,
普通ECU的注册信息包括普通ECU的id编号、普通ECU内被充注的一对非对称根密钥。
一个普通ECU被生产出来后,不需要立刻通过线下的安全渠道进行注册,但是该普通ECU一旦有了去向,例如作为某个车辆的门锁或是作为某品牌车辆通用的故障诊断仪时,就必须通过线下的安全渠道进行注册,且此时一定是已经确认好该普通ECU需要安装在哪一辆车辆上,或是使用在哪些车辆上。
S2,车辆V的车载***根据当前车辆V上各普通ECU间的通信频率和信任度所构成的综合评分,将当前车辆V上普通ECU划分成不同的通信小组,并将分组信息存储至当前车辆V上的网关ECU内。
S3,车辆V启动上电后,当前车辆V上的网关ECU生成各通信小组的组密钥并进行存储,同时,当前车辆V上的网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内,各普通ECU解密后得到对应的组密钥。
S4,当前车辆V上进行正式的车内通信:同一通信小组内的各普通ECU之间进行组内通信;不同通信小组内的普通ECU基于网关ECU进行跨组通信;各普通ECU使用自身的一对非对称根密钥与网关ECU之间进行通信。
S5,当前车辆V断电后,当前车辆V上的车内通信正式结束,直至当前车辆V再次启动上电,回到S3。
在S1中还包括以下子步骤:
S11,车辆V/网关ECU/普通ECU通过在线下安全渠道向云平台发送注册申请来进行注册;
当车辆V发送注册申请时,注册申请中包含当前车辆V自身的id编号;
当网关ECU或普通ECU发送注册申请时,注册申请中包含当前网关ECU或普通ECU自身的id编号、当前网关ECU或普通ECU被安装车辆的id编号。
在本实施例中,车辆V的id编号为车辆识别码,网关ECU和普通ECU的id编号为它们的产品序列号,车辆V、网关ECU和普通ECU的id编号具有唯一性。
S12,云平台收到注册申请后,从当前注册申请中提取出id编号与云平台数据库内的注册信息进行比对,若云平台数据库内的注册信息中已存在当前id编号,则云平台向当前车辆V/网关ECU/普通ECU返回重复注册的报文信息;
若云平台数据库内的注册信息中不存在当前车辆V的id编号,则云平台将当前车辆V的id编号作为注册信息进行存储;
若云平台数据库内的注册信息中不存在当前普通ECU/网关ECU的id编号,且存在当前普通ECU/网关ECU被安装车辆的id编号,则云平台通过量子随机数发生器芯片生成一对非对称根密钥并充注进当前普通ECU/网关ECU的安全介质中,同时,云平台将当前普通ECU/网关ECU的id编号与它所对应的一对非对称根密钥绑定后,再绑定至当前普通ECU/网关ECU被安装车辆的id编号以形成注册信息并存储于云平台数据库内;
一对非对称根密钥包括一个公钥和一个私钥;
若云平台数据库内的注册信息中不存在当前网关ECU的id编号,同时也不存在当前普通ECU/网关ECU被安装车辆的id编号,则云平台向当前网关ECU/普通ECU返回注册异常的报文信息;
并且,云平台将云平台数据库内新增注册信息用对应网关ECU的公钥非对称加密后通过无线通信实时发送至对应的网关ECU内,网关ECU使用对应的私钥进行非对称解密后得到并存储新增注册信息,各网关ECU内存储当前网关ECU被安装车辆上所有普通ECU的注册信息。
为便于理解,将云平台数据库内的新增注册信息记为M1,新增注册信息M1包括新增的普通ECU的id编号及对应的各对非对称根密钥,新增注册信息M1必然与某个车辆的id编号所绑定,云平台找到与该车辆的id编号所绑定的网关ECU的一对非对称密钥,使用非对称密钥中的公钥将新增注册信息M1进行非对称加密成密文后通过无线通信发送至对应的网关ECU内,网关ECU从自身安全介质中提取出私钥对密文进行解密后得到并存储新增注册信息M1的明文。
在S2中,还包括以下子步骤:
S21,将当前车辆V上任意两个普通ECU记为一个通信单元,车载***统计当前车辆V上各通信单元在上一个分组周期内的通信频率G(f),
在一个分组周期内,通信单元里的两个普通ECU间进行一次单向通信,则通信频率G(f)加1,通信单元里的两个普通ECU间进行一次双向通信,则通信频率G(f)加2,G(f)≥0且G(f)为整数。
S22,车载***统计当前车辆V上各通信单元在上一个分组周期内的信任度G(u),G(u)≤0且G(u)为整数。
通信单元里的两个普通ECU各自的信任度之和构成各通信单元的信任度G(u),各普通ECU在每个分组周期内的初始信任度为0,每发生一次不信任事件,则对应普通ECU的信任度减1,不信任事件由除当前普通ECU外的其他对应的普通ECU、网关ECU进行判定。
如需普通ECU1向普通ECU2发出消息并且需要普通ECU2进行消息回复,若普通ECU2未在要求的时间内进行回复,则普通ECU1记此次通信为普通ECU2的一次不信任事件;若普通ECU2给普通ECU1发送密文或进行回复,但普通ECU1解密后发现明文错误或不符合要求,则普通ECU1也记此次通信为普通ECU2的一次不信任事件。
S23,车载***统计当前车辆V上各通信单元在上一个分组周期内的综合评分G(c)=G(f)+G(u)后,将存在通信关系且综合评分G(c)超过第一批次评分阈值G1的通信单元分入同一个通信小组内,
同一个普通ECU只能出现在一个通信小组中,已被分组的普通ECU所对应的通信单元不再参与下一批分组,即不再属于待分组的通信单元;
车载***完成当前批次分组后得到n个通信小组、m个待分组的通信单元,n≥1、m≥1且n、m为正整数;
两个普通ECU间存在通信关系,即对应的这两个普通ECU间G(f)>0;两个普通ECU间不存在通信关系,即对应的这两个普通ECU间G(f)=0;
S24,待分组的通信单元参与下一批次分组,降低下一批次分组的评分阈值,
将存在通信关系且综合评分G(c)超过下一批次分组评分阈值的通信单元分入同一个通信小组内,重复S24,直至最后一批次分组;
S25,最后一批次分组评分阈值为0,将存在通信关系且综合评分G(c)超过最后一批次分组评分阈值的通信单元分入同一个通信小组内,其余未分组的普通ECU被划分至同一个通信小组内或各未分组的普通ECU自成一个通信小组,至此当前车辆V上所有普通ECU在当前分组周期内均被分组,车载***更新存储于当前车辆V上网关ECU内的分组信息;
各通信小组内包含一个及以上的普通ECU。
在本实施例中,车辆V的车载***对当前车辆V上各普通ECU进行重新分组的分组周期为一个月。
新替换的普通ECU(如新更换的车辆门锁),或是新增的普通ECU(例如故障诊断仪通过OBD接口对汽车进行故障检测),均自成一个通信小组。
为了便于理解,下面举例对S2及S2子步骤里的分组操作进行说明:
假设当前车辆V包括11个普通ECU,分别记为ECU1~ECU11,这11个普通ECU之间的通信关系如图2所示,箭头表示信息流向。将任意两个普通ECU记为一个通信单元,即共有55个通信单元,这55个通信单元中综合评分超过第一批次评分阈值G1的通信单元为(ECU1,ECU2)、(ECU1,ECU3)、(ECU5,ECU2)、(ECU6,ECU7)、(ECU7,ECU8),因为(ECU6,ECU7)、(ECU7,ECU8)之间存在通信关系,(ECU1,ECU2)、(ECU1,ECU3)、(ECU5,ECU2)之间存在通信关系,即当前批次分组得到两个通信小组和6个待分组通信单元,第一个通信小组包括ECU1、ECU2、ECU3、ECU5,第二个通信小组包括ECU6、ECU7、ECU8,待分组通信单元为(ECU9,ECU4)、(ECU9,ECU10)、(ECU4,ECU10)、(ECU9,ECU11)、(ECU4,ECU11)、(ECU10,ECU11)。
在第二批次分组中,假设只有(ECU9,ECU4)满足第二批次的分组条件,则本批次分组只得到一个通信小组,记为第三通信小组(ECU9,ECU4),以及一个待分组的通信单元(ECU10,ECU11)。
在经过最后一批次分组后,一直未分组的普通ECU,即ECU10和ECU11被划分至同一个通信小组内,记为第四通信小组。至此,进行如上述举例说明的分组操作后,车内网整体架构如图3所示。
当然,也可以分别将ECU10划分为第四通信小组,将ECU11划分为第五通信小组,到这里为止,车辆V上的11个普通ECU在本分组周期内分组完毕。
在S3中还包括以下子步骤:
S31,车辆V启动上电后,网关ECU内的量子随机数发生器芯片生成当前各通信小组的组密钥后,网关ECU将各组密钥与当前车辆V上所有普通ECU的注册信息、分组信息对应绑定后进行存储。
可选的,若当前通信小组内只包含一个普通ECU,则网关ECU不生成当前通信小组的组密钥。
至此,网关ECU内存储了自身的注册信息,当前车辆V上所有普通ECU的注册信息、分组信息、各通信小组的组密钥信息,如表1所示。
表1:
其中,网关ECU自身的注册信息只包括表1中的“ECU的id编号”和“一对非对称根密钥”。
S32,网关ECU分别使用各普通ECU的公钥Pb非对称加密对应的组密钥以及各普通ECU所在通信小组的成员信息后,形成密钥更新信息M2,网关ECU将密钥更新信息M2传输至对应的普通ECU内;
通信小组的成员信息指当前通信小组所包含的所有普通ECU的id编号。
S33,各普通ECU使用自身存储的私钥Pr非对称解密密钥更新信息M2后得到对应的组密钥、以及自身所在通信小组的成员信息,各普通ECU更新自身所存储的组密钥以及所在通信小组的成员信息。
若自身所在通信小组的成员信息与当前普通ECU内存储的没有区别,则无需重复存储;通常各普通ECU只在刚进入新的分组周期时,才会更新自身所在通信小组的成员信息,一般各普通ECU只是每次车辆V上电后更新自身所存储的组密钥。
在S4中,组内通信包括以下内容:
将同一通信小组内的普通ECU分为同组消息发送者和同组消息接收者,同组消息发送者使用组密钥将采集到的车辆数据D1对称加密成组内密文信息M3发送给同组消息接收者,同组消息接收者使用组密钥将组内密文信息M3对称解密后得到车辆数据D1。
在S4中,跨组通信还包括以下子步骤:
S41,当前车辆V上第i个通信小组内的第j个普通ECU向网关ECU发送希望向第a个通信小组内的第e个普通ECU发送消息的跨组通信请求A1:A1={Pb(i,j)⊕S(i)||id(i,j)||id(a,e)},
其中,i、j、a、e均为正整数,id(i,j)表示第i个通信小组内的第j个普通ECU的id编号,id(a,e)表示第a个通信小组内的第e个普通ECU的id编号,S(i)表示第i个通信小组当前的组密钥,Pb(i,j)表示第i个通信小组内的第j个普通ECU的公钥,⊕为异或运算符,||为连接运算符。
S42,网关ECU验证跨组通信发起者身份的合法性:
网关ECU从跨组通信请求A1中提取出跨组通信发起者的id编号id(i,j),再在网关ECU内找到与id(i,j)对应的组密钥S(i)*、与id(i,j)对应的公钥Pb(i,j)*后,计算Pb(i,j)*⊕S(i)*是否与从跨组通信请求A1中提取出的Pb(i,j)⊕S(i)相同,若Pb(i,j)*⊕S(i)*与Pb(i,j)⊕S(i)不相同,则跨组通信发起者身份非法,网关ECU丢弃当前跨组通信请求A1;
若Pb(i,j)*⊕S(i)*与Pb(i,j)⊕S(i)相同,则跨组通信发起者身份合法,网关ECU将跨组通信接收者的公钥Pb(a,e)加密成跨组通信密钥信息M4后,发送给跨组通信发起者:M4=Pb(i,j)[Pb(a,e)],
其中,Pb(i,j)[Pb(a,e)]表示使用跨组通信发起者的公钥Pb(i,j)非对称加密跨组通信接收者的公钥Pb(a,e)。
可选的,网关ECU将跨组通信发起者身份非法记为对应跨组通信发起者的一次不信任事件。
S43,跨组通信发起者,即第i个通信小组内的第j个普通ECU接收到跨组通信密钥信息M4,使用自身的私钥Pr(i,j)非对称解密跨组通信密钥信息M4后得到跨组通信接收者的公钥Pb(a,e)。
S44,第i个通信小组内的第j个普通ECU使用跨组通信接收者的公钥Pb(a,e)将采集到的车辆数据D2进行非对称加密后生成跨组信息M5后发送给跨组通信接收者,即第a个通信小组内的第e个普通ECU。
可选的,跨组通信发起者在向跨组通信接收者发送跨组信息M5后,丢弃跨组通信接收者的公钥Pb(a,e)。
S45,跨组通信接收者使用自身的私钥Pr(a,e)非对称解密跨组信息M5后得到车辆数据D2。
反之,若当前跨组通信接收者需要向跨组通信发起者进行消息回复,则当前跨组通信接收者变成下一轮跨组通信发起者,而当前跨组通信发起者则成为下一轮跨组通信接受者,重复S41~S45。
在S4中,各普通ECU与网关ECU进行通信还包括以下内容:
普通ECU采集车辆数据D3后,使用自身的公钥对车辆数据D3进行非对称加密后形成第一数据包D3*,与当前普通ECU的id编号共同构成第一密文M6;网关ECU根据从第一密文M6中提取出的id编号,从网关ECU内找到当前id编号所对应的私钥,再使用当前私钥非对称解密从第一密文M6中提取出的第一数据包D3*,得到车辆数据D3;
网关ECU向各普通ECU发送消息密文以及对应普通ECU接收消息密文并进行解密的过程类比S32~S33,这里不再赘述。
可选的,当前车辆V上各普通ECU均实时将记录的不信任事件上传给车载***,当前车辆V上任意一个普通ECU在当前分组周期内被记录的不信任事件总数超过第一安全阈值ST1时,车载***向驾驶人员发出警报,提醒驾驶人员人工检验对应的普通ECU是否为恶意ECU。
可选的,若当前车辆V上所有普通ECU在当前分组周期内所记录的不信任事件总数超过第二安全阈值ST2时,则车载***向驾驶人员发出警报,提醒驾驶人员人工检验网关ECU是否为恶意ECU;0<ST1<ST2。
极端条件下,可能存在网关ECU在检修过程中被替换成恶意ECU来窃取车辆数据的情况,为便于描述,将这种情况下的网关ECU记为恶意网关ECU。因为恶意网关ECU中没有存储当前车辆V上各普通ECU的一对非对称根密钥,这就导致跨组通信时,各普通ECU中所记录的不信任事件数量上升;同时恶意网关ECU在更新组密钥的过程中,同一个通信小组内的各普通ECU所解密得到的组密钥也是不同的,这就导致组内通信时,各普通ECU中所记录的不信任事件数量也上升了。所以在当前车辆V上所有普通ECU于当前分组周期内所记录的不信任事件总数超过第二安全阈值ST2时,就可能是由于网关ECU被替换成了恶意ECU导致的,所以此时就需要提醒驾驶人员人工检验网关ECU是否为恶意ECU。
本发明的一种车内ECU组通信方法:
一、根据当前车辆V上各普通ECU在上一个分组周期内的通信频率和信任度进行综合评分后,划分当前车辆V上的所有普通ECU在当前分组周期内所属的通信小组,每个分组周期内的各通信小组成员固定,综合考量了各普通ECU的通信频率、信任度、通信关系,将存在通信关系且通信频率相近、信任度相近的若干个普通ECU划分进同一个通信小组内,最后将不存在通信关系或是信任度较低的若干个普通ECU划分成一个通信小组或是让它们各自作为一个通信小组,只有同一个通信小组内的成员才能拥有同一个组密钥。
二、每次车辆V上电后,网关ECU都通过量子随机数芯片产生不同的真随机数来作为当前车辆V上各通信小组的组密钥,即每次车辆V上电后各通信小组的组密钥都不同且都为难以破解的真随机数,即使当前车辆V上出现恶意ECU,恶意ECU也无法在车辆V本次断电之前破解全部通信小组的组密钥,即恶意ECU即使截获CAN总线上传输来的不同通信小组的信息,因为无法逐一破解,更无法得到全部普通ECU所采集到的车辆数据明文,这为后续车内各普通ECU之间进行安全通信奠定了基础。
三、网关ECU使用当前车辆V上各普通ECU的公钥来非对称加密各普通ECU所属通信小组的组密钥以及各普通ECU所在通信小组的成员信息后,形成密钥更新信息M2,而各普通ECU只有使用自身的私钥才能非对称解密密钥更新信息M2,得到本次车辆上电后的组密钥。所以即使当前车辆V上出现了一个伪装成普通ECU的恶意ECU,也因为该恶意ECU无法获取解密当前密钥更新信息M2的私钥,从而导致该恶意ECU无法解密出正确的组密钥。
四、本发明在定时重新划分通信小组的基础上,每次车辆上电都重新产生各通信小组的组密钥,并且使用不同的普通ECU对应的公钥来非对称加密,使各普通ECU所接收到密钥更新信息M2也不同,大大提高了每次车辆V上电后,车内ECU组密钥更新的安全性和保密性。
五、同一个通信小组内的成员都是在上一个分组周期内存在通信关系,且综合评分相近的若干个普通ECU,同一个通信小组内的普通ECU之间无论是通信频率还是彼此间的信任度,相较于其他通信小组内的普通ECU而言都是较高的,所以同一通信小组内的各普通ECU之间进行组内通信。同一个通信小组内的各普通ECU只需通过组密钥对称加密自身采集的车辆数据或是对称解密接收到的组内密文信息M3即可,对称加解密相比于非对加解密有更快的加解密速度,在保证组内通信安全的同时,减少了各普通ECU的计算开销,缩短了同一个通信小组内各普通ECU间的通信延迟,提高了车内网信息的传输效率。
六、不同通信小组间的普通ECU因在上一个分组周期内通信频率、信任度都较低,所以需借助网关ECU先对跨组通信发起者身份的合法性进行验证,只有身份合法的跨组通信发起者才能得到包含跨组通信接收者公钥的跨组通信密钥信息M4,且跨组通信密钥信息M4是网关ECU使用跨组通信发起者的公钥进行非对称加密的,所以跨组通信发起者只有使用自身的私钥进行非对称解密才能得到跨组通信接收者的公钥。跨组通信发起者使用跨组通信接收者的公钥非对称加密生成跨组信息M5并发送给跨组通信接收者,同时跨组通信发起者丢弃当前跨组通信接收者的公钥,跨组通信接收者也只有使用自身的私钥才能进行非对称解密。即跨组通信发起者只能与跨组通信接收者直接进行一次单向的通信,若需再次进行跨组通信,则跨组通信发起者需再次借助网关ECU进行身份验证以获取跨组通信接收者的公钥才行,本发明的跨组通信保证了在上一个分组周期内通信频率、信任度都较低的普通ECU间的通信安全。
七、同一个通信小组内的各普通ECU在每次车辆V上电后,只需存储当前组密钥即可与需频繁通信的组内成员之间进行通信;而跨组通信过程中,网关ECU给身份合法的跨组通信发起者分发跨组通信接收者的公钥,跨组通信发起者在向跨组通信接收者发送跨组信息M5后,就丢弃当前跨组通信接收者的公钥,即跨组通信过程中各普通ECU无需存储其他普通ECU的公钥,每次跨组通信发起者向网关ECU进行申请即可。本发明的车内ECU通信方法大大减轻了各普通ECU的密钥存储和管理压力,对各普通ECU的存储空间的占用量也较小,进一步避免了因各普通ECU的存储空间占用量过高引起车内网通信延迟、车辆***响应速度降低的情况发生。
八、若当前车辆上出现恶意ECU,因该恶意ECU在车内ECU组密钥更新的过程中就无法解密出正确的组密钥,从而导致该恶意ECU在组内通信的过程中,也无法解密同组消息发送者所发送来的组内密文信息M3,即恶意ECU无法窃听同组其他普通ECU所采集的车辆数据。若该恶意ECU企图通过CAN总线向当前车辆V上其他普通ECU发送恶意密文来进行恶意操作,也因为该恶意ECU没有对应的组密钥和跨组通信的公钥,所以接收到恶意密文的普通ECU无法解密出恶意密文中所包含的恶意信息,进而普通ECU也不会按照恶意ECU的要求实现恶意操作,提高了车辆后续驾驶过程中的安全性。
九、一旦当前车辆上出现恶意ECU,就可能导致部分普通ECU或网关ECU所记录的不信任事件数量上升,不信任事件例如部分普通ECU或网关ECU接收不到回复或是接收到的信息解密后发现明文错误或不符合要求,又或者是网关ECU发现跨组通信发起者身份不合法。上一个分组周期内的不信任事件数量不仅会影响该恶意ECU在当前分组周期的分组情况,例如该恶意ECU因上一个分组周期内不信任事件过多导致综合评分过低,从而在当前分组周期内自成一个通信小组,和其他普通ECU间只能进行跨组通信;而且当前分组周期内该恶意ECU被记录的不信任事件总数超过第一安全阈值ST1时,车载***还会直接向驾驶人员发出警报,提醒驾驶人员人工检验该恶意ECU,这就使得恶意ECU会被很快被排查出来。本发明具有在车内通信过程中发现恶意ECU的功能,进一步地提高了车内ECU间的通信安全。
十、网关ECU作为车内各普通ECU之间的通信基础,权限巨大,通常网关ECU都被默认不是恶意ECU,但是一旦网关ECU成为恶意ECU,将对车内ECU的正常通信和通信安全带来巨大打击。而本发明中,在当前车辆V上所有普通ECU于当前分组周期内所记录的不信任事件总数超过第二安全阈值ST2时,就可能是由于网关ECU被替换成了恶意ECU导致的,此时车载***会直接向驾驶人员发出警报,提醒驾驶人员人工检验网关ECU是否为恶意ECU。即本发明在车内ECU通信的过程中即可科学地评定网关ECU的安全性,进一步地提高了提高车内网通信安全性和可靠性。
实施例2
本发明还提供一种车内ECU通信***,包括:
车辆V上安装的普通ECU、网关ECU、CAN总线;
网关ECU还包括量子随机数芯片、网关ECU安全介质、网关ECU通信模块、网关ECU处理模块;各普通ECU内还包括普通ECU安全介质、普通ECU通信模块、普通ECU处理模块;
量子随机数芯片用来产生真随机数的组密钥;
网关ECU通信模块用来接收通过CAN总线传输至网关ECU的信息,或是通过CAN总线向普通ECU发送信息;
网关ECU安全介质用来存储当前车辆V上所有普通ECU的注册信息、分组信息、各通信小组的组密钥信息以及网关ECU自身的注册信息;
网关ECU处理模块用来计算处理网关ECU内的数据,或调用网关ECU安全介质内存储的密钥来对网关ECU通信模块接收或发送的信息进行解密或加密;
普通ECU安全介质用来存储当前普通ECU的注册信息、所在通信小组的成员信息、所在通信小组的组密钥信息;
普通ECU通信模块用来接收通过CAN总线传输至普通ECU的信息,或是通过CAN总线向网关ECU或其他普通ECU发送信息;
普通ECU处理模块用来计算处理普通ECU内的车辆数据,或调用普通ECU安全介质内存储的组密钥或自身的根密钥来进行组内通信、跨组通信、与网关ECU进行通信。
各模块、安全介质内被编程或配置以执行如实施例1中描述的一种车内ECU组通信方法。
本发明未详细描述的技术、形状、构造部分均为公知技术。
Claims (10)
1.一种车内ECU组通信方法,其特征在于,包括以下内容:
根据车辆V上各普通ECU间的通信频率和信任度所构成的综合评分,将车辆V上的普通ECU划分成不同的通信小组,并将分组信息存储至车辆V上的网关ECU内;车辆V启动上电后,网关ECU生成各通信小组的组密钥并进行存储,同时,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内,每个通信小组内的各普通ECU之间均通过通信小组的组密钥进行对称加密通信。
2.根据权利要求1所述的一种车内ECU组通信方法,其特征在于,将车辆V上的普通ECU划分成不同的通信小组,并将分组信息存储至车辆V上的网关ECU内还包括以下子步骤:
S21,将车辆V上任意两个普通ECU记为一个通信单元,车载***统计车辆V上各通信单元在上一个分组周期内的通信频率G(f),G(f)≥0且G(f)为整数;
S22,车载***统计车辆V上各通信单元在上一个分组周期内的信任度G(u),G(u)≤0且G(u)为整数;
通信单元里的两个普通ECU各自的信任度之和构成当前通信单元的信任度G(u),各普通ECU在每个分组周期内的初始信任度均为0,普通ECU每发生一次不信任事件,则对应的普通ECU的信任度减1;
S23,车载***统计车辆V上各通信单元在上一个分组周期内的综合评分G(c)=G(f)+G(u)后,将存在通信关系且综合评分G(c)超过第一批次评分阈值G1的通信单元分入同一个通信小组内;同一个普通ECU只能出现在一个通信小组中,已被分组的普通ECU所对应的通信单元不再参与下一批分组,即不再属于待分组的通信单元;
S24,待分组的通信单元参与下一批次分组,降低下一批次分组的评分阈值,
将存在通信关系且综合评分G(c)超过下一批次分组评分阈值的通信单元分入同一个通信小组内,重复S24,直至最后一批次分组;
S25,最后一批次分组时,将存在通信关系且综合评分G(c)超过最后一批次分组评分阈值的通信单元分入同一个通信小组内,其余未分组的普通ECU被划分至同一个通信小组内,至此当前车辆V上所有普通ECU在当前分组周期内均被分组,车载***将当前分组信息存储至车辆V上的网关ECU内。
3.根据权利要求2所述的一种车内ECU组通信方法,其特征在于,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内还包括以下子步骤:
S31,车辆V启动上电后,网关ECU生成各通信小组的组密钥后,网关ECU将各组密钥与车辆V上所有普通ECU的注册信息、分组信息对应绑定后进行存储;
S32,网关ECU分别使用各普通ECU的公钥Pb非对称加密对应的组密钥以及各普通ECU所在通信小组的成员信息后,形成密钥更新信息M2,网关ECU将密钥更新信息M2传输至车辆V上的各对应的普通ECU内;
通信小组的成员信息指当前通信小组所包含的所有普通ECU的id编号;
S33,各普通ECU使用自身存储的私钥Pr非对称解密密钥更新信息M2后得到对应的组密钥以及自身所在通信小组的成员信息,各普通ECU更新自身所存储的组密钥以及所在通信小组的成员信息。
4.根据权利要求1所述的一种车内ECU组通信方法,其特征在于,在将车辆V上的普通ECU划分成不同的通信小组前,还包括以下子步骤:
S11,车辆V/网关ECU/普通ECU通过在线下安全渠道向云平台发送注册申请来进行注册;
当车辆V发送注册申请时,注册申请中包含当前车辆V自身的id编号;
当网关ECU/普通ECU发送注册申请时,注册申请中包含当前网关ECU/普通ECU自身的id编号、当前网关ECU/普通ECU被安装车辆的id编号;
S12,云平台收到注册申请后,从当前注册申请中提取出id编号与云平台数据库内的注册信息进行比对,若云平台数据库内的注册信息中已存在当前id编号,则云平台向当前车辆V/网关ECU/普通ECU返回重复注册的报文信息;
若云平台数据库内的注册信息中不存在当前车辆V的id编号,则云平台将当前车辆V的id编号作为注册信息进行存储;
若云平台数据库内的注册信息中不存在当前普通ECU/网关ECU的id编号,且存在当前普通ECU/网关ECU被安装车辆的id编号,则云平台通过量子随机数发生器芯片生成一对非对称根密钥并充注进当前普通ECU/网关ECU的安全介质中,同时,云平台将当前普通ECU/网关ECU的id编号、非对称根密钥、当前普通ECU/网关ECU被安装车辆的id编号绑定后形成注册信息并存储于云平台数据库内;
若云平台数据库内的注册信息中不存在当前网关ECU的id编号,且也不存在当前普通ECU/网关ECU被安装车辆的id编号,则云平台向当前网关ECU/普通ECU返回注册异常的报文信息;
云平台数据库内新增注册信息用对应网关ECU的公钥非对称加密后通过无线通信实时发送至对应的网关ECU内,网关ECU使用自身的私钥进行非对称解密后得到新增注册信息并存储,各网关ECU内存储当前网关ECU被安装车辆上所有普通ECU的注册信息。
5.根据权利要求3所述的一种车内ECU组通信方法,其特征在于:车辆V启动上电后,网关ECU生成各通信小组的组密钥并进行存储,同时,网关ECU将各通信小组的组密钥加密传输至各通信小组所包含的普通ECU内,同一通信小组内的各普通ECU之间进行组内通信;不同通信小组内的普通ECU基于网关ECU进行跨组通信;各普通ECU使用自身的一对非对称根密钥与网关ECU之间进行通信;
车辆V断电后,直至车辆V再次启动上电,当前车辆V上的网关ECU重新生成各通信小组的组密钥,并加密传输至各通信小组所包含的普通ECU内。
6.根据权利要求5所述的一种车内ECU组通信方法,其特征在于,组内通信具体包括以下内容:将同一通信小组内的普通ECU分为同组消息发送者和同组消息接收者,同组消息发送者使用组密钥将采集到的车辆数据D1对称加密成组内密文信息M3并发送给同组消息接收者,同组消息接收者使用组密钥将组内密文信息M3对称解密后得到车辆数据D1。
7.根据权利要求5所述的一种车内ECU组通信方法,其特征在于,跨组通信具体包括以下子步骤:
S41,车辆V上第i个通信小组内的第j个普通ECU向网关ECU发送希望向第a个通信小组内的第e个普通ECU发送消息的跨组通信请求A1:A1={Pb(i,j)⊕S(i)||id(i,j)||id(a,e)},
其中,i、j、a、e均为正整数,id(i,j)表示第i个通信小组内的第j个普通ECU的id编号,id(a,e)表示第a个通信小组内的第e个普通ECU的id编号,S(i)表示第i个通信小组当前的组密钥,Pb(i,j)表示第i个通信小组内的第j个普通ECU的公钥,⊕为异或运算符,||为连接运算符;
S42,网关ECU验证跨组通信发起者身份的合法性:
网关ECU从跨组通信请求A1中提取出跨组通信发起者的id编号id(i,j),再在网关ECU内找到与id(i,j)对应的组密钥S(i)*、与id(i,j)对应的公钥Pb(i,j)*后,计算Pb(i,j)*⊕S(i)*是否与从跨组通信请求A1中提取出的Pb(i,j)⊕S(i)相同,若Pb(i,j)*⊕S(i)*与Pb(i,j)⊕S(i)不相同,则跨组通信发起者身份非法,网关ECU丢弃当前跨组通信请求A1;
若Pb(i,j)*⊕S(i)*与Pb(i,j)⊕S(i)相同,则跨组通信发起者身份合法,网关ECU将跨组通信接收者的公钥Pb(a,e)加密成跨组通信密钥信息M4后,发送给跨组通信发起者:M4=Pb(i,j)[Pb(a,e)],
其中,Pb(i,j)[Pb(a,e)]表示使用跨组通信发起者的公钥Pb(i,j)非对称加密跨组通信接收者的公钥Pb(a,e);
S43,跨组通信发起者,即第i个通信小组内的第j个普通ECU接收到跨组通信密钥信息M4,使用自身的私钥Pr(i,j)非对称解密跨组通信密钥信息M4后得到跨组通信接收者的公钥Pb(a,e);
S44,第i个通信小组内的第j个普通ECU使用跨组通信接收者的公钥Pb(a,e)将采集到的车辆数据D2进行非对称加密后生成跨组信息M5后发送给跨组通信接收者,即第a个通信小组内的第e个普通ECU;
S45,跨组通信接收者使用自身的私钥Pr(a,e)非对称解密跨组信息M5后得到车辆数据D2。
8.根据权利要求7所述的一种车内ECU组通信方法,其特征在于,在步骤44中:跨组通信发起者在向跨组通信接收者发送跨组信息M5后,丢弃跨组通信接收者的公钥Pb(a,e)。
9.根据权利要求5-8中任一项所述的一种车内ECU组通信方法,其特征在于:若车辆V在当前分组周期内所记录的不信任事件总数超过第二安全阈值ST2时,则车载***向驾驶人员发出警报,提醒驾驶人员人工检验网关ECU是否为恶意ECU。
10.一种车内ECU通信***,其特征在于,包括:
车辆V上安装的普通ECU、网关ECU、CAN总线;
网关ECU还包括量子随机数芯片、网关ECU安全介质、网关ECU通信模块、网关ECU处理模块;各普通ECU内还包括普通ECU安全介质、普通ECU通信模块、普通ECU处理模块;
量子随机数芯片用来产生组密钥;
网关ECU通信模块用来接收通过CAN总线传输至网关ECU的信息,或是通过CAN总线向普通ECU发送信息;
网关ECU安全介质用来存储当前车辆V上所有普通ECU的注册信息、分组信息、各通信小组的组密钥信息以及网关ECU自身的注册信息;
网关ECU处理模块用来计算处理网关ECU内的数据,或调用网关ECU安全介质内存储的密钥来对网关ECU通信模块接收或发送的信息进行解密或加密;
普通ECU安全介质用来存储当前普通ECU的注册信息、所在通信小组的成员信息、所在通信小组的组密钥信息;
普通ECU通信模块用来接收通过CAN总线传输至普通ECU的信息,或是通过CAN总线向网关ECU或其他普通ECU发送信息;
普通ECU处理模块用来计算处理普通ECU内的车辆数据,或调用普通ECU安全介质内存储的组密钥或自身的根密钥来进行组内通信、跨组通信、与网关ECU进行通信;
各模块被编程或配置以执行如权利要求9所述的一种车内ECU组通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410217492.3A CN117793706B (zh) | 2024-02-28 | 2024-02-28 | 一种车内ecu组通信方法及通信*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410217492.3A CN117793706B (zh) | 2024-02-28 | 2024-02-28 | 一种车内ecu组通信方法及通信*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117793706A true CN117793706A (zh) | 2024-03-29 |
CN117793706B CN117793706B (zh) | 2024-05-07 |
Family
ID=90383753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410217492.3A Active CN117793706B (zh) | 2024-02-28 | 2024-02-28 | 一种车内ecu组通信方法及通信*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117793706B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190068361A1 (en) * | 2017-08-30 | 2019-02-28 | Ford Global Technologies, Llc | In-vehicle group key distribution |
JP2021083110A (ja) * | 2020-02-19 | 2021-05-27 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッドBeijing Baidu Netcom Science Technology Co., Ltd. | 車内電子制御ユニットのアップグレード方法、装置、機器及び車両システム |
CN113016201A (zh) * | 2020-12-31 | 2021-06-22 | 华为技术有限公司 | 密钥供应方法以及相关产品 |
CN116471587A (zh) * | 2023-04-19 | 2023-07-21 | 合肥工业大学 | 一种v2v通信下的车组内通信密钥生成及更新方法 |
CN116781263A (zh) * | 2023-08-23 | 2023-09-19 | 合肥工业大学 | 车内ecu间身份认证及密钥自更新方法、可读存储介质 |
CN117254910A (zh) * | 2023-11-15 | 2023-12-19 | 合肥工业大学 | 车载自组网络下基于量子随机数的高效组密钥分发方法 |
CN117318941A (zh) * | 2023-11-29 | 2023-12-29 | 合肥工业大学 | 基于车内网的预置密钥分发方法、***、终端及存储介质 |
-
2024
- 2024-02-28 CN CN202410217492.3A patent/CN117793706B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190068361A1 (en) * | 2017-08-30 | 2019-02-28 | Ford Global Technologies, Llc | In-vehicle group key distribution |
JP2021083110A (ja) * | 2020-02-19 | 2021-05-27 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッドBeijing Baidu Netcom Science Technology Co., Ltd. | 車内電子制御ユニットのアップグレード方法、装置、機器及び車両システム |
CN113016201A (zh) * | 2020-12-31 | 2021-06-22 | 华为技术有限公司 | 密钥供应方法以及相关产品 |
CN116471587A (zh) * | 2023-04-19 | 2023-07-21 | 合肥工业大学 | 一种v2v通信下的车组内通信密钥生成及更新方法 |
CN116781263A (zh) * | 2023-08-23 | 2023-09-19 | 合肥工业大学 | 车内ecu间身份认证及密钥自更新方法、可读存储介质 |
CN117254910A (zh) * | 2023-11-15 | 2023-12-19 | 合肥工业大学 | 车载自组网络下基于量子随机数的高效组密钥分发方法 |
CN117318941A (zh) * | 2023-11-29 | 2023-12-29 | 合肥工业大学 | 基于车内网的预置密钥分发方法、***、终端及存储介质 |
Non-Patent Citations (1)
Title |
---|
李明, 王勇: "安全群组通信(下)", 信息网络安全, no. 09, 30 September 2001 (2001-09-30) * |
Also Published As
Publication number | Publication date |
---|---|
CN117793706B (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3337127B1 (en) | Legitimacy verification of a node in a distributed network using certificate white-listing | |
Cebe et al. | Block4forensic: An integrated lightweight blockchain framework for forensics applications of connected vehicles | |
CN110635893B (zh) | 一种车载以太网信息安全防护方法 | |
CN109451467B (zh) | 一种基于区块链技术的车载自组织网络数据安全共享与存储*** | |
Palaniswamy et al. | An efficient authentication scheme for intra-vehicular controller area network | |
US10285051B2 (en) | In-vehicle networking | |
Tzeng et al. | Enhancing security and privacy for identity-based batch verification scheme in VANETs | |
Van Herrewege et al. | CANAuth-a simple, backward compatible broadcast authentication protocol for CAN bus | |
DE102011120968B4 (de) | Erzeugen von sicheren Schlüsseln auf Anforderung | |
Wei et al. | A privacy-preserving fog computing framework for vehicular crowdsensing networks | |
US8577036B2 (en) | Method and device for transmitting messages in real time | |
CN106899404A (zh) | 基于预共享密钥的车载can fd总线通信***及方法 | |
CN109672538A (zh) | 一种轻量级车载总线安全通信方法及安全通信*** | |
CN111049803A (zh) | 基于车载can总线通讯***数据加密及平台安全访问的方法 | |
CN110933110A (zh) | 一种车载网络的通信方法、发送端、接收端与车辆 | |
CN112929179B (zh) | 基于区块链的车联网设备身份认证及密钥协商方法 | |
DE102020121533A1 (de) | Vertrauenswürdige authentifizierung von automotiven mikrocon-trollern | |
Hartzell et al. | Security analysis of an automobile controller area network bus | |
Dadam et al. | Onboard Cybersecurity Diagnostic System for Connected Vehicles | |
CN115442048A (zh) | 一种面向vanet的基于区块链的匿名认证方法 | |
CN106685967A (zh) | 一种车载网络通信加密和入侵监测装置 | |
CN108377233A (zh) | 用于验证密钥的设备和方法 | |
CN117793706B (zh) | 一种车内ecu组通信方法及通信*** | |
CN114666789B (zh) | 一种车联网场景下的容错聚合认证方法 | |
CN116456336A (zh) | 一种外部设备接入安全认证方法、***、汽车、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |