[go: up one dir, main page]

CN110377002B - 一种自适应的车内can总线安全控制方法及系统 - Google Patents

一种自适应的车内can总线安全控制方法及系统 Download PDF

Info

Publication number
CN110377002B
CN110377002B CN201910493594.7A CN201910493594A CN110377002B CN 110377002 B CN110377002 B CN 110377002B CN 201910493594 A CN201910493594 A CN 201910493594A CN 110377002 B CN110377002 B CN 110377002B
Authority
CN
China
Prior art keywords
ecu
message
key
security
bus
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.)
Active
Application number
CN201910493594.7A
Other languages
English (en)
Other versions
CN110377002A (zh
Inventor
李兴华
陈颖
钟成
张会林
姜奇
翁健
马建峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Jinan University
Original Assignee
Xidian University
Jinan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xidian University, Jinan University filed Critical Xidian University
Priority to CN201910493594.7A priority Critical patent/CN110377002B/zh
Publication of CN110377002A publication Critical patent/CN110377002A/zh
Application granted granted Critical
Publication of CN110377002B publication Critical patent/CN110377002B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0243Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24065Real time diagnostics

Landscapes

  • Small-Scale Networks (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)

Abstract

本发明属于网联汽车信息处理技术领域,公开了一种自适应的车内CAN总线安全控制方法及系统,通过对报文特点和车内网络环境的分析,选择若干影响因素,进行自适应的选取安全策略,在满足报文的安全需求的同时,根据动态的车内网络环境自适应地调整安全策略;将车内ECU节点的通信频率抽象为无向图,以通信频率作为图的边权重,采用马尔可夫聚类的方法根据ECU之间通信频率将其划分为层次化的域结构,并使用树形域密钥结构对节点进行密钥管理,同时结合自适应安全策略选取方法,进行差异化的安全策略及相应的通信协议选取。本发明所需开销有限,适用于计算能力受限的ECU节点和高实时性需求的CAN总线网络。

Description

一种自适应的车内CAN总线安全控制方法及系统
技术领域
本发明属于网联汽车信息处理技术领域,尤其涉及一种自适应的车内CAN总线安全控制方法及系统。
背景技术
目前,最接近的现有技术:
网联汽车在推动智能交通、智慧城市等重要技术发展的同时,其存在的安全问题日益突出。作为网联汽车的核心总线网络,CAN总线主要负责传感器信息以及控制指令的传输,对其安全防护成为了研究重点。
随着移动互联网和工业智能化的迅速发展,汽车产业不断向智能化和网联化转变,逐步迈入车联网时代。特别是5G通信技术与无人驾驶技术的日渐成熟,使得无人驾驶将逐步取代传统司机驾驶而成为未来的发展趋势。无人驾驶技术在对交通系统和城市生活带来全新改变的同时,其安全需求更为重要和迫切。近年来智能网联汽车攻击事件频发,网联汽车,尤其是无人驾驶中的行车安全问题受到了广泛关注。
作为智能网联汽车的核心总线网络,控制器区域网络(Controller AreaNetwork,CAN)总线负责传感器信息以及控制指令的传输,电子控制单元(ElectronicControl Unit,ECU)作为车内的基本控制单元,根据CAN总线上的报文信息,完成相应的动作指令。但随着智能网联汽车与外部网络互联程度的提高,攻击者可以通过车载诊断单元OBD(On-Board Diagnostics)、蓝牙、蜂窝网络等入侵车内CAN总线网络,窃听总线报文,通过模糊测试等逆向工程技术分析报文实际意义,进而重放、伪造报文,控制重要ECU节点,威胁行车安全。因此,如何实现CAN总线上报文的安全传输成为亟待解决的关键问题。
目前的CAN总线安全方案可分为总线的异常检测和总线报文的认证加密两类。CAN总线的异常检测方案存在误报率,且属于被动防御;而基于密码学的CAN总线报文认证加密方案在攻击发生前即可提供防护,属于主动防御。但仍存在以下两个问题:
(1)现有方案中单一的安全机制难以兼顾安全性和网络性能,由于报文的安全需求具有差异性以及车内网络环境动态多变,若采用固定的安全机制,将会占用大量总线资源,增加不必要的计算存储开销和通信时延,降低网络性能。这里报文安全需求的差异性是指传感器参数信息这类报文的可能被窃听而泄露行车安全相关信息,故其机密性需求更高;而车内控制指令为防止攻击者伪造修改,其认证需求更高。而动态的网络环境是指当车内总线负载较大情况下,为保证通信稳定,应尽量采用不增加总线负载的安全方案;而当车内入侵检测系统发现异常时则应选择安全性较高的方案,以提高安全等级。
(2)由于车内ECU节点计算存储能力有限,传统的密钥管理方案难以直接应用于车内网络,而目前已有方案需要消耗大量的计算时间和存储开销,并不适用高实时性CAN总线和存储能力受限的ECU节点。
综上所述,现有技术存在的问题是:
(1)现有方案未考虑到报文安全需求的差异性以及车内网络环境的动态性,难以兼顾安全性和网络性能;
(2)现有的CAN总线认证加密方案中缺乏高效密钥管理方案,并不适用于计算存储能力有限的ECU节点。
解决上述技术问题的难度:
(1)由于CAN总线的数据帧最大载荷只有8个字节,无法提供足够长度MAC
(2)车内网络环境的特殊性,CAN总线的实时性需求较高
(3)车内ECU节点的计算存储能力有限
解决上述技术问题的意义:
随着移动互联网和工业智能化的快速发展,传统汽车行业不断向智能化和网联化转变,逐步迈入智能车联网时代。网联汽车在推动智能交通、智慧城市等重要技术发展的同时,其存在的安全问题日益突出,网络攻击事件不断涌现。作为智能网联汽车的核心总线网络,CAN总线负责车内传感器信息以及控制指令的传输,对其的安全防护成为了人们研究智能网联汽车的重点。因此,如何实现CAN总线上报文的安全传输,成为亟待解决的关键问题。在此背景下,本专利提出一种自适应的轻量级CAN总线安全机制,实现CAN总线报文的安全传输。
发明内容
针对现有技术存在的问题,本发明提供了一种自适应的车内CAN总线安全控制方法及系统。
本发明是这样实现的,一种自适应的车内CAN总线安全控制方法,所述自适应的车内CAN总线安全控制方法包括:
通过对报文特点和车内网络环境的分析,选择若干影响因素,并利用层次分析法和模糊决策的思想,自适应的选取安全策略,在满足报文的安全需求的同时,根据动态的车内网络环境自适应地调整安全策略;
将车内ECU节点的通信频率抽象为无向图,以通信频率作为图的边权重,采用马尔可夫聚类的方法根据ECU之间通信频率将其划分为层次化的域结构,并使用树形域密钥结构对节点进行密钥管理,同时结合自适应安全策略选取方法,进行差异化的安全策略及相应的通信协议选取,实现车内CAN总线安全控制。
进一步,基于模糊决策的CAN总线安全策略选取方法包括:
步骤一,因素集的确定:选取与报文安全需求以及动态车内网络环境相关且影响安全策略决定的因素,构建因素集U;报文因素以及网络环境因素的取值范围均在(0,1]之内,将报文因素以及网络环境因素依次表示为u1,u2,...,u7,并添加到因素集U中,U={u1,u2,...,u7};
步骤二,策略集的确定:
策略集P表示可选策略的集合,表示为P={P1,P2,P3,P4,P5,P6},其中P1表示明文广播传输,P2表示密文传输,P3表示明文传输并采用截断的HMAC认证,P4表示明文传输并采用64bits的HMAC认证,P5表示密文传输并采用截断的HMAC认证,P6表示密文传输并采用64bits的HMAC认证;
步骤三,基于模糊决策的差异化安全策略选取:首先采用层次分析法确定影响因素的权重,然后确定安全策略对评语集的隶属度函数并构造模糊评判矩阵,对策略进行模糊综合评价,最后在选取较为合理的安全策略输出。
进一步,步骤一选取的影响因素进一步包括:
(1)机密性需求
Figure BDA0002087813600000031
由于与行车安全相关的油温,车速传感器参数这类报文若被攻击者窃听并破解,暴露行车安全的重要信息或用户隐私等信息;通过专家评级,将机密性需求分为由高到低四个等级,设
Figure BDA0002087813600000032
表示报文msgi的机密性需求,令
Figure BDA0002087813600000033
Figure BDA0002087813600000034
时,说明报文的机密性需求最高;
(2)认证需求
Figure BDA0002087813600000035
Figure BDA0002087813600000036
表示报文msgi的认证需求,其中
Figure BDA0002087813600000037
由专家或制造商对报文内容,收发ECU等进行分析,将报文的认证需求分为由高到低四个等级;令
Figure BDA0002087813600000038
时,说明报文的认证需求最高;
(3)实时性需求
Figure BDA0002087813600000039
Figure BDA00020878136000000310
表示报文msgi的实时性需求,其中
Figure BDA00020878136000000311
根据message ID设置实时性需求级别,message ID为11bits的十六进制数,设其起始位为y,则
Figure BDA00020878136000000312
的取值如式(1);当
Figure BDA00020878136000000313
表示报文的实时性需求最高;
Figure BDA00020878136000000314
(4)报文的长度等级
Figure BDA00020878136000000315
表示报文msgi的长度等级;报文长度为l bits
Figure BDA00020878136000000316
的取值如式(2),其中
Figure BDA00020878136000000317
表示报文长度等级最高;
Figure BDA00020878136000000318
(5)总线负载比Bt:网关ECU监测某时间段T内的总线负载率,并统计该时间段内总线负载率大于50%的时间长度t1占总时长t(t≠0)的比例,用总线负载比Bt表示,Bt=t1/t,Bt∈(0,1],该值越接近于1,则该时间段内的总线负载比越高;
(6)信道忙闲比CBRt:定义信道忙闲比CBRt为监测时间T内,检测信道为繁忙状态的时间所占的比例,
Figure BDA00020878136000000319
CBRt∈(0,1],n为信道检测次数,ki在信道繁忙时为1,信道空闲时为0;当CBRt的值越大时,说明信道越繁忙;
(7)当前网络安全状态级别St:设St为当前时间段T内车内入侵检测系统反馈的车内网络安全级别;IDS将当前网络安全状态反馈至网关ECU,其中St={s|s=(n-k)/n,k=0,1,2,3,n=4}依次表示当前网络状态由高到低的四个等级;当St=1时,表示当前网络安全状态级别最高。
进一步,步骤三进一步包括:
1)基于AHP法确定因素集各影响因素的权重:
建立CAN总线安全机制的层次模型,其中因素集U={U1,U2},U1表示报文因素集,U2为网络环境因素集;
通过对同一层的因素两两比较,由专家或制造厂商进行重要度评估,确定其相对重要程度;由上至下建立对比矩阵Mu=(mij)n×n,mij>0;其中,mij表示因素ui与因素uj的相对重要程度,n为因素个数,如式(3):
Figure BDA0002087813600000041
Mu为一致矩阵,满足:mji=1/mij
Figure BDA0002087813600000042
在确定对比矩阵后,因素权重进行确定;若准则层权重
Figure BDA0002087813600000043
子准则层对因素U1,U2的权重分别为W1和W2,则根据加权法,最终所有因素的权重为α=[W1·α1,W2·α2];
2)确定隶属度函数,构造模糊评判矩阵R:
由专家或制造商通过分析各个因素对安全策略的影响,对每个因素构造一个策略评分等级矩阵G=(gij)6×4,其中gij表示当因素分别取不同的值时策略Pi的得分;对
Figure BDA0002087813600000044
构造策略评分矩阵G1,其中gij表示
Figure BDA0002087813600000045
依次取{0.25,0.5,0.75,1}时,各个策略Pi的得分情况;
确定安全策略对评语集各元素的隶属度函数,设评语集为所有评价结果组成的集合,用V={v1,v2,...,vm}表示,m为评价结果的总数;选取V={差,较差,较好,好};用隶属度rij用来表示策略Pi在因素ui的影响下对于评语集元素vj的属于程度,其中rij∈[0,1];rij越接近于1,说明Pi对vj的隶属度越高。本发明选取降半梯形分布隶属度函数,其中j={1,2,3,4}分别表示vj可能的四种取值{差,较差,较好,好},则相应的rij依次为ri1,ri2,ri3,ri4,式中a1<a2<a3<a4,gij表示该策略的得分,来源于策略评分矩阵G;
Figure BDA0002087813600000046
Figure BDA0002087813600000047
Figure BDA0002087813600000048
Figure BDA0002087813600000049
网关ECU在获取某条报文的参数信息以及该时间段内的网络环境参数后,根据各因素策略评分矩阵G,依次获取策略集Pi(i=1,2,...6)相应的分数gij,并代入隶属度函数,依次构成每个安全策略的模糊评判矩阵R,其中
Figure BDA0002087813600000051
3)对策略进行模糊综合评价:
根据式(8),计算Pi对vj的隶属度B=(b1,b2,...,bm),策略Pi的模糊评价结果向量;其中bi表示Pi对vj的隶属度,综合考虑各个因素的影响,确定Pi对于评语集vj的隶属度;依次计算各个安全策略对评语集vj的隶属度;
Figure BDA0002087813600000052
4)根据最大隶属度原则选取安全策略:
在获得Pi的模糊评价向量Bi=(bi1,bi2,bi3,bi4)后,根据最大隶属度原则确定策略Pi的评价结果,当
Figure BDA0002087813600000053
时,Pi在总体上隶属于第r等级;依次确定Pi(i=1,2,...6);在所有策略中选取处于最高级评价的策略;若处于最高级评价的策略有多个,则选择隶属度更大的策略作为模糊决策的输出;网关ECU将选取的该报文的安全策略广播至总线,与该报文相关的发送和接收ECU更新该报文在下一时间段T的策略。
进一步,步骤1)中因素权重进行确定方法包括:
输入:对比矩阵Mu=(mij)n×n
输出:权重向量;
i)将矩阵Mu按列归一化,得矩阵Mu'=(m'ij)n×n,其中
Figure BDA0002087813600000054
ii)将矩阵Mu'按行求和,得向量
Figure BDA0002087813600000055
其中
Figure BDA0002087813600000056
iii)对向量
Figure BDA0002087813600000057
归一化,得特征向量W=[w1,w2,...,wn]T,其中
Figure BDA0002087813600000058
iv)求最大特征根值
Figure BDA0002087813600000059
v)一致性检验,对照随机一致性指标RI,计算一致性指标CI和一致性比率CR,其中CI=(λmax-n)/(n-1),CR=CI/RI。当CR≥0.1时,需要对Mu中的元素重新赋值并不断进行调整,跳转到步i);
vi)对向量W归一化,得到该层权重α=[α12,...,αn]T,其中
Figure BDA00020878136000000510
进一步,
ECU分域密钥管理和安全协议选取方法包括:首先为减少域间节点的通信开销,基于MCL聚类的思想,根据ECU的通信频率对ECU节点划分域;
然后建立基于逻辑密钥树的树形域密钥结构并完成密钥分发;
最后结合自适应安全策略选取方法,设计差异化的安全策略及其通信协议。
进一步,基于MCL聚类的ECU分域包括:
输入:ECU通信频率带权无向图,n为节点总数;
输出:ECU分域的结果集;
1)由ECU节点通信图G(V,E)建立邻接矩阵C=(cij)n×n,其中cij为ECUi和ECUj之间的通信频率CFij
2)矩阵C对角线元素加1,即当i=j时,cij=1;并将按列进行归一化,计算得到通信频率的概率矩阵C'=(c'ij)n×n,其中
Figure BDA0002087813600000061
3)选取参数e,对矩阵C'幂乘,即C'=(C')e
4)选取参数r,对矩阵C'中的每个元素进行r次幂乘,并按列进行归一化,得到矩阵C”=(c”ij)n×n,其中
Figure BDA0002087813600000062
5)迭代的进行步骤3)、步骤4),直到矩阵C”=(c”ij)n×n收敛;
6)将ECU节点的聚类结果集输出;
循环上述步骤,将每轮的输出作为下一轮的输入,即以第i次的输出的ECU节点聚簇结果集,构造新的图Gi(Vi,Ei),每个集合作为图中的顶点,整个集合的ECU与其余集合的ECU节点的通信频率之和作为边的权重,再次进行MCL聚类,直到最终形成一个簇,根据每次聚类结果集建立ECU节点分域的树形逻辑结构。
进一步,基于LKH的域密钥分发与管理方法包括:
根据ECU分域结果集,建立基于LKH树形域密钥结构,对ECU用唯一的8位二进制数标识,表示为ECUi;建立基于LKH的树形域密钥逻辑结构,叶子节点表示ECU,虚拟节点代表域,同一父亲节点的兄弟节点属于同一个域;每个ECU保存从叶子节点至根节点该路径上的所有密钥;
Figure BDA0002087813600000063
表示域的密钥编号,其中i,j分别表示若按ECU ID排序,域内的起始节点和结束节点ID,s表示密钥树的层编号;
在建立树形域密钥逻辑结构后,由网关ECU进行密钥分发;域n的ECU节点与网关ECU预共享密钥
Figure BDA0002087813600000064
且密钥的下载是通过安全信道;网关ECU作为控制节点,存储所有的密钥;加载预共享密钥的过程只在汽车出厂以及更换某个ECU时进行;车辆启动时,网关ECU根据树形域密钥的逻辑结构,按固定的顺序分发密钥;ECUi∈Yn,其中Yn表示域n;
具体步骤如下。
(1)网关ECU选择两个随机数种子
Figure BDA0002087813600000065
用于生成Yn的域内会话密钥EKn和认证密钥AKn;用Yn内ECU与网关ECU预共享的加密密钥
Figure BDA0002087813600000066
加密后的随机数种子并广播,如式(9)(10);
Figure BDA0002087813600000067
Figure BDA0002087813600000068
(2)Yn的节点收到消息后用对应的密钥解密,得
Figure BDA0002087813600000069
并分别计算Yn的会话密钥EKn与认证密钥AKn,如式(11)(12);其中KDF()表示用于密钥派生的单向hash函数;
Figure BDA00020878136000000610
Figure BDA0002087813600000071
(3)为验证是否成功共享密钥EKn与AKn,网关ECU用步(1)生成的EKn与AKn分别加密CTRn并广播;其中,CTRn为密钥分发时网关ECU保存的与Yn相关的计数器如式(13)(14);
Figure BDA0002087813600000072
Figure BDA0002087813600000073
(4)Yn内节点收到消息后用步(2)生成的相应密钥解密,将得到的CTRn值与自己保存的计数器值CTR'n对比,若相等,则认为成功共享了相应的密钥;否则,ECU节点需向网关ECU发送错误帧,表明并未成功共享密钥。
网关ECU以域为单位,依次分发会话密钥EKn与认证密钥AKn;在车辆点火时以及一定的时间周期T内按上述方式,网关ECU再次按域分发密钥,更新会话密钥与认证密钥。
进一步,差异化安全协议的选取方法包括:
设策略集为P={P1,P2,P3,P4,P5,P6},其中P1表示明文广播传输,P2表示密文传输,P3表示明文传输并采用截断的HMAC认证,P4表示明文传输并采用64bits的HMAC认证,P5表示密文传输并采用截断的HMAC认证,P6表示密文传输并采用64bits的HMAC认证。ECUi向ECUj发送报文,且ECUi,ECUj∈Yn
(1)策略P1明文广播传输:对原报文明文广播,不进行任何处理;
(2)策略P2密文传输:ECUi更新报文计数器
Figure BDA0002087813600000074
并选取相应的密钥EKn加密明文M以及
Figure BDA0002087813600000075
后得到密文C,发送至总线,这里
Figure BDA0002087813600000076
ECUj根据message ID确定相应的安全策略,并根据发送方ID选取相应的密钥EKn解密后得明文M及
Figure BDA0002087813600000077
Figure BDA0002087813600000078
与自己保存的计数器
Figure BDA0002087813600000079
进行对比。若
Figure BDA00020878136000000710
则更新
Figure BDA00020878136000000711
后接收报文,否则丢弃;
(3)策略P3表示采用截断的HMAC认证:ECUj需要验证报文是否被修改以及是否真实来源于ECUi,使用HMAC进行认证;设原报文长度为l bits,策略P3选取生成HMAC的前(64-l)bits;设ECUi,ECUj∈Yn,ECUi更新计数器
Figure BDA00020878136000000712
使用认证密钥AKn生成
Figure BDA00020878136000000713
取前(64-l)bits,与M以及
Figure BDA00020878136000000714
一起发送至总线;
ECUj确定相应的安全策略以及认证密钥AKn后,计算
Figure BDA00020878136000000715
与收到的HMAC对比,若一致,则对比
Figure BDA00020878136000000716
与自己保存的
Figure BDA00020878136000000717
Figure BDA00020878136000000718
更新
Figure BDA00020878136000000719
后接收报文,否则丢弃该报文;
(4)策略P4采用64bits的HMAC认证,认证的过程与P3一致;不同的是这里是将生成的HMAC取前64bits,以一条单独的报文发送至CAN总线;
(5)策略P5密文传输并采用截断的HMAC认证:ECUi更新报文计数器
Figure BDA00020878136000000720
选取相应的密钥EKn加密报文,即
Figure BDA00020878136000000721
并生成HMAC,即
Figure BDA00020878136000000722
设原报文长度为l bits,策略P5选取生成HMAC的前(64-l)bits。并将密文C与截断后的HMAC一起发送至总线;
ECUj在确定安全策略以及相应的密钥EKn和AKn后,用EKn解密后得到M及
Figure BDA0002087813600000081
并生成HMAC',即
Figure BDA0002087813600000082
与收到的HMAC进行对比,若一致,则对比
Figure BDA0002087813600000083
Figure BDA0002087813600000084
Figure BDA0002087813600000085
更新
Figure BDA0002087813600000086
后接收报文,否则丢弃;
(6)策略P6密文传输并采用64bits的HMAC认证:HMAC的生成以及加解密过程与P5一致,唯一的区别是将生成的HMAC以一条单独的报文发送。
本发明的另一目的在于提供一种实施所述自适应的车内CAN总线安全控制方法的自适应的车内CAN总线安全控制系统。
综上所述,本发明的优点及积极效果为:
本发明提出了一种自适应的车内CAN总线安全机制,首先综合考虑报文需求和车内网络因素,基于模糊决策的思想,实现了自适应的选取安全策略。然后根据ECU之间通信频率将其划分为层次化的域结构进行密钥分发并设计了差异化的安全策略及相应的通信协议。最后通过理论分析验证了所提方案的可行性和安全性,并通过实验说明方案所需开销有限,适用于计算能力受限的ECU节点和高实时性需求的CAN总线网络。
针对现有方案难以适用于差异化的报文安全需求和动态车内网络环境的问题,提出了基于模糊决策的安全策略选取方案。通过对报文特点和车内网络环境的分析,针对性地选择了若干影响因素,并利用层次分析法和模糊决策的思想,自适应的选取安全策略,实现了在满足报文的安全需求的同时,根据动态的车内网络环境自适应地调整安全策略。
针对目前CAN总线的认证和加密中缺乏有效的密钥管理方案这一问题,将车内ECU节点的通信频率抽象为无向图,以通信频率作为图的边权重,采用马尔可夫聚类(MarkovCluster Algorithm,MCL)的方法根据ECU之间通信频率将其划分为层次化的域结构,并使用树形域密钥结构对节点进行密钥管理,减少因节点跨域通信而带来的通信开销。同时结合自适应安全策略选取方案,设计了差异化的安全策略及相应的通信协议。
对于本发明所提出的方案,首先从可行性、安全性等方面进行了全面的理论分析。随后,通过实验验证了自适应模糊决策的有效性,并对ECU分域和密钥管理方案进行性能分析。与现有方案进行对比,结果表明本发明所需的存储和计算开销较少,适用于计算能力受限的ECU节点和高实时性需求的CAN总线网络。
附图说明
图1是本发明实施例提供的自适应的CAN总线安全控制方法流程图。
图2是本发明实施例提供的CAN总线安全机制的层次模型图。
图3是本发明实施例提供的基于LKH的树形域密钥结构图。
图4是本发明实施例提供的安全策略P2的通信协议流程图。
图5是本发明实施例提供的安全策略P3的通信协议流程图。
图6是本发明实施例提供的安全策略P5的通信协议流程图。
图7是本发明实施例提供的将发明应用于CAN扩展帧图。
图8是本发明实施例提供的改变总线负载比各个安全策略的占比情况图。
图中:(a)在信道忙闲比和网络安全状态不变的情况下,总线负载比为0.25示意图。(b)在信道忙闲比和网络安全状态不变的情况下,总线负载比为1示意图。
图9是本发明实施例提供的改变信道忙闲比各个安全策略的占比情况图。
图中:(a)表示在总线负载比和网络安全状态不变的情况下,在信道忙闲比增加时,则策略P4,P6在整个总线网络的所有报文中所占的比重为37.77%示意图。(b)表示在总线负载比和网络安全状态不变的情况下,在信道忙闲比增加时,则策略P4,P6在整个总线网络的所有报文中所占的比重为4.46%示意图。
图10是本发明实施例提供的改变网络安全状态各个安全策略的占比情况图。
图中:(a),在总线负载比和信道忙闲比不变的情况下,若网络安全级别降低,则需要提高车内网络安全级别,对报文进行认证或加密。根据本发明所提方案,加密传输的安全策略P2,P5,P6的占比为70.86%示意图。(b)在总线负载比和信道忙闲比不变的情况下,若网络安全级别降低,则需要提高车内网络安全级别,对报文进行认证或加密。根据本发明所提方案,加密传输的安全策略P2,P5,P6的占比为95.44%示意图。
图11是本发明实施例提供的密钥分发时间图。
图12是本发明实施例提供的不同安全策略下的ECU节点通信响应时间图。
图13是本发明实施例提供的本发明与LeiA、Woo的比较图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有方案未考虑到报文安全需求的差异性以及车内网络环境的动态性,难以兼顾安全性和网络性能;现有的CAN总线认证加密方案中缺乏高效密钥管理方案,并不适用于计算存储能力有限的ECU节点。
为解决上述问题,下面结合相关工作对本发明作详细描述。
CAN总线主要传输控制指令与传感器参数信息等报文,与总线相连的多个ECU节点竞争向总线发送报文,根据报文的优先级确定总线的控制权。优先级取决于报文标识符,即message ID。发送报文优先级高的ECU节点向总线发送报文,其余节点等待总线空闲再次竞争。这种逐位仲裁、广播明文的方式提高了数据通信的实时性,但因总线报文不包含发送方和接收方地址,仅采用循环冗余校验(Cyclic Redundancy Check,CRC)检测传输过程中的错误,未提供任何的加密或认证等安全机制,为攻击者入侵车内总线提供了可能。随着车内ECU节点与外界网络的互联程度越来越高,为实现CAN总线报文的安全传输,研究者提出多种CAN总线报文认证,加密以及ECU节点的密钥管理方案。
(1)CAN总线报文的认证
实现报文认证是指接收ECU可以验证报文的来源的真实性以及内容的完整性。Groza等提出采用类TESLA(Timed Efficient Stream Losstolerance Authentication)广播认证协议。发送ECU选取只有自己知道的密钥k生成报文对应的消息认证码(MessageAuthentication Code,MAC)发送至总线。稍后再将密钥k发送到总线,接收ECU收到后根据相应的k对报文进行验证。通过延迟公开密钥来确保报文的来源的真实性,但该方案无法实现即时的消息处理,不可避免的带来认证延迟,对高实时性的CAN总线以及时间关键的ECU节点难以适用。Nilsson等人提出通过复合MAC的延迟认证方式,将生成的MAC分为四部分并使用随后传输的四条报文的CRC字段传输。此类方案虽然不增加额外总线负载,但会带来认证延迟。且由于占用CRC字段导致无法校验报文在传输过程中的错误。Woo等人提出将用于认证的MAC截断为32bits,占用扩展标识符和CRC字段发送,从而在不增加额外总线负载的情况下实现了报文认证。但32bits的MAC难以提供足够的安全性。Radu等人提出了LeiA方案,为保证足够的安全性,将生成的MAC以单独的报文传输。但该方案至少增加一倍的总线负载,增加了通信开销。Kurachi等人提出CaCAN协议,由中央监视节点对网络中的其他节点进行身份验证。一旦发现未授权的报文传输,中央监视节点实时传输更高优先级的错误帧来阻止非法报文的传输。但这种方法需要修改CAN控制器。并且若监视器节点受到损害或被移除,整个网络安全也会受到影响。现有技术中,利用CAN总线的物理层特性,如CAN+协议,在CAN总线接口的采样点之间插入额外的位用于传输认证信息,但此方法需要控制器节点具有较高的采样率,需要从硬件层面更换CAN收发器以及相应的ECU节点,增加了制造商成本。
(2)CAN总线报文的加密
发送ECU使用密钥加密报文数据字段,只有拥有密钥的接收节点可以解密。但由于ECU节点的计算能力有限,且CAN总线对实时性需求高,开销大的加密算法并不适用。LCAP方案将认证信息与数据域字段采用流密码RC4一同加密。Jukl等人建议在CAN总线中采用tiny加密算法,并通过实验证明该方案时延较小,具有可行性。另外,Woo等人提出一种差异化的思路,即在CAN-FD总线中根据ECU节点的安全级别决定报文是否需要加密和认证,仅对安全级别较高的ECU发送的报文加密传输,其余报文明文广播。这种差异化的方式保证了重要ECU节点的安全通信,但仅考虑ECU节点这一因素,无法提供细粒度的安全防护,导致该方案在特定场景下难以适用。
(3)ECU节点的密钥管理
Herrewege等人提出CANAuth协议,将认证密钥与报文标识符相关联,即每个message ID对应一个认证密钥,则每个节点最多需保存的密钥数量为211,这对存储能力有限的ECU节点来说是不小的挑战。Groza等人等人提出LiBra-CAN协议。将ECU节点分成相同大小的多个群组,每个ECU节点可属于多个群组,每个群组内共享用于生成MAC的认证密钥。这种方式可在群组内恶意节点占少数的情况下,提供足够的安全性。但该方案密钥数量与节点数量成指数关系,每个ECU节点都需存储大量密钥。Lin等人提出基于HMAC的CAN总线报文认证方案,通过ECU节点两两共享认证密钥以及同步消息计数器来避免重放和伪造报文攻击,但该方案也需ECU节点存储大量的密钥,带来大量的计算开销和通信开销。
下面结合具体方案对本发明作进一步描述。
如图1所示。本发明提出一种自适应的CAN总线安全控制方法,包括基于模糊决策的安全策略选取方法和ECU分域密钥管理及安全协议。
基于模糊决策的安全策略选取方法包括:综合考虑差异化报文需求以及动态的车内网络环境等因素,利用模糊决策的思想,自适应的选取较为合理的安全策略;
ECU分域密钥管理及安全协议控制方法包括:根据通信频率将ECU节点分域并建立树形域密钥结构。在此基础上,结合自适应的决策过程,设计差异化的安全策略及其通信协议。
在本发明实施例中,基于模糊决策的CAN总线安全策略选取方法包括:
A)因素集的确定
本发明选取与报文安全需求以及动态车内网络环境相关且可能影响安全策略决定的因素,构建因素集U。选取的影响因素如下:
(1)机密性需求
Figure BDA0002087813600000111
由于与行车安全相关的油温,车速等传感器参数这类报文若被攻击者窃听并破解,可能暴露行车安全的重要信息或用户隐私等信息。可通过专家评级,将机密性需求分为由高到低四个等级,这里设
Figure BDA0002087813600000112
表示报文msgi的机密性需求,令
Figure BDA0002087813600000113
Figure BDA0002087813600000114
时,说明报文的机密性需求最高。
(2)认证需求
Figure BDA0002087813600000115
认证是指接收ECU可以验证报文内容的完整性以及来源的真实性。设
Figure BDA0002087813600000116
表示报文msgi的认证需求,其中
Figure BDA0002087813600000117
由专家或制造商对报文内容,收发ECU等进行分析,将报文的认证需求分为由高到低四个等级。令
Figure BDA0002087813600000118
时,说明报文的认证需求最高。本发明采用基于hash的消息认证码HMAC来进行报文认证。
(3)实时性需求
Figure BDA0002087813600000119
Figure BDA00020878136000001110
表示报文msgi的实时性需求,其中
Figure BDA00020878136000001111
这里的实时性是指报文的优先级。CAN总线在仲裁时根据message ID确定报文优先级,显性电平“0”覆盖隐性电平“1”,优先级高的ECU抢占总线。由此可推断,制造商在设计CAN总线通信矩阵时,为使某些报文能及时发送到总线,将这些报文的优先级设定较高。因此,本发明根据message ID来设置实时性需求级别,message ID为11bits的十六进制数,设其起始位为y,则
Figure BDA00020878136000001112
的取值如式(1)。当
Figure BDA00020878136000001113
表示报文的实时性需求最高。
Figure BDA00020878136000001114
(4)报文的长度等级
Figure BDA00020878136000001115
Figure BDA00020878136000001116
表示报文msgi的长度等级。在选取安全策略时,可参考报文长度,截取一定长度的MAC,与原报文一同传输。设报文长度为l bits,
Figure BDA00020878136000001117
的取值如式(2),其中
Figure BDA00020878136000001118
表示报文长度等级最高。
Figure BDA00020878136000001119
(5)总线负载比(Bt):总线负载率是指1s内总线传输数据所占总线带宽的百分率,表示该时间段内总线资源被使用的情况。设网关ECU监测某时间段T内的总线负载率,并统计该时间段内总线负载率大于50%的时间长度t1占总时长t(t≠0)的比例,用总线负载比Bt表示,即Bt=t1/t,Bt∈(0,1],该值越接近于1,则该时间段内的总线负载比越高。
(6)信道忙闲比(CBRt):信道忙闲比用来表示信道的拥塞程度。信道越繁忙,低优先级报文的等待时间越长。定义信道忙闲比(CBRt)为监测时间T内,检测信道为繁忙状态的时间所占的比例,即
Figure BDA0002087813600000121
n为信道检测次数,ki在信道繁忙时为1,信道空闲时为0。当CBRt的值越大时,说明信道越繁忙。
(7)当前网络安全状态级别(St):设St为当前时间段T内车内入侵检测系统(Intrusion Detection System,IDS)反馈的车内网络安全级别。目前已有学者提出多种车内CAN总线入侵检测方案,如基于报文信息熵[7]以及数据帧频率[9-10]等多种检测方案。设IDS将当前网络安全状态反馈至网关ECU,其中St={s|s=(n-k)/n,k=0,1,2,3,n=4}依次表示当前网络状态由高到低的四个等级。当St=1时,表示当前网络安全状态级别最高。
综上,报文因素以及网络环境因素的取值范围均在(0,1]之内,将以上因素依次表示为u1,u2,...,u7,并添加到因素集U中,即U={u1,u2,...,u7}。随着车联网技术的发展,可将影响安全策略的因素加入策略集U中,符合具体应用情况即可。
B)策略集的确定
目前研究者提出的CAN总线认证方案中,MAC的传输方式主要分为单独的报文传输以及与原报文一并传输两种:以单独的报文形式传输64bits的MAC,提供较高的安全性,但成倍的增加总线负载。若与原报文一并传输,虽不增加总线负载,但有限长度的MAC降低了安全性。本发明依据报文的安全需求总结并提出了在车内CAN总线中常用的六种安全策略。设策略集P表示本发明提供的可选策略的集合,表示为P={P1,P2,P3,P4,P5,P6},其中P1表示明文广播传输,P2表示密文传输,P3表示明文传输并采用截断的HMAC认证,P4表示明文传输并采用64bits的HMAC认证,P5表示密文传输并采用截断的HMAC认证,P6表示密文传输并采用64bits的HMAC认证。在实际应用时可添加新的安全策略到策略集中,以满足个性化的安全需求。
C)基于模糊决策的差异化安全策略选取:
由于报文的需求具有一定的模糊性,如机密性需求的“高”与“低”并无明显的分界线,具有一定的主观性;同时“较为合理”的传输策略本质上是在安全性和网络性能之间的权衡,其概念也具有一定的模糊性。因此本发明采用模糊决策[26]的思想,设计自适应的安全策略选取方案,假设网关ECU有足够的计算能力,可获得报文需求以及某时间段T内的车内网络参数,首先采用层次分析法[27](Analytic Hierarchy Process,AHP)确定影响因素的权重,然后确定安全策略对评语集的隶属度函数并构造模糊评判矩阵,对策略进行模糊综合评价,最后在选取较为合理的安全策略输出。步骤如下。
(1)基于AHP法确定因素集各影响因素的权重
首先建立CAN总线安全机制的层次模型,如图2所示。其中因素集U={U1,U2},U1表示报文因素集,U2为网络环境因素集。
通过对同一层的因素两两比较,由专家或制造厂商进行重要度评估,确定其相对重要程度。由上至下建立对比矩阵Mu=(mij)n×n,mij>0。其中,mij表示因素ui与因素uj的相对重要程度,n为因素个数,如式(3):
Figure BDA0002087813600000122
这里要求Mu为一致矩阵,即满足:mji=1/mij
Figure BDA0002087813600000123
这是因为需满足权重的分配在逻辑上具有一致性。在确定对比矩阵后,因素权重的确定如算法1。
Figure BDA0002087813600000124
Figure BDA0002087813600000131
最后确定子准则层各因素相对目标层的权重。若准则层权重
Figure BDA0002087813600000132
子准则层对因素U1,U2的权重分别为W1和W2,则根据加权法,最终所有因素的权重为α=[W1·α1,W2·α2]。
(2)确定隶属度函数,构造模糊评判矩阵R
首先,由专家或制造商通过分析各个因素对安全策略的影响,对每个因素构造一个策略评分等级矩阵G=(gij)6×4,其中gij表示当因素分别取不同的值时策略Pi的得分。如对
Figure BDA0002087813600000133
构造其策略评分矩阵G1,其中gij表示
Figure BDA0002087813600000134
依次取{0.25,0.5,0.75,1}时,各个策略Pi的得分情况。
然后确定安全策略对评语集各元素的隶属度函数。设评语集为所有评价结果组成的集合,用V={v1,v2,...,vm}表示,m为评价结果的总数。本发明选取V={差,较差,较好,好}。用隶属度rij用来表示策略Pi在因素ui的影响下对于评语集元素vj的属于程度,其中rij∈[0,1]。rij越接近于1,说明Pi对vj的隶属度越高。本发明选取降半梯形分布隶属度函数,表达式如式(4-7),其中j={1,2,3,4}分别表示vj可能的四种取值{差,较差,较好,好},则相应的rij依次为ri1,ri2,ri3,ri4,式中a1<a2<a3<a4,gij表示该策略的得分,来源于策略评分矩阵G。
Figure BDA0002087813600000135
Figure BDA0002087813600000136
网关ECU在获取某条报文的参数信息以及该时间段内的网络环境参数后,根据各因素策略评分矩阵G,依次获取策略集Pi(i=1,2,...6)相应的分数gij,并代入隶属度函数,依次构成每个安全策略的模糊评判矩阵R,其中
Figure BDA0002087813600000137
(3)对策略进行模糊综合评价
根据式(8),计算从总体上看Pi对vj的隶属度B=(b1,b2,...,bm),即策略Pi的模糊评价结果向量。其中bi表示Pi对vj的隶属度,即综合考虑各个因素的影响,确定Pi对于评语集vj的隶属度。依次计算各个安全策略对评语集vj的隶属度。
Figure BDA0002087813600000141
(4)根据最大隶属度原则选取安全策略
在获得Pi的模糊评价向量Bi=(bi1,bi2,bi3,bi4)后,根据最大隶属度原则确定策略Pi的评价结果,即当
Figure BDA0002087813600000142
时,Pi在总体上隶属于第r等级。依次确定Pi(i=1,2,...6)总体上更倾向于评价结果。在所有策略中选取处于最高级评价的策略。若处于最高级评价的策略有多个,则选择隶属度更大的策略作为模糊决策的输出。网关ECU将选取的该报文的安全策略广播至总线,与该报文相关的发送和接收ECU更新该报文在下一时间段T的策略。
在本发明实施例中,ECU分域密钥管理和安全协议控制方法包括:
本发明提出一种高效的ECU分域和密钥管理方案。首先为减少域间节点的通信开销,本发明基于MCL聚类的思想,根据ECU的通信频率对ECU节点划分域,然后建立基于逻辑密钥树(Logical Key Hierarchy,LKH)的树形域密钥结构并完成密钥分发。最后结合自适应安全策略选取方法,设计差异化的安全策略及其通信协议。
作为本发明优选实施例,基于MCL聚类的ECU分域包括:
如何设计合理且高效的ECU分域规则是本小节要解决的问题。本发明首先构建ECU节点的通信图G(V,E),顶点V表示ECU,边E表示ECU之间的通信,边上的权重表示节点间的通信频率。定义通信频率CFij为单位时间T内的ECUi与ECUj之间的通信次数。这里需要说明的是与外部网络有接口的ECU,如OBD等,更易成为攻击者入侵车内CAN总线的入口。因此,对于与外部网络有接口的ECU,应单个ECU分为一个域。具体步骤如算法2所示。
Figure BDA0002087813600000143
循环该算法,将每轮的输出作为下一轮的输入,即以第i次的输出的ECU节点聚簇结果集,构造新的图Gi(Vi,Ei),每个集合作为图中的顶点,整个集合的ECU与其余集合的ECU节点的通信频率之和作为边的权重,再次进行MCL聚类,直到最终形成一个簇,根据每次聚类结果集建立ECU节点分域的树形逻辑结构。
作为本发明优选实施例,基于LKH的域密钥分发与管理包括:
由于车内CAN总线网络对实时性需求较高,要求通信时延最小化。另外ECU节点计算能力有限,为尽可能的减少跨域通信带来的通信开销,本发明根据ECU分域结果集,建立基于LKH树形域密钥结构。首先,因目前ECU的数量在50到100个左右,故对ECU用唯一的8位二进制数标识,表示为ECUi;接下来建立基于LKH的树形域密钥逻辑结构。叶子节点表示ECU,虚拟节点代表域,同一父亲节点的兄弟节点属于同一个域。每个ECU需保存从叶子节点至根节点该路径上的所有密钥。设
Figure BDA0002087813600000151
表示域的密钥编号,其中i,j分别表示若按ECU ID排序,域内的起始节点和结束节点ID,s表示密钥树的层编号。如图3所示。ECUi需存储域2的域内密钥
Figure BDA0002087813600000152
以及域3的域内密钥
Figure BDA0002087813600000153
在建立树形域密钥逻辑结构后,由网关ECU进行密钥分发。假设域n的ECU节点与网关ECU预共享密钥
Figure BDA0002087813600000154
且密钥的下载是通过安全信道。网关ECU作为控制节点,存储所有的密钥。加载预共享密钥的过程只在汽车出厂以及更换某个ECU时进行。车辆启动时,网关ECU根据树形域密钥的逻辑结构,按固定的顺序分发密钥。设ECUi∈Yn,其中Yn表示域n。步骤如下。
(1)网关ECU选择两个随机数种子
Figure BDA0002087813600000155
用于生成Yn的域内会话密钥EKn和认证密钥AKn。用Yn内ECU与网关ECU预共享的加密密钥
Figure BDA0002087813600000156
加密后的随机数种子并广播,如式(9)(10);
Figure BDA0002087813600000157
Figure BDA0002087813600000158
(2)Yn的节点收到消息后用对应的密钥解密,得
Figure BDA0002087813600000159
并分别计算Yn的会话密钥EKn与认证密钥AKn,如式(11)(12)。其中KDF()表示用于密钥派生的单向hash函数;
Figure BDA00020878136000001510
Figure BDA00020878136000001511
(3)为验证是否成功共享密钥EKn与AKn,网关ECU用步(1)生成的EKn与AKn分别加密CTRn并广播。其中,CTRn为密钥分发时网关ECU保存的与Yn相关的计数器如式(13)(14);
Figure BDA00020878136000001512
Figure BDA00020878136000001513
(4)Yn内节点收到消息后用步(2)生成的相应密钥解密,将得到的CTRn值与自己保存的计数器值CTR'n对比,若相等,则认为成功共享了相应的密钥。否则,ECU节点需向网关ECU发送错误帧,表明并未成功共享密钥。
网关ECU以域为单位,依次分发会话密钥EKn与认证密钥AKn。在车辆点火时以及一定的时间周期T内按上述方式,网关ECU再次按域分发密钥,更新会话密钥与认证密钥。
作为本发明优选实施例,差异化安全协议的设计包括:
本发明依据报文的安全需求总结并提出了在CAN总线中常用的六种安全策略。设策略集为P={P1,P2,P3,P4,P5,P6},其中P1表示明文广播传输,P2表示密文传输,P3表示明文传输并采用截断的HMAC认证,P4表示明文传输并采用64bits的HMAC认证,P5表示密文传输并采用截断的HMAC认证,P6表示密文传输并采用64bits的HMAC认证。ECUi向ECUj发送报文,且ECUi,ECUj∈Yn。各个策略具体流程如下。
(1)策略P1明文广播传输:对原报文明文广播,不进行任何处理。
(2)策略P2密文传输,如图4。具体流程如下:
a.ECUi更新报文计数器
Figure BDA00020878136000001514
并选取相应的密钥EKn加密明文M以及
Figure BDA00020878136000001515
后得到密文C,发送至总线,这里
Figure BDA0002087813600000161
b.ECUj根据message ID确定相应的安全策略,并根据发送方ID选取相应的密钥EKn解密后得明文M及
Figure BDA0002087813600000162
Figure BDA0002087813600000163
与自己保存的计数器
Figure BDA0002087813600000164
进行对比。若
Figure BDA0002087813600000165
则更新
Figure BDA0002087813600000166
后接收报文,否则丢弃。
(3)策略P3表示采用截断的HMAC认证:如图5所示,ECUj需要验证报文是否被修改以及是否真实来源于ECUi,这里使用HMAC进行认证。设原报文长度为l bits,策略P3选取生成HMAC的前(64-l)bits。设ECUi,ECUj∈Yn,具体流程如下:
a.ECUi更新计数器
Figure BDA0002087813600000167
使用认证密钥AKn生成
Figure BDA0002087813600000168
取前(64-l)bits,与M以及
Figure BDA0002087813600000169
一起发送至总线;
b.ECUj确定相应的安全策略以及认证密钥AKn后,计算
Figure BDA00020878136000001610
与收到的HMAC对比,若一致,则对比
Figure BDA00020878136000001611
与自己保存的
Figure BDA00020878136000001612
Figure BDA00020878136000001613
更新
Figure BDA00020878136000001614
后接收报文,否则丢弃该报文。
(4)策略P4采用64bits的HMAC认证,认证的过程与P3一致。不同的是这里是将生成的HMAC取前64bits,以一条单独的报文发送至CAN总线。
(5)策略P5密文传输并采用截断的HMAC认证:如图6所示。具体流程如下:
a.ECUi更新报文计数器
Figure BDA00020878136000001615
选取相应的密钥EKn加密报文,即
Figure BDA00020878136000001616
并生成HMAC,即
Figure BDA00020878136000001617
这里设原报文长度为l bits,策略P5选取生成HMAC的前(64-l)bits。并将密文C与截断后的HMAC一起发送至总线;
b.ECUj在确定安全策略以及相应的密钥EKn和AKn后,用EKn解密后得到M及
Figure BDA00020878136000001618
并生成HMAC',即
Figure BDA00020878136000001619
与收到的HMAC进行对比,若一致,则对比
Figure BDA00020878136000001620
Figure BDA00020878136000001621
Figure BDA00020878136000001622
更新
Figure BDA00020878136000001623
后接收报文,否则丢弃。
(6)策略P6密文传输并采用64bits的HMAC认证:HMAC的生成以及加解密过程与P5一致,唯一的区别是将生成的HMAC以一条单独的报文发送。
下面结合实验对本发明作进一步描述。
1、可行性分析:
CAN总线报文根据message ID的长度,可分为CAN标准帧和CAN扩展帧。其中CAN扩展帧将29bits的ID标识符分为标识符与扩展标识符两部分,其中标识符字段主要用来确定报文的优先级。若将本发明所提方案应用在CAN扩展帧中则需对CAN扩展帧格式做以下修改,如图7所示。
将18bits的扩展标识符字段分为三部分:4bits的控制字段,8bits的发送方ID以及6bits的保留字段。其中控制字段用于说明报文的类型,包括密钥分发帧,数据传输帧,策略标识帧等,具体定义如表1所示。未使用的字段暂保留,可用于今后的扩展。8bits的发送方ID字段是ECU节点的唯一标识,用于实现报文的源认证。
表1控制字段编码
Figure BDA00020878136000001624
Figure BDA0002087813600000171
本发明充分利用CAN扩展帧的扩展标识符字段,用于标识报文类型以及发送方ID。该方案具有可行性,这是由于在CAN总线中,18bits的扩展标识符字段与11bits的标识符字段共存,且报文的优先级是根据11bits的标识符字段决定,占用扩展标识符字段并不会干扰CAN总线的仲裁过程。故本发明对CAN扩展帧的修改具有可行性,易于实施,且具有一定的可扩展性。
2安全性分析
本发明从报文机密性、认证、防重放攻击、密钥的前向后向安全性来分析其安全性。
(1)报文机密性:安全策略P2,P5,P6均采用AES-128算法来确保CAN总线报文的机密性。与网关ECU使用密钥
Figure BDA0002087813600000172
以及随机数种子
Figure BDA0002087813600000173
生成会话密钥EKn且攻击者无法获得
Figure BDA0002087813600000174
由于AES-128算法的安全性已被证明[30],即攻击者无法从
Figure BDA0002087813600000175
获得EKn。因此在无法获得会话密钥EKn的情况下,攻击者无法解密报文。
(2)报文认证:指接收ECU可以验证报文内容的完整性和来源的真实性。策略P3,P4,P5,P6选取HMAC进行报文认证。由于攻击者不知道该报文生成HMAC所用到的认证密钥AK,唯一的方式是在密钥空间进行穷举,在2x种可能中选择一个x bits的字符串作为认证密钥。如果攻击者短时间内穷举HMAC发送至CAN总线,会造成总线网络将会传输一个“CAN BUSOFF”的错误帧表示通信失败的错误状态。
(3)防重放攻击:发送和接收ECU分别维护报文计数器
Figure BDA0002087813600000176
Figure BDA0002087813600000177
用于报文同步和生成HMAC。因此,本发明对于重放攻击是安全的。
(4)密钥的前向后向安全性:每次密钥更新时,
ECU无法得知之前的和之后的会话密钥与认证密钥。即使第k次会话密钥暴露,也无法获得第k-1次,第k+1次的会话密钥,这是因为第k次的生成密钥的随机数种子与第k-1次的,第k+1次的随机数均无关,很好的保证密钥的前向后向安全性。同理,本发明也可保证认证密钥的前向后向安全性。
3实验分析
本实验采用CANoe V10.0软件用来模拟车内CAN总线网络环境,在该软件中使用CAPL语言作为编程语言。实验环境为PC机,Windows7 64位系统,i7-6700主频3.4GHz,内存8G,使用Python语言作为编程语言。选取在国内某品牌汽车上某时间段内所采集的CAN总线报文数据集用于模拟某时间段真实的车内总线环境,该数据集中包括731622条报文,根据message ID可分为51种。
3、1自适应模糊决策的有效性
本发明采用PC机模拟网关ECU节点自适应模糊决策的过程,通过改变车内网络参数,观察网络环境的变化对选择安全策略的影响。根据CAN总线报文数据集模拟某时间段T内的总线网络环境,并对51种不同message ID的报文类型,随机生成[0,1]内的实数,用于模拟报文的机密性需求和认证需求。并根据message ID确定报文的实时性需求,根据数据字段长度确定报文长度级别。实验根据CAN总线层次模型,选取并构造准则层对比矩阵Mu1,子准则层的对比矩阵Mu2,Mu3。根据AHP法,计算并得到相应的权重
Figure BDA0002087813600000178
和W1,W2以及因素集各个元素的总权重α,具体数据如下:
Figure BDA0002087813600000181
Figure BDA0002087813600000182
W2=[0.4286,0.1429,0.4286]α=[0.0236,0.076,0.1519,0.0818,0.2857,0.0953,0.2857]
然后选取并构造策略评分矩阵。在完成实验准备工作后,根据上述的真实数据集模拟的某时间段T内的总线环境,通过改变车内网络参数,观察各个安全策略的占比情况。网络参数{Bt,CBRt,St}的所有可能取值为{0.25,0.5,0.75,1},这里使用向量
β={β123}来表示{Bt,CBRt,St}的一组可能的取值。详细的实验结果如下。
图8(a)(b)可以看到在信道忙闲比和网络安全状态不变的情况下,总线负载比从图(a)的0.25增加到图(b)所示的1,则需要额外传输64bits MAC的安全策略P4,P6在整个总线网络的所有报文中所占的比重由64.52%降低到37.77%,这说明当总线负载增加的情况下,自适应方案将减少选择需要额外MAC传输的安全策略,尽可能不增加额外的总线负载。
图9(a)(b)表示在总线负载比和网络安全状态不变的情况下,在信道忙闲比增加时,则策略P4,P6在整个总线网络的所有报文中所占的比重由37.77%降低到4.46%。这说明当信道忙闲比增大的时,为使报文尽快发送,提高实时性,自适应方案将减少选择需要额外MAC传输的安全策略。
图10(a)(b)可看出,在总线负载比和信道忙闲比不变的情况下,若网络安全级别降低,则需要提高车内网络安全级别,对报文进行认证或加密。根据本发明所提方案,加密传输的安全策略P2,P5,P6的占比从70.86%提高95.44%,说明当网络安全状态级别降低时,本发明将报文进行加密传输,以防止攻击者窃听攻击,保证报文传输的机密性。
4、在本发明ECU节点分域以及域密钥管理中,
本发明对ECU密钥管理方案从存储开销,计算开销两个方面分别进行了性能分析和对比。
(1)存储开销:指每个ECU节点需要存储的密钥数量。本发明将本发明与现有方案进行对比。为了方便计算,设ECU节点的总数为n,树形域密钥结构为n个节点的满m叉树(m≥2),每个ECU节点需要存储沿其所在叶子节点至根节点该路径上的所有域密钥,每个域的域内密钥有2个,包括EK和AK。由表2可以看出,本发明采用的树形域密钥结构,减少了每个ECU节点存储的密钥数量以及密钥总数量。
表2各方案的密钥数量对比
Figure BDA0002087813600000183
(2)计算开销:指在密钥更新过程中,平均每个ECU节点所需的计算时间。这里假设车内网中ECU节点具有相同的时钟频率。通过改变CAN总线的数据传输速率,测量网关ECU分发密钥所需时间。其中,密钥分发过程所需时间包括:1)网关ECU加密随机数并广播;2)报文传输;3)ECU节点解密数据帧并生成密钥;4)网关ECU加密计数器并广播;5)ECU节点解密数据帧并对比的时间之和。由图11可以看到,随着ECU节点时钟频率的增加以及总线数据传输速率的增加,密钥分发时间随之减少。根据本发明,由于采用分域的形式,网关ECU广播报文,初始密钥分发时间不随着ECU数量的增加而增加,在不增加额外的存储开销的同时,具有良好的可行性。
5、安全策略的性能分析
本小节使用CANoe V10.0仿真软件模拟车内CAN总线,建立动态链接库来在CANoe中执行安全策略。假设车内网中ECU具有相同的时钟频率,改变CAN总线的数据传输速率,测量ECU的通信响应时间。其中,通信响应时间包括:1)发送方执行安全策略后发送;2)报文传输;3)接收方收到数据帧后,进行HMAC验证或解密。
图12表示各个安全策略在ECU节点时钟频率不同和总线数据传输速率不同时所需的通信响应时间。其中策略P1采用广播明文,其通信响应时间只包括2)报文传输的时延,故本发明只对其他5个安全策略的ECU通信响应时间进行测量。可以看到,随着总线数据传输速率的增加,ECU节点所需的通信响应时间逐渐减少。同时,时钟频率越高的ECU节点所需的通信响应时间越少。因此,根据ECU的计算能力的不同以及总线数据传输速率的大小,根据本发明所提方案可以自适应的选取差异化的安全策略,进而减少通信时延和计算开销。
6、对比实验
将本发明所提自适应安全机制与LeiA方案以及Woo等人所提方案进行对比实验。在CAN总线报文数据集中随机选取时间序列T={t1,t2,...,t8},测量在ti时间段内的总线负载以及使用LeiA、Woo和本发明的总线负载以及ECU节点的通信响应时间。实验设定ECU节点频率均为150MHz,总线的数据传输速率均为1Mbps,随机选取的时间序列中报文数量如表3所示。
表3实验选取的时间序列包含报文数量
Figure BDA0002087813600000191
如图13(a),总线负载随时间在不断变化。Woo方案使用32bits的MAC,与报文一并传输,不增加总线负载,故该方案的变化趋势与总线负载的变化重合;LeiA方案将64bits的MAC以额外的报文传输,故总线负载增加一倍。而本发明的方案采用自适应的模糊决策,针对报文需求和网络环境,选取32bits或64bits的MAC,虽然会增加一定的总线负载,但远低于LeiA方案。由图13(b),本发明所提方案的ECU节点响应时间也介于LeiA和Woo方案之间,并未较多的增加ECU节点的通信响应时间。
表4将LeiA方案、Woo方案与本发明在安全性和网络性能之间比较。其中安全性包括是否加密以及用于认证的MAC的长度。网络性能包括对总线负载的影响和ECU的通信响应时间。可以看到,本发明相较于LeiA方案。对总线负载影响较小,且通信时延较小;相较于Woo方案,提供了较长的MAC,安全性更高。这是由于本发明增加了自适应的策略选择,兼顾网络性能与安全性。
表4 LeiA、Woo和本发明的安全性与网络性能比较
Figure BDA0002087813600000192
下面结合效果对本发明作进一步描述。
针对现有CAN总线安全方案存在以下问题:(1)单一的安全机制难以满足差异化的报文安全需求以及动态的车内网络环境,现有方案难以兼顾安全性和网络性能;(2)现有CAN总线加密和认证方案中缺乏高效的密钥管理方案,难以适用于计算能力有限的ECU节点。本发明提出了一种自适应的CAN总线安全机制,主要包括:(1)综合考虑报文需求和车内总线网络因素,提出基于层次分析法和模糊决策的安全策略选取方案,针对差异化的报文和动态变化的车内网络环境,自适应的选择较为合理的安全策略;(2)根据ECU间的通信频率将ECU节点划分为层次化的域,进行密钥管理。并设计了差异化的安全策略及相应的通信协议;(3)对本发明所提方案,进行了可行性和安全性分析,并验证了自适应模糊决策的有效性,对ECU分域和密钥管理方案进行性能分析。与现有方案进行对比,结果表明本发明所需的存储开销和计算开销十分有限,适用于计算能力受限的ECU节点和高实时性需求的CAN总线网络。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种自适应的车内CAN总线安全控制方法,其特征在于,所述自适应的车内CAN总线安全控制方法包括:
通过对报文特点和车内网络环境的分析,选择若干影响因素,并利用层次分析法和模糊决策的思想,自适应的选取安全策略,在满足报文的安全需求的同时,根据动态的车内网络环境自适应地调整安全策略;基于模糊决策的CAN总线安全策略选取方法包括:
步骤一,因素集的确定:选取与报文安全需求以及动态车内网络环境相关且影响安全策略决定的因素,构建因素集U;报文因素以及网络环境因素的取值范围均在(0,1]之内,将报文因素以及网络环境因素依次表示为u1,u2,...,u7,并添加到因素集U中,U={u1,u2,...,u7};
步骤二,策略集的确定:
策略集P表示可选策略的集合,表示为P={P1,P2,P3,P4,P5,P6},其中P1表示明文广播传输,P2表示密文传输,P3表示明文传输并采用截断的HMAC认证,P4表示明文传输并采用64bits的HMAC认证,P5表示密文传输并采用截断的HMAC认证,P6表示密文传输并采用64bits的HMAC认证;
步骤三,基于模糊决策的差异化安全策略选取:首先采用层次分析法确定影响因素的权重,然后确定安全策略对评语集的隶属度函数并构造模糊评判矩阵,对策略进行模糊综合评价,最后在选取较为合理的安全策略输出;
将车内ECU节点的通信频率抽象为无向图,以通信频率作为图的边权重,采用马尔可夫聚类的方法根据ECU之间通信频率将其划分为层次化的域结构,并使用树形域密钥结构对节点进行密钥管理,同时结合自适应安全策略选取方法,进行差异化的安全策略及相应的通信协议选取,实现车内CAN总线安全控制;ECU分域密钥管理和安全协议选取方法包括:
首先为减少域间节点的通信开销,基于MCL聚类的思想,根据ECU的通信频率对ECU节点划分域;然后建立基于逻辑密钥树的树形域密钥结构并完成密钥分发;最后结合自适应安全策略选取方法,设计差异化的安全策略及其通信协议;
基于LKH的域密钥分发与管理方法包括:
根据ECU分域结果集,建立基于LKH树形域密钥结构,对ECU用唯一的8位二进制数标识,表示为ECUi;建立基于LKH的树形域密钥逻辑结构,叶子节点表示ECU,虚拟节点代表域,同一父亲节点的兄弟节点属于同一个域;每个ECU保存从叶子节点至根节点该路径上的所有密钥;
Figure FDA0003028411230000021
表示域的密钥编号,其中i,j分别表示若按ECU ID排序,域内的起始节点和结束节点ID,s表示密钥树的层编号;
在建立树形域密钥逻辑结构后,由网关ECU进行密钥分发;域n的ECU节点与网关ECU预共享密钥
Figure FDA0003028411230000022
且密钥的下载是通过安全信道;网关ECU作为控制节点,存储所有的密钥;加载预共享密钥的过程只在汽车出厂以及更换某个ECU时进行;车辆启动时,网关ECU根据树形域密钥的逻辑结构,按固定的顺序分发密钥;ECUi∈Yn,其中Yn表示域n;具体步骤如下:
(1)网关ECU选择两个随机数种子
Figure FDA0003028411230000023
用于生成Yn的域内会话密钥EKn和认证密钥AKn;用Yn内ECU与网关ECU预共享的加密密钥
Figure FDA0003028411230000024
加密后的随机数种子并广播,如式(9)(10);
Figure FDA0003028411230000025
Figure FDA0003028411230000026
(2)Yn的节点收到消息后用对应的密钥解密,得
Figure FDA0003028411230000027
并分别计算Yn的会话密钥EKn与认证密钥AKn,如式(11)(12);其中KDF()表示用于密钥派生的单向hash函数;
Figure FDA0003028411230000028
Figure FDA0003028411230000029
(3)为验证是否成功共享密钥EKn与AKn,网关ECU用步(1)生成的EKn与AKn分别加密CTRn并广播;其中,CTRn为密钥分发时网关ECU保存的与Yn相关的计数器如式(13)(14);
Figure FDA0003028411230000031
Figure FDA0003028411230000032
(4)Yn内节点收到消息后用步(2)生成的相应密钥解密,将得到的CTRn值与自己保存的计数器值CTR'n对比,若相等,则认为成功共享了相应的密钥;否则,ECU节点需向网关ECU发送错误帧,表明并未成功共享密钥;
网关ECU以域为单位,依次分发会话密钥EKn与认证密钥AKn;在车辆点火时以及一定的时间周期T内按上述方式,网关ECU再次按域分发密钥,更新会话密钥与认证密钥;
差异化安全协议的选取方法包括:
设策略集为P={P1,P2,P3,P4,P5,P6},其中P1表示明文广播传输,P2表示密文传输,P3表示明文传输并采用截断的HMAC认证,P4表示明文传输并采用64bits的HMAC认证,P5表示密文传输并采用截断的HMAC认证,P6表示密文传输并采用64bits的HMAC认证;ECUi向ECUj发送报文,且ECUi,ECUj∈Yn
(1)策略P1明文广播传输:对原报文明文广播,不进行任何处理;
(2)策略P2密文传输:ECUi更新报文计数器
Figure FDA0003028411230000033
并选取相应的密钥EKn加密明文M以及
Figure FDA0003028411230000034
后得到密文C,发送至总线,这里
Figure FDA0003028411230000035
ECUj根据message ID确定相应的安全策略,并根据发送方ID选取相应的密钥EKn解密后得明文M及
Figure FDA0003028411230000036
Figure FDA0003028411230000037
与自己保存的计数器
Figure FDA0003028411230000038
进行对比;若
Figure FDA0003028411230000039
则更新
Figure FDA00030284112300000310
后接收报文,否则丢弃;
(3)策略P3表示采用截断的HMAC认证:ECUj需要验证报文是否被修改以及是否真实来源于ECUi,使用HMAC进行认证;设原报文长度为lbits,策略P3选取生成HMAC的前(64-l)bits;设ECUi,ECUj∈Yn,ECUi更新计数器
Figure FDA00030284112300000311
使用认证密钥AKn生成
Figure FDA00030284112300000312
取前(64-l)bits,与M以及
Figure FDA00030284112300000313
一起发送至总线;
ECUj确定相应的安全策略以及认证密钥AKn后,计算
Figure FDA0003028411230000041
与收到的HMAC对比,若一致,则对比
Figure FDA0003028411230000042
与自己保存的
Figure FDA0003028411230000043
Figure FDA0003028411230000044
更新
Figure FDA0003028411230000045
后接收报文,否则丢弃该报文;
(4)策略P4采用64bits的HMAC认证,认证的过程与P3一致;不同的是这里是将生成的HMAC取前64bits,以一条单独的报文发送至CAN总线;
(5)策略P5密文传输并采用截断的HMAC认证:ECUi更新报文计数器
Figure FDA0003028411230000046
选取相应的密钥EKn加密报文,即
Figure FDA0003028411230000047
并生成HMAC,即
Figure FDA0003028411230000048
设原报文长度为lbits,策略P5选取生成HMAC的前(64-l)bits,并将密文C与截断后的HMAC一起发送至总线;
ECUj在确定安全策略以及相应的密钥EKn和AKn后,用EKn解密后得到M及
Figure FDA0003028411230000049
并生成HMAC',即
Figure FDA00030284112300000410
与收到的HMAC进行对比,若一致,则对比
Figure FDA00030284112300000411
Figure FDA00030284112300000412
Figure FDA00030284112300000413
更新
Figure FDA00030284112300000414
后接收报文,否则丢弃;
(6)策略P6密文传输并采用64bits的HMAC认证:HMAC的生成以及加解密过程与P5一致,唯一的区别是将生成的HMAC以一条单独的报文发送。
2.如权利要求1所述的自适应的车内CAN总线安全控制方法,其特征在于,
步骤一选取的影响因素进一步包括:
(1)机密性需求
Figure FDA00030284112300000415
由于与行车安全相关的油温,车速传感器参数这类报文若被攻击者窃听并破解,暴露行车安全的重要信息或用户隐私等信息;通过专家评级,将机密性需求分为由高到低四个等级,设
Figure FDA00030284112300000416
表示报文msgi的机密性需求,令
Figure FDA00030284112300000417
Figure FDA00030284112300000418
时,说明报文的机密性需求最高;
(2)认证需求
Figure FDA00030284112300000419
Figure FDA00030284112300000420
表示报文msgi的认证需求,其中
Figure FDA00030284112300000421
由专家或制造商对报文内容,收发ECU等进行分析,将报文的认证需求分为由高到低四个等级;令
Figure FDA00030284112300000422
Figure FDA00030284112300000423
时,说明报文的认证需求最高;
(3)实时性需求
Figure FDA00030284112300000424
Figure FDA00030284112300000425
表示报文msgi的实时性需求,其中
Figure FDA00030284112300000426
根据messageID设置实时性需求级别,message ID为11bits的十六进制数,设其起始位为y,则
Figure FDA0003028411230000051
的取值如式(1);当
Figure FDA0003028411230000052
表示报文的实时性需求最高;
Figure FDA0003028411230000053
(4)报文的长度等级
Figure FDA0003028411230000054
Figure FDA0003028411230000055
表示报文msgi的长度等级;报文长度为lbits,
Figure FDA0003028411230000056
的取值如式(2),其中
Figure FDA0003028411230000057
表示报文长度等级最高;
Figure FDA0003028411230000058
(5)总线负载比Bt:网关ECU监测某时间段T内的总线负载率,并统计该时间段内总线负载率大于50%的时间长度t1占总时长t(t≠0)的比例,用总线负载比Bt表示,Bt=t1/t,Bt∈(0,1],该值越接近于1,则该时间段内的总线负载比越高;
(6)信道忙闲比CBRt:定义信道忙闲比CBRt为监测时间T内,检测信道为繁忙状态的时间所占的比例,
Figure FDA0003028411230000059
n为信道检测次数,ki在信道繁忙时为1,信道空闲时为0;当CBRt的值越大时,说明信道越繁忙;
(7)当前网络安全状态级别St:设St为当前时间段T内车内入侵检测系统反馈的车内网络安全级别;IDS将当前网络安全状态反馈至网关ECU,其中St={s|s=(n-k)/n,k=0,1,2,3,n=4}依次表示当前网络状态由高到低的四个等级;当St=1时,表示当前网络安全状态级别最高。
3.如权利要求1所述的自适应的车内CAN总线安全控制方法,其特征在于,步骤三进一步包括:
1)基于AHP法确定因素集各影响因素的权重:
建立CAN总线安全机制的层次模型,其中因素集U={U1,U2},U1表示报文因素集,U2为网络环境因素集;
通过对同一层的因素两两比较,由专家或制造厂商进行重要度评估,确定其相对重要程度;由上至下建立对比矩阵Mu=(mij)n×n,mij>0;其中,mij表示因素ui与因素uj的相对重要程度,n为因素个数,如式(3):
Figure FDA0003028411230000061
Mu为一致矩阵,满足:mji=1/mij
Figure FDA0003028411230000062
在确定对比矩阵后,因素权重进行确定;若准则层权重
Figure FDA0003028411230000063
子准则层对因素U1,U2的权重分别为W1和W2,则根据加权法,最终所有因素的权重为α=[W1·α1,W2·α2];
2)确定隶属度函数,构造模糊评判矩阵R:
由专家或制造商通过分析各个因素对安全策略的影响,对每个因素构造一个策略评分等级矩阵G=(gij)6×4,其中gij表示当因素分别取不同的值时策略Pi的得分;对
Figure FDA0003028411230000064
构造策略评分矩阵G1,其中gij表示
Figure FDA0003028411230000065
依次取{0.25,0.5,0.75,1}时,各个策略Pi的得分情况;
确定安全策略对评语集各元素的隶属度函数,设评语集为所有评价结果组成的集合,用V={v1,v2,...,vm}表示,m为评价结果的总数;选取V={差,较差,较好,好};用隶属度rij用来表示策略Pi在因素ui的影响下对于评语集元素vj的属于程度,其中rij∈[0,1];rij越接近于1,说明Pi对vj的隶属度越高;本发明选取降半梯形分布隶属度函数,其中j={1,2,3,4}分别表示vj可能的四种取值{差,较差,较好,好},则相应的rij依次为ri1,ri2,ri3,ri4,式中a1<a2<a3<a4,gij表示该策略的得分,来源于策略评分矩阵G;
Figure FDA0003028411230000066
Figure FDA0003028411230000067
Figure FDA0003028411230000071
Figure FDA0003028411230000072
网关ECU在获取某条报文的参数信息以及该时间段内的网络环境参数后,根据各因素策略评分矩阵G,依次获取策略集Pi(i=1,2,...6)相应的分数gij,并代入隶属度函数,依次构成每个安全策略的模糊评判矩阵R,其中
Figure FDA0003028411230000073
3)对策略进行模糊综合评价:
根据式(8),计算Pi对vj的隶属度B=(b1,b2,...,bm),策略Pi的模糊评价结果向量;其中bi表示Pi对vj的隶属度,综合考虑各个因素的影响,确定Pi对于评语集vj的隶属度;依次计算各个安全策略对评语集vj的隶属度;
Figure FDA0003028411230000074
4)根据最大隶属度原则选取安全策略:
在获得Pi的模糊评价向量Bi=(bi1,bi2,bi3,bi4)后,根据最大隶属度原则确定策略Pi的评价结果,当
Figure FDA0003028411230000075
时,Pi在总体上隶属于第r等级;依次确定Pi(i=1,2,...6);在所有策略中选取处于最高级评价的策略;若处于最高级评价的策略有多个,则选择隶属度更大的策略作为模糊决策的输出;网关ECU将选取的该报文的安全策略广播至总线,与该报文相关的发送和接收ECU更新该报文在下一时间段T的策略。
4.如权利要求3所述的自适应的车内CAN总线安全控制方法,其特征在于,步骤1)中因素权重进行确定方法包括:
输入:对比矩阵Mu=(mij)n×n
输出:权重向量;
i)将矩阵Mu按列归一化,得矩阵Mu'=(m'ij)n×n,其中
Figure FDA0003028411230000076
ii)将矩阵Mu'按行求和,得向量
Figure FDA0003028411230000081
其中
Figure FDA0003028411230000082
iii)对向量
Figure FDA0003028411230000083
归一化,得特征向量W=[w1,w2,...,wn]T,其中
Figure FDA0003028411230000084
iv)求最大特征根值
Figure FDA0003028411230000085
v)一致性检验,对照随机一致性指标RI,计算一致性指标CI和一致性比率CR,其中CI=(λmax-n)/(n-1),CR=CI/RI;当CR≥0.1时,需要对Mu中的元素重新赋值并不断进行调整,跳转到步i);
vi)对向量W归一化,得到该层权重α=[α12,...,αn]T,其中
Figure FDA0003028411230000086
5.如权利要求1所述的自适应的车内CAN总线安全控制方法,其特征在于,基于MCL聚类的ECU分域包括:
输入:ECU通信频率带权无向图,n为节点总数;
输出:ECU分域的结果集;
1)由ECU节点通信图G(V,E)建立邻接矩阵C=(cij)n×n,其中cij为ECUi和ECUj之间的通信频率CFij
2)矩阵C对角线元素加1,即当i=j时,cij=1;并将按列进行归一化,计算得到通信频率的概率矩阵C'=(c'ij)n×n,其中
Figure FDA0003028411230000087
3)选取参数e,对矩阵C'幂乘,即C'=(C')e
4)选取参数r,对矩阵C'中的每个元素进行r次幂乘,并按列进行归一化,得到矩阵C”=(c”ij)n×n,其中
Figure FDA0003028411230000088
5)迭代的进行步骤3)、步骤4),直到矩阵C”=(c”ij)n×n收敛;
6)将ECU节点的聚类结果集输出;
循环上述步骤,将每轮的输出作为下一轮的输入,即以第i次的输出的ECU节点聚簇结果集,构造新的图Gi(Vi,Ei),每个集合作为图中的顶点,整个集合的ECU与其余集合的ECU节点的通信频率之和作为边的权重,再次进行MCL聚类,直到最终形成一个簇,根据每次聚类结果集建立ECU节点分域的树形逻辑结构。
6.一种实施权利要求1所述自适应的车内CAN总线安全控制方法的自适应的车内CAN总线安全控制系统。
CN201910493594.7A 2019-06-06 2019-06-06 一种自适应的车内can总线安全控制方法及系统 Active CN110377002B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910493594.7A CN110377002B (zh) 2019-06-06 2019-06-06 一种自适应的车内can总线安全控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910493594.7A CN110377002B (zh) 2019-06-06 2019-06-06 一种自适应的车内can总线安全控制方法及系统

Publications (2)

Publication Number Publication Date
CN110377002A CN110377002A (zh) 2019-10-25
CN110377002B true CN110377002B (zh) 2021-07-30

Family

ID=68249966

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910493594.7A Active CN110377002B (zh) 2019-06-06 2019-06-06 一种自适应的车内can总线安全控制方法及系统

Country Status (1)

Country Link
CN (1) CN110377002B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11418360B2 (en) * 2019-10-29 2022-08-16 Deere & Company Using latent diagnostic capabilities for additional CAN bus monitoring
CN112929150A (zh) * 2019-12-06 2021-06-08 厦门雅迅网络股份有限公司 一种can总线入侵防御电路与方法
CN113132082A (zh) * 2020-01-10 2021-07-16 华为技术有限公司 一种基于车内网的通信方法及装置
DE102020110708A1 (de) 2020-04-20 2021-10-21 Bayerische Motoren Werke Aktiengesellschaft Vorrichtung und Verfahren zum Versenden einer Nachricht an zumindest zwei Empfänger für ein Kraftfahrzeug
WO2021222662A1 (en) * 2020-04-30 2021-11-04 Sensata Technologies, Inc. Secure wireless protocol for wireless sensor networks
WO2022041122A1 (zh) * 2020-08-28 2022-03-03 华为技术有限公司 一种数据传输方法以及装置
CN112600724B (zh) * 2020-11-18 2022-04-05 江苏徐工工程机械研究院有限公司 一种can总线性能测试方法及测试系统
CN112637003B (zh) * 2020-12-04 2022-03-29 重庆邮电大学 一种用于汽车can网络的报文传输时间预估方法
CN113179152B (zh) * 2021-03-11 2022-11-18 江苏大学 一种基于ecu通信频率属性的车内网络数据通信方法
CN113132098B (zh) * 2021-03-12 2022-08-05 北京航空航天大学 面向大规模车内网络的可扩展can总线安全通信方法及装置
CN113268383B (zh) * 2021-04-26 2023-07-14 北京控制工程研究所 一种基于分级策略的四机四总线故障代班方法
CN113328919B (zh) * 2021-05-28 2023-10-10 江苏徐工工程机械研究院有限公司 一种can总线标识符、通信方法以及通信系统
CN114785543B (zh) * 2022-03-09 2023-10-20 西安电子科技大学 一种车内网络跨域通信方法、计算机设备及智能终端
CN115065491A (zh) * 2022-03-30 2022-09-16 成都市以太节点科技有限公司 一种功能与信息安全策略综合选择方法、电子设备及存储介质
CN114650536B (zh) * 2022-03-31 2023-06-02 重庆长安新能源汽车科技有限公司 基于报文指纹的入侵检测方法、系统、车辆及存储介质
CN115190477B (zh) * 2022-05-19 2024-09-24 西安电子科技大学 基于动态密钥的车内网ecu分级认证方法
CN115913814A (zh) * 2022-12-05 2023-04-04 东北大学 一种支持安全等级分类的车载can总线加密通信系统及方法

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541047A (zh) * 2011-11-10 2012-07-04 浙江吉利汽车研究院有限公司 一种组合仪表软件自适应配置方法
CN104724007A (zh) * 2015-01-28 2015-06-24 长城汽车股份有限公司 汽车网络系统及汽车
JP2016055673A (ja) * 2014-09-05 2016-04-21 株式会社デンソー 故障診断装置、および電子制御装置
EP3062477A1 (en) * 2015-02-27 2016-08-31 Samsung Electronics Co., Ltd. Electronic device employing level-based transmission of configuration information
CN106549940A (zh) * 2016-10-13 2017-03-29 北京奇虎科技有限公司 车辆数据传输方法及系统
WO2017079287A1 (en) * 2015-11-04 2017-05-11 Visa International Service Association In-vehicle access application
CN106774232A (zh) * 2015-11-20 2017-05-31 上海汽车集团股份有限公司 车辆防盗系统配置方法、装置及系统
CN108023876A (zh) * 2017-11-20 2018-05-11 西安电子科技大学 基于可持续性集成学习的入侵检测方法及入侵检测系统
EP3337120A1 (en) * 2016-12-14 2018-06-20 Nxp B.V. Network message authentication and verification
EP3339080A1 (en) * 2016-12-23 2018-06-27 Samsung Electronics Co., Ltd. Vehicle and method for controlling thereof
CN108494725A (zh) * 2018-01-30 2018-09-04 惠州市德赛西威汽车电子股份有限公司 一种车载can总线报文的加密通信方法
CN108536118A (zh) * 2017-03-01 2018-09-14 福特全球技术公司 半离线环境中的端对端车辆安全ecu解锁
CN109274566A (zh) * 2018-08-28 2019-01-25 开沃新能源汽车集团有限公司 一种基于网关实现不同can波特率的数据通信完成eps跟vcu的数据交互的方法
CN109830002A (zh) * 2019-01-23 2019-05-31 征辕科技(宁波)有限公司 行车事件数据记录方法、装置及事件数据记录器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10701102B2 (en) * 2017-10-03 2020-06-30 George Mason University Hardware module-based authentication in intra-vehicle networks

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541047A (zh) * 2011-11-10 2012-07-04 浙江吉利汽车研究院有限公司 一种组合仪表软件自适应配置方法
JP2016055673A (ja) * 2014-09-05 2016-04-21 株式会社デンソー 故障診断装置、および電子制御装置
CN104724007A (zh) * 2015-01-28 2015-06-24 长城汽车股份有限公司 汽车网络系统及汽车
EP3062477A1 (en) * 2015-02-27 2016-08-31 Samsung Electronics Co., Ltd. Electronic device employing level-based transmission of configuration information
WO2017079287A1 (en) * 2015-11-04 2017-05-11 Visa International Service Association In-vehicle access application
CN106774232A (zh) * 2015-11-20 2017-05-31 上海汽车集团股份有限公司 车辆防盗系统配置方法、装置及系统
CN106549940A (zh) * 2016-10-13 2017-03-29 北京奇虎科技有限公司 车辆数据传输方法及系统
EP3337120A1 (en) * 2016-12-14 2018-06-20 Nxp B.V. Network message authentication and verification
EP3339080A1 (en) * 2016-12-23 2018-06-27 Samsung Electronics Co., Ltd. Vehicle and method for controlling thereof
CN108536118A (zh) * 2017-03-01 2018-09-14 福特全球技术公司 半离线环境中的端对端车辆安全ecu解锁
CN108023876A (zh) * 2017-11-20 2018-05-11 西安电子科技大学 基于可持续性集成学习的入侵检测方法及入侵检测系统
CN108494725A (zh) * 2018-01-30 2018-09-04 惠州市德赛西威汽车电子股份有限公司 一种车载can总线报文的加密通信方法
CN109274566A (zh) * 2018-08-28 2019-01-25 开沃新能源汽车集团有限公司 一种基于网关实现不同can波特率的数据通信完成eps跟vcu的数据交互的方法
CN109830002A (zh) * 2019-01-23 2019-05-31 征辕科技(宁波)有限公司 行车事件数据记录方法、装置及事件数据记录器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于CAN-FD总线的车载网络安全通信;罗峰 等;《同济大学学报(自然科学版)》;20190331;第47卷(第3期);第386-391页 *
汽车信息安全文献综述;马超 等;《装备维修技术》;20190228(第2期);第25-28页 *

Also Published As

Publication number Publication date
CN110377002A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
CN110377002B (zh) 一种自适应的车内can总线安全控制方法及系统
Schweppe et al. Car2x communication: securing the last meter-a cost-effective approach for ensuring trust in car2x applications using in-vehicle symmetric cryptography
Wei et al. A privacy-preserving fog computing framework for vehicular crowdsensing networks
CN101262333B (zh) 一种车辆网络中节点间的安全通信方法
Ali et al. ECCHSC: Computationally and bandwidth efficient ECC-based hybrid signcryption protocol for secure heterogeneous vehicle-to-infrastructure communications
CN109033862A (zh) 一种分布式车载电子系统信息安全防护方法
Püllen et al. Using implicit certification to efficiently establish authenticated group keys for in-vehicle networks
Gu et al. Multi-fogs-based traceable privacy-preserving scheme for vehicular identity in Internet of Vehicles
CN110868294A (zh) 一种密钥更新方法、装置及设备
Choudhary et al. Secured SDN based blockchain: an architecture to improve the security of VANET
Geng et al. A software defined networking-oriented security scheme for vehicle networks
Wang et al. A novel anonymous authentication scheme based on edge computing in internet of vehicles
Wang et al. An information security protocol for automotive ethernet
Jyothi et al. Optimized neural network model for attack detection in LTE network
Cui et al. A multilevel electronic control unit re-encryption scheme for autonomous vehicles
Zhu et al. Secure and lightweight conditional privacy-preserving identity authentication scheme for VANET
Mbarek et al. A secure authentication mechanism for resource constrained devices
Liu et al. Secure data aggregation aided by privacy preserving in Internet of Things
Fazzat et al. A comparative performance study of cryptographic algorithms for connected vehicles
Olivier et al. Hashing-based authentication for CAN bus and application to Denial-of-Service protection
Sun et al. MTDCAP: Moving target defense-based CAN authentication protocol
CN102209066B (zh) 网络认证的方法和设备
Xiao et al. Attribute identification based IoT fog data security control and forwarding
CN111245613B (zh) 一种基于身份的车内外网络三级密钥协商方法
Shen et al. A two-layer dynamic ECU group management scheme for in-vehicle CAN bus

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