CN113395296B - 基于fpga的车载网络入侵检测系统及消息位时采集方法 - Google Patents
基于fpga的车载网络入侵检测系统及消息位时采集方法 Download PDFInfo
- Publication number
- CN113395296B CN113395296B CN202110946014.2A CN202110946014A CN113395296B CN 113395296 B CN113395296 B CN 113395296B CN 202110946014 A CN202110946014 A CN 202110946014A CN 113395296 B CN113395296 B CN 113395296B
- Authority
- CN
- China
- Prior art keywords
- unit
- data
- electronic control
- time
- control unit
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 110
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000004891 communication Methods 0.000 claims abstract description 48
- 238000005070 sampling Methods 0.000 claims abstract description 9
- 239000000284 extract Substances 0.000 claims abstract description 4
- 238000011897 real-time detection Methods 0.000 claims description 49
- 238000000605 extraction Methods 0.000 claims description 34
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000007477 logistic regression Methods 0.000 claims description 19
- 238000010276 construction Methods 0.000 claims description 17
- 238000007405 data analysis Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 9
- 230000000737 periodic effect Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000012360 testing method Methods 0.000 claims description 7
- 230000001133 acceleration Effects 0.000 claims description 6
- 238000002790 cross-validation Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 230000010363 phase shift Effects 0.000 description 8
- 230000005611 electricity Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种基于FPGA的车载网络入侵检测系统及消息位时采集方法,包括:步骤1,通过数据采集模块对汽车与CAN总线通信单元正常通信时CAN总线通信单元传输的数据帧进行采集,数据采集模块对当前数据帧中的正在通信的电子控制单元的ID进行提取并计算位时间;步骤2,数据采集模块将获取的当前通信的电子控制单元的ID和位时间输入计算机中并存储;步骤3,重复执行步骤1至步骤2,直到数据采集时间达到设定的阈值时执行步骤4。本发明通过基于FPGA部署入侵检测系统进行采集与检测,数据采集延迟时间小,数据采样率和数据采样精度高,对于汽车总线上伪装攻击的检测更准确、更快速。
Description
技术领域
本发明涉及汽车网络通信技术领域,特别涉及一种基于FPGA的车载网络入侵检测系统及消息位时采集方法。
背景技术
随着先进传感器、智能驾驶和车联网技术的不断发展和应用,汽车朝着智能化、网联化方向不断演变,车载电子系统也越来越复杂,车内外环境感知与交互也逐渐增加,打破了传统汽车的闭环系统,同时也带来了信息安全威胁,为攻击者入侵车辆、俘获电子控制单元(ECU)和破坏汽车的正常驾驶提供了可能。
CAN总线是当今应用最广泛的车载通信协议,由于它最初的设计考虑是汽车在一个孤立的环境中工作,没有考虑信息安全问题,CAN采用广播通信,无认证机制,攻击者一旦侵入车载网络,就可以伪装成合法ECU,注入恶意帧来控制车辆驾驶行为,威胁驾驶员的人身安全。由于CAN报文DATA字段长度限制,以及车载系统时效性和成本的约束,基于现有汽车电子系统实现加解密和认证协议具有一定的难度。入侵检测系统由于实现简单,在车载网络安全上具有一定的实用性。
FPGA作为一种硬件可重构的体系结构,具有硬件逻辑可编程特性,可以方便灵活的集成多种总线控制器接口模块,实现高效的信息交互。利用FPGA将各类总线控制器设计成IP核组件,与嵌入式处理器软核互连,可以灵活快捷地实现不同需求的新一代高性能车用网关,并且可以实现多核网关系统,有效提升网关处理性能与可靠性。因此,本发明采用FPGA技术实现车载网络消息的位时采集,并依此实现伪装攻击检测。
发明内容
本发明提供了一种基于FPGA的车载网络入侵检测系统及消息位时采集方法,其目的是为了解决CAN总线容易受到伪装攻击,驾驶员的人身安全存在威胁的问题。
为了达到上述目的,本发明的实施例提供了一种基于FPGA的车载网络入侵检测系统,包括:
数据采集模块,所述数据采集模块的第一端与CAN总线通信单元电连接,所述数据采集模块部署在FPGA上,所述CAN总线通信单元包括多个电子控制单元,每个电子控制单元均包括微处理器和CAN接口;
检测模型构建模块,所述检测模型构建模块的第一端与所述数据采集模块的第二端电连接,所述检测模型构建模块中部署有多项逻辑回归模型,所述检测模型构建模块部署在计算机中;
入侵检测执行模块,所述入侵检测执行模块的第一端与所述数据采集模块的第二端电连接,所述入侵检测执行模块的第二端与所述检测模型构建模块的第二端电连接,所述入侵检测执行模块部署在FPGA上。
其中,所述数据采集模块包括:
CAN总线电平转换单元,所述CAN总线电平转换单元的第一端与所述CAN总线通信单元电连接;
加速倍频单元,所述加速倍频单元的第一端与所述CAN总线电平转换单元的第二端电连接;
信号数据采集单元,所述信号数据采集单元的第一端与所述加速倍频单元的第二端电连接;
信号数据解析单元,所述信号数据解析单元的第一端与所述信号数据采集单元的第二端电连接;
位时数据计算单元,所述位时数据计算单元的第一端与所述信号数据解析单元的第二端电连接;
结果传输单元,所述结果传输单元的第一端与所述位时数据计算单元的第二端电连接。
其中,所述检测模型构建模块包括:
第一特征提取单元,所述第一特征提取单元的第一端与所述结果传输单元的第二端电连接;
特征选择单元,所述特征选择单元的第一端与所述第一特征提取单元的第二端电连接;
检测模型构建单元,所述检测模型构建单元的第一端与所述特征选择单元的第二端电连接。
其中,所述入侵检测执行模块包括:
第二特征提取单元,所述第二特征提取单元的第一端与所述结果传输单元的第二端电连接;
实时检测单元,所述实时检测单元的第一端与所述第二特征提取单元的第二端电连接,所述实时检测单元的第二端与所述检测模型构建单元的第二端电连接;
检测输出单元,所述检测输出单元的第一端与所述实时检测单元的第三端电连接。
本发明的实施例还提供了一种基于FPGA的车载网络入侵检测系统的消息位时采集方法,包括:
步骤1,通过数据采集模块对汽车与CAN总线通信单元正常通信时CAN总线通信单元传输的数据帧进行采集,数据采集模块对当前数据帧中的正在通信的电子控制单元的ID进行提取并计算位时间;
步骤2,数据采集模块将获取的当前通信的电子控制单元的ID和位时间输入计算机中并存储;
步骤3,重复执行步骤1至步骤2,直到数据采集时间达到设定的阈值时执行步骤4;
步骤4,检测模型构建模块将位时存储文档中的所有位时数据作为位时数据样本并进行特征处理,得到第一特征数据,根据第一特征数据对多项逻辑回归模型进行训练,得到入侵检测模型,将入侵检测模型写入入侵检测执行模块的实时检测单元;
步骤5,实际汽车正常通信时,通过数据采集模块采集CAN总线通信单元传输的数据帧并实时计算出当前通信的电子控制单元的ID和位时间;
步骤6,将实时获取的当前通信的电子控制单元的ID和位时间输入入侵检测执行模块,入侵检测执行模块对位时数据进行特征处理,得到第二特征数据;
步骤7,将第二特征数据输入入侵检测模型进行实时检测,入侵检测模型输出实时检测结果,将实时检测结果与位时存储文档进行匹配,得到匹配情况,检测输出单元根据匹配情况推测出CAN总线通信单元当前输出的数据帧上是否遭受伪装攻击。
其中,所述步骤1具体包括:
步骤11,CAN总线电平转换单元通过高速比较器对CAN总线通信单元传输的宽电压范围周期信号进行整形,将宽电压范围周期信号转换为高低电平电压并将转换后的信号数据传输给FPGA;
步骤12,在FPGA内部通过加速倍频单元对FPGA的采样频率进行倍频;
步骤13,信号数据传输到信号数据采集单元后,信号数据采集单元根据FPGA内部逻辑采用打点式采集模式进行位时数据采集并将采集到的位时数据传输到信号数据解析单元;
步骤131,从数据帧的帧起始位开始采集位时数据,帧结束位停止采集位时数据,其中,每个高低脉冲作为一个数据;
步骤132,通过将数据帧中每一位的计数点个数乘以七判断是否到达帧结束位;
步骤133,计算数据帧中每一位的计数点个数,如下所示:
其中,BC表示数据帧中每一位的计数点个数,CANfreq表示数据帧的频率,PLfreq表示FPGA的PL端的时钟频率;
步骤14,信号数据解析单元将采集的位时数据中的逆转电平进行删除,解析出当前通信的电子控制单元的ID和位时数据并传输到位时数据计算单元;
步骤15,位时数据计算单元根据解析出的位时数据初步估计高脉冲和低脉冲对应的位数,并通过以下公式计算出位时间,如下所示:
其中,BT表示位时间,val表示FPGA的PL端读出的计数点个数值;
步骤16,结果传输单元将计算出的位时间和当前通信的电子控制单元的ID传输到计算机中。
其中,所述步骤2具体包括:
步骤21,计算机接收到结果传输单元传输的计算出的位时间和当前通信的电子控制单元的ID后,判断计算机中的位时存储文档中是否有电子控制单元的ID,当计算机中的位时存储文档中没有电子控制单元的ID时,在位时存储文档中构建以当前通信的电子控制单元的ID命名的表格,并将当前通信的电子控制单元的ID对应的位时间填入当前通信的电子控制单元的ID的表格中;
步骤22,当计算机中的位时存储文档中有电子控制单元的ID时,判断当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID是否一致,当当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID一致时,将当前通信的电子控制单元的ID对应的位时间录入位时存储文档中对应的电子控制单元的ID的表格中;
步骤23,当当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID不一致时,在位时存储文档中构建以当前通信的电子控制单元的ID命名的表格,并将当前通信的电子控制单元的ID对应的位时间填入当前通信的电子控制单元的ID的表格中。
其中,所述步骤4具体包括:
步骤41,通过特征选择单元和第一特征提取单元对位时数据样本进行特征选择与特征提取,将提取出的均值、标准偏差、方差、偏度系数和峰度值作为第一特征数据;
步骤42,根据第一特征数据通过k折交叉验证法构建训练样本集和测试样本集,将电子控制单元的ID作为数据标签;
步骤43,根据训练样本集对多项逻辑回归模型执行迭代训练,并保存每轮迭代得到的多项逻辑回归模型;
步骤44,计算每轮迭代得到的多项逻辑回归模型在测试样本集上的精度,将精度最高的多项逻辑回归模型作为入侵检测模型,并将入侵检测模型写入实时检测单元。
其中,所述步骤6具体包括:
步骤61,通过入侵检测执行模块的第二特征提取单元对输入的实时计算出的位时间进行特征提取,将提取出的均值、标准偏差、方差、偏度系数和峰度值作为第二特征数据。
其中,所述步骤7具体包括:
步骤71,将第二特征数据输入入侵检测模型进行实时检测,入侵检测模型输出实时检测结果;
步骤72,判断实时检测结果中的电子控制单元的ID是否与数据采集模块解析出的电子控制单元的ID相匹配;
步骤73,当实时检测结果中的电子控制单元的ID与数据采集模块解析出的电子控制单元的ID相匹配时,检测输出单元输出CAN总线通信单元当前输出的数据帧上未遭受伪装攻击,并将实时检测结果中的电子控制单元的ID对应的位时间存入位时存储文档中对应的电子控制单元的ID的表格中;
步骤74,当实时检测结果中的电子控制单元的ID与数据采集模块解析出的电子控制单元的ID不匹配时,给出非法警告,检测输出单元输出CAN总线通信单元当前输出的数据帧上遭受伪装攻击。
本发明的上述方案有如下的有益效果:
本发明的上述实施例所述的基于FPGA的车载网络入侵检测系统及消息位时采集方法,数据采集延迟时间小,通过加速倍频单元对FPGA的频率进行倍频,提高了采样率和采样精度,能够更准确、快速地识别汽车总线上伪装攻击,达到实时检测的目的,驾驶人员的人身安全得到保障,增强了车载网络的安全性,兼顾了车载网络特点和实际约束。
附图说明
图1为本发明的流程图;
图2为本发明的结构框图;
图3为本发明的具体结构框图;
图4为本发明的锁相环移相倍频示意图。
【附图标记说明】
1-CAN总线通信单元;2-数据采集模块;3-检测模型构建模块;4-入侵检测执行模块;5-CAN总线电平转换单元;6-加速倍频单元;7-信号数据采集单元;8-信号数据解析单元;9-位时数据计算单元;10-结果传输单元;11-第一特征提取单元;12-特征选择单元;13-检测模型构建单元;14-第二特征提取单元;15-实时检测单元;16-检测输出单元。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的CAN总线容易受到伪装攻击,驾驶员的人身安全存在威胁的问题,提供了一种基于FPGA的车载网络入侵检测系统及消息位时采集方法。
如图1至图4所示,本发明的实施例提供了一种基于FPGA的车载网络入侵检测系统,包括:数据采集模块2,所述数据采集模块2的第一端与CAN总线通信单元1电连接,所述数据采集模块2部署在FPGA上,所述CAN总线通信单元1包括多个电子控制单元,每个电子控制单元均包括微处理器和CAN接口;检测模型构建模块3,所述检测模型构建模块3的第一端与所述数据采集模块2的第二端电连接,所述检测模型构建模块3中部署有多项逻辑回归模型,所述检测模型构建模块3部署在计算机中;入侵检测执行模块4,所述入侵检测执行模块4的第一端与所述数据采集模块2的第二端电连接,所述入侵检测执行模块4的第二端与所述检测模型构建模块3的第二端电连接,所述入侵检测执行模块4部署在FPGA上。
其中,所述数据采集模块2包括:CAN总线电平转换单元5,所述CAN总线电平转换单元5的第一端与所述CAN总线通信单元1电连接;加速倍频单元6,所述加速倍频单元6的第一端与所述CAN总线电平转换单元5的第二端电连接;信号数据采集单元7,所述信号数据采集单元7的第一端与所述加速倍频单元6的第二端电连接;信号数据解析单元8,所述信号数据解析单元8的第一端与所述信号数据采集单元7的第二端电连接;位时数据计算单元9,所述位时数据计算单元9的第一端与所述信号数据解析单元8的第二端电连接;结果传输单元10,所述结果传输单元10的第一端与所述位时数据计算单元9的第二端电连接。
其中,所述检测模型构建模块3包括:第一特征提取单元11,所述第一特征提取单元11的第一端与所述结果传输单元10的第二端电连接;特征选择单元12,所述特征选择单元12的第一端与所述第一特征提取单元11的第二端电连接;检测模型构建单元13,所述检测模型构建单元13的第一端与所述特征选择单元12的第二端电连接。
其中,所述入侵检测执行模块4包括:第二特征提取单元14,所述第二特征提取单元14的第一端与所述结果传输单元10的第二端电连接;实时检测单元15,所述实时检测单元15的第一端与所述第二特征提取单元14的第二端电连接,所述实时检测单元15的第二端与所述检测模型构建单元13的第二端电连接;检测输出单元16,所述检测输出单元16的第一端与所述实时检测单元15的第三端电连接。
本发明的实施例还提供了一种基于FPGA的车载网络入侵检测系统的消息位时采集方法,包括:步骤1,通过数据采集模块对汽车与CAN总线通信单元正常通信时CAN总线通信单元传输的数据帧进行采集,数据采集模块对当前数据帧中的正在通信的电子控制单元的ID进行提取并计算位时间;步骤2,数据采集模块将获取的当前通信的电子控制单元的ID和位时间输入计算机中并存储;步骤3,重复执行步骤1至步骤2,直到数据采集时间达到设定的阈值时执行步骤4;步骤4,检测模型构建模块将位时存储文档中的所有位时数据作为位时数据样本并进行特征处理,得到第一特征数据,根据第一特征数据对多项逻辑回归模型进行训练,得到入侵检测模型,将入侵检测模型写入入侵检测执行模块的实时检测单元;步骤5,实际汽车正常通信时,通过数据采集模块采集CAN总线通信单元传输的数据帧并实时计算出当前通信的电子控制单元的ID和位时间;步骤6,将实时获取的当前通信的电子控制单元的ID和位时间输入入侵检测执行模块,入侵检测执行模块对位时数据进行特征处理,得到第二特征数据;步骤7,将第二特征数据输入入侵检测模型进行实时检测,入侵检测模型输出实时检测结果,将实时检测结果与位时存储文档进行匹配,得到匹配情况,检测输出单元根据匹配情况推测出CAN总线通信单元当前输出的数据帧上是否遭受伪装攻击。
其中,所述步骤1具体包括:步骤11,CAN总线电平转换单元通过高速比较器对CAN总线通信单元传输的宽电压范围周期信号进行整形,将宽电压范围周期信号转换为高低电平电压并将转换后的信号数据传输给FPGA;步骤12,在FPGA内部通过加速倍频单元对FPGA的采样频率进行倍频;步骤13,信号数据传输到信号数据采集单元后,信号数据采集单元根据FPGA内部逻辑采用打点式采集模式进行位时数据采集并将采集到的位时数据传输到信号数据解析单元;步骤131,从数据帧的帧起始位开始采集位时数据,帧结束位停止采集位时数据,其中,每个高低脉冲作为一个数据;步骤132,通过将数据帧中每一位的计数点个数乘以七判断是否到达帧结束位;步骤133,计算数据帧中每一位的计数点个数,如下所示:
其中,BC表示数据帧中每一位的计数点个数,CANfreq表示数据帧的频率,PLfreq表示FPGA的PL端的时钟频率;
步骤14,信号数据解析单元将采集的位时数据中的逆转电平进行删除,解析出当前通信的电子控制单元的ID和位时数据并传输到位时数据计算单元;
步骤15,位时数据计算单元根据解析出的位时数据初步估计高脉冲和低脉冲对应的位数,并通过以下公式计算出位时间,如下所示:
其中,BT表示位时间,val表示FPGA的PL端读出的计数点个数值;
步骤16,结果传输单元将计算出的位时间和当前通信的电子控制单元的ID传输到计算机中。
其中,所述步骤2具体包括:步骤21,计算机接收到结果传输单元传输的计算出的位时间和当前通信的电子控制单元的ID后,判断计算机中的位时存储文档中是否有电子控制单元的ID,当计算机中的位时存储文档中没有电子控制单元的ID时,在位时存储文档中构建以当前通信的电子控制单元的ID命名的表格,并将当前通信的电子控制单元的ID对应的位时间填入当前通信的电子控制单元的ID的表格中;步骤22,当计算机中的位时存储文档中有电子控制单元的ID时,判断当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID是否一致,当当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID一致时,将当前通信的电子控制单元的ID对应的位时间录入位时存储文档中对应的电子控制单元的ID的表格中;步骤23,当当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID不一致时,在位时存储文档中构建以当前通信的电子控制单元的ID命名的表格,并将当前通信的电子控制单元的ID对应的位时间填入当前通信的电子控制单元的ID的表格中。
其中,所述步骤4具体包括:步骤41,通过特征选择单元和第一特征提取单元对位时数据样本进行特征选择与特征提取,将提取出的均值、标准偏差、方差、偏度系数和峰度值作为第一特征数据;步骤42,根据第一特征数据通过k折交叉验证法构建训练样本集和测试样本集,将电子控制单元的ID作为数据标签;步骤43,根据训练样本集对多项逻辑回归模型执行迭代训练,并保存每轮迭代得到的多项逻辑回归模型;步骤44,计算每轮迭代得到的多项逻辑回归模型在测试样本集上的精度,将精度最高的多项逻辑回归模型作为入侵检测模型,并将入侵检测模型写入实时检测单元。
其中,所述步骤6具体包括:步骤61,通过入侵检测执行模块的第二特征提取单元对输入的实时计算出的位时间进行特征提取,将提取出的均值、标准偏差、方差、偏度系数和峰度值作为第二特征数据。
其中,所述步骤7具体包括:步骤71,将第二特征数据输入入侵检测模型进行实时检测,入侵检测模型输出实时检测结果;步骤72,判断实时检测结果中的电子控制单元的ID是否与数据采集模块解析出的电子控制单元的ID相匹配;步骤73,当实时检测结果中的电子控制单元的ID与数据采集模块解析出的电子控制单元的ID相匹配时,检测输出单元输出CAN总线通信单元当前输出的数据帧上未遭受伪装攻击,并将实时检测结果中的电子控制单元的ID对应的位时间存入位时存储文档中对应的电子控制单元的ID的表格中;步骤74,当实时检测结果中的电子控制单元的ID与数据采集模块解析出的电子控制单元的ID不匹配时,给出非法警告,检测输出单元输出CAN总线通信单元当前输出的数据帧上遭受伪装攻击。
本发明的上述实施例所述的基于FPGA的车载网络入侵检测系统及方法,在所述CAN总线电平转换单元5中利用高速比较器将所述CAN总线通信单元1的数据帧中传输的宽电压范围周期信号进行整形,使其转换成FPGA能够识别的高低电平电压;在所述加速倍频单元6利用FPGA内部的锁相环对FPGA的频率进行倍频,使得所述基于FPGA的车载网络入侵检测系统仅仅需要使用较低的工作频率就能够实现等效1G频率的高频;在所述信号数据采集单元7利用打点式的采集模式进行数据采集;所述信号数据解析单元8在静默模式下识别正在通信的电子控制单元的ID;在所述第一特征提取单元11和所述第二特征提取单元14中分别提取位时数据显性位和隐性位统计特征;所述检测模型构建单元13中的多项逻辑回归模型使用权重衰减方法避免模型过拟合,应用梯度下降法求解。
本发明的上述实施例所述的基于FPGA的车载网络入侵检测系统及消息位时采集方法,如图4将FPGA的PL端时钟频率设置成125M,在所述加速倍频单元6利用FPGA内部的锁相环八倍频将FPGA的PL端时钟频率扩大为1G,设计锁相环八倍频:首先设计八个频率为125M的测试信号,分别为不移相信号、1/8移相信号、2/8移相信号、3/8移相信号、4/8移相信号、5/8移相信号、6/8移相信号和7/8移相信号,当待测信号为高脉冲时,只需要累加这八个信号中检测到高电平的个数后取平均值就得出其对应计数点个数;当待测信号为低脉冲时,只需要累加这八个信号中检测到低电平的个数后取平均值就得出其对应计数点个数。
本发明的上述实施例所述的基于FPGA的车载网络入侵检测系统及消息位时采集方法,增强了车载网络的安全性,兼顾了车载网络特点和实际约束,能够更准确、快速地识别汽车总线上伪装攻击,达到实时检测的目的,数据采集延迟时间小,通过加速倍频单元对FPGA的频率进行倍频,提高了采样率和采样精度,对汽车总线的入侵检测更准确、更快速,驾驶人员的人身安全得到保障。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (5)
1.一种基于FPGA的车载网络入侵检测系统的消息位时采集方法,其特征在于,包括基于FPGA的车载网络入侵检测系统,所述系统包括:
数据采集模块,所述数据采集模块的第一端与CAN总线通信单元电连接,所述数据采集模块部署在FPGA上,所述CAN总线通信单元包括多个电子控制单元,每个电子控制单元均包括微处理器和CAN接口;
检测模型构建模块,所述检测模型构建模块的第一端与所述数据采集模块的第二端电连接,所述检测模型构建模块中部署有多项逻辑回归模型,所述检测模型构建模块部署在计算机中;
入侵检测执行模块,所述入侵检测执行模块的第一端与所述数据采集模块的第二端电连接,所述入侵检测执行模块的第二端与所述检测模型构建模块的第二端电连接,所述入侵检测执行模块部署在FPGA上;
所述数据采集模块包括:
CAN总线电平转换单元,所述CAN总线电平转换单元的第一端与所述CAN总线通信单元电连接;
加速倍频单元,所述加速倍频单元的第一端与所述CAN总线电平转换单元的第二端电连接;
信号数据采集单元,所述信号数据采集单元的第一端与所述加速倍频单元的第二端电连接;
信号数据解析单元,所述信号数据解析单元的第一端与所述信号数据采集单元的第二端电连接;
位时数据计算单元,所述位时数据计算单元的第一端与所述信号数据解析单元的第二端电连接;
结果传输单元,所述结果传输单元的第一端与所述位时数据计算单元的第二端电连接;
所述检测模型构建模块包括:
第一特征提取单元,所述第一特征提取单元的第一端与所述结果传输单元的第二端电连接;
特征选择单元,所述特征选择单元的第一端与所述第一特征提取单元的第二端电连接;
检测模型构建单元,所述检测模型构建单元的第一端与所述特征选择单元的第二端电连接;
所述入侵检测执行模块包括:
第二特征提取单元,所述第二特征提取单元的第一端与所述结果传输单元的第二端电连接;
实时检测单元,所述实时检测单元的第一端与所述第二特征提取单元的第二端电连接,所述实时检测单元的第二端与所述检测模型构建单元的第二端电连接;
检测输出单元,所述检测输出单元的第一端与所述实时检测单元的第三端电连接;
所述基于FPGA的车载网络入侵检测系统的消息位时采集方法,包括:
步骤1,通过数据采集模块对汽车与CAN总线通信单元正常通信时CAN总线通信单元传输的数据帧进行采集,数据采集模块对当前数据帧中的正在通信的电子控制单元的ID进行提取并计算位时间;
步骤2,数据采集模块将获取的当前通信的电子控制单元的ID和位时间输入计算机中并存储;
步骤3,重复执行步骤1至步骤2,直到数据采集时间达到设定的阈值时执行步骤4;
步骤4,检测模型构建模块将位时存储文档中的所有位时数据作为位时数据样本并进行特征处理,得到第一特征数据,根据第一特征数据对多项逻辑回归模型进行训练,得到入侵检测模型,将入侵检测模型写入入侵检测执行模块的实时检测单元;
步骤5,实际汽车正常通信时,通过数据采集模块采集CAN总线通信单元传输的数据帧并实时计算出当前通信的电子控制单元的ID和位时间;
步骤6,将实时获取的当前通信的电子控制单元的ID和位时间输入入侵检测执行模块,入侵检测执行模块对位时数据进行特征处理,得到第二特征数据;
步骤7,将第二特征数据输入入侵检测模型进行实时检测,入侵检测模型输出实时检测结果,将实时检测结果与位时存储文档进行匹配,得到匹配情况,检测输出单元根据匹配情况推测出CAN总线通信单元当前输出的数据帧上是否遭受伪装攻击;
所述步骤1具体包括:
步骤11,CAN总线电平转换单元通过高速比较器对CAN总线通信单元传输的宽电压范围周期信号进行整形,将宽电压范围周期信号转换为高低电平电压并将转换后的信号数据传输给FPGA;
步骤12,在FPGA内部通过加速倍频单元对FPGA的采样频率进行倍频;
步骤13,信号数据传输到信号数据采集单元后,信号数据采集单元根据FPGA内部逻辑采用打点式采集模式进行位时数据采集并将采集到的位时数据传输到信号数据解析单元;
步骤131,从数据帧的帧起始位开始采集位时数据,帧结束位停止采集位时数据,其中,每个高低脉冲作为一个数据;
步骤132,通过将数据帧中每一位的计数点个数乘以七判断是否到达帧结束位;
步骤133,计算数据帧中每一位的计数点个数,如下所示:
其中,BC表示数据帧中每一位的计数点个数,CANfreq表示数据帧的频率,PLfreq表示FPGA的PL端的时钟频率;
步骤14,信号数据解析单元将采集的位时数据中的逆转电平进行删除,解析出当前通信的电子控制单元的ID和位时数据并传输到位时数据计算单元;
步骤15,位时数据计算单元根据解析出的位时数据初步估计高脉冲和低脉冲对应的位数,并通过以下公式计算出位时间,如下所示:
其中,BT表示位时间,val表示FPGA的PL端读出的计数点个数值;
步骤16,结果传输单元将计算出的位时间和当前通信的电子控制单元的ID传输到计算机中。
2.根据权利要求1所述的基于FPGA的车载网络入侵检测系统的消息位时采集方法,其特征在于,所述步骤2具体包括:
步骤21,计算机接收到结果传输单元传输的计算出的位时间和当前通信的电子控制单元的ID后,判断计算机中的位时存储文档中是否有电子控制单元的ID,当计算机中的位时存储文档中没有电子控制单元的ID时,在位时存储文档中构建以当前通信的电子控制单元的ID命名的表格,并将当前通信的电子控制单元的ID对应的位时间填入当前通信的电子控制单元的ID的表格中;
步骤22,当计算机中的位时存储文档中有电子控制单元的ID时,判断当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID是否一致,当当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID一致时,将当前通信的电子控制单元的ID对应的位时间录入位时存储文档中对应的电子控制单元的ID的表格中;
步骤23,当当前通信的电子控制单元的ID与位时存储文档中的电子控制单元的ID不一致时,在位时存储文档中构建以当前通信的电子控制单元的ID命名的表格,并将当前通信的电子控制单元的ID对应的位时间填入当前通信的电子控制单元的ID的表格中。
3.根据权利要求2所述的基于FPGA的车载网络入侵检测系统的消息位时采集方法,其特征在于,所述步骤4具体包括:
步骤41,通过特征选择单元和第一特征提取单元对位时数据样本进行特征选择与特征提取,将提取出的均值、标准偏差、方差、偏度系数和峰度值作为第一特征数据;
步骤42,根据第一特征数据通过k折交叉验证法构建训练样本集和测试样本集,将电子控制单元的ID作为数据标签;
步骤43,根据训练样本集对多项逻辑回归模型执行迭代训练,并保存每轮迭代得到的多项逻辑回归模型;
步骤44,计算每轮迭代得到的多项逻辑回归模型在测试样本集上的精度,将精度最高的多项逻辑回归模型作为入侵检测模型,并将入侵检测模型写入实时检测单元。
4.根据权利要求3所述的基于FPGA的车载网络入侵检测系统的消息位时采集方法,其特征在于,所述步骤6具体包括:
步骤61,通过入侵检测执行模块的第二特征提取单元对输入的实时计算出的位时间进行特征提取,将提取出的均值、标准偏差、方差、偏度系数和峰度值作为第二特征数据。
5.根据权利要求4所述的基于FPGA的车载网络入侵检测系统的消息位时采集方法,其特征在于,所述步骤7具体包括:
步骤71,将第二特征数据输入入侵检测模型进行实时检测,入侵检测模型输出实时检测结果;
步骤72,判断实时检测结果中的电子控制单元的ID是否与数据采集模块解析出的电子控制单元的ID相匹配;
步骤73,当实时检测结果中的电子控制单元的ID与数据采集模块解析出的电子控制单元的ID相匹配时,检测输出单元输出CAN总线通信单元当前输出的数据帧上未遭受伪装攻击,并将实时检测结果中的电子控制单元的ID对应的位时间存入位时存储文档中对应的电子控制单元的ID的表格中;
步骤74,当实时检测结果中的电子控制单元的ID与数据采集模块解析出的电子控制单元的ID不匹配时,给出非法警告,检测输出单元输出CAN总线通信单元当前输出的数据帧上遭受伪装攻击。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110946014.2A CN113395296B (zh) | 2021-08-18 | 2021-08-18 | 基于fpga的车载网络入侵检测系统及消息位时采集方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110946014.2A CN113395296B (zh) | 2021-08-18 | 2021-08-18 | 基于fpga的车载网络入侵检测系统及消息位时采集方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113395296A CN113395296A (zh) | 2021-09-14 |
CN113395296B true CN113395296B (zh) | 2021-11-05 |
Family
ID=77622753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110946014.2A Active CN113395296B (zh) | 2021-08-18 | 2021-08-18 | 基于fpga的车载网络入侵检测系统及消息位时采集方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113395296B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114697135B (zh) * | 2022-05-07 | 2023-04-25 | 湖南大学 | 一种汽车控制器区域网络入侵检测方法、系统及汽车 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN206039227U (zh) * | 2016-09-19 | 2017-03-22 | 南京恩瑞特实业有限公司 | 船用导航雷达低成本集成伺服系统 |
CN110636048A (zh) * | 2019-08-27 | 2019-12-31 | 华东师范大学 | 一种基于ecu信号特征标识符的车载入侵检测方法及系统 |
CN111131185A (zh) * | 2019-12-06 | 2020-05-08 | 中国电子科技网络信息安全有限公司 | 基于机器学习的can总线网络异常检测方法及装置 |
CN111866017A (zh) * | 2020-07-29 | 2020-10-30 | 北京天融信网络安全技术有限公司 | 一种can总线帧间隔异常的检测方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10083071B2 (en) * | 2014-12-30 | 2018-09-25 | Battelle Memorial Institute | Temporal anomaly detection on automotive networks |
-
2021
- 2021-08-18 CN CN202110946014.2A patent/CN113395296B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN206039227U (zh) * | 2016-09-19 | 2017-03-22 | 南京恩瑞特实业有限公司 | 船用导航雷达低成本集成伺服系统 |
CN110636048A (zh) * | 2019-08-27 | 2019-12-31 | 华东师范大学 | 一种基于ecu信号特征标识符的车载入侵检测方法及系统 |
CN111131185A (zh) * | 2019-12-06 | 2020-05-08 | 中国电子科技网络信息安全有限公司 | 基于机器学习的can总线网络异常检测方法及装置 |
CN111866017A (zh) * | 2020-07-29 | 2020-10-30 | 北京天融信网络安全技术有限公司 | 一种can总线帧间隔异常的检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113395296A (zh) | 2021-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Seo et al. | GIDS: GAN based intrusion detection system for in-vehicle network | |
Young et al. | Survey of automotive controller area network intrusion detection systems | |
CN110149345B (zh) | 一种基于报文序列预测的车载网络入侵检测方法 | |
Qin et al. | Application of controller area network (CAN) bus anomaly detection based on time series prediction | |
Zhou et al. | Btmonitor: Bit-time-based intrusion detection and attacker identification in controller area network | |
CN108111510A (zh) | 一种车内网络入侵检测方法及系统 | |
Li et al. | Poster: Intrusion detection system for in-vehicle networks using sensor correlation and integration | |
Katragadda et al. | Detecting low-rate replay-based injection attacks on in-vehicle networks | |
Bozdal et al. | WINDS: A wavelet-based intrusion detection system for controller area network (CAN) | |
CN110324337B (zh) | 一种基于胶囊神经网络的车内网入侵检测方法及系统 | |
CN108390869A (zh) | 集成深度学习的车载智能网关装置及其命令序列检测方法 | |
Suda et al. | Systematic intrusion detection technique for an in-vehicle network based on time-series feature extraction | |
CN112491920A (zh) | 一种车载can总线的异常检测方法及装置 | |
Zhou et al. | Clock-based sender identification and attack detection for automotive CAN network | |
CN113395296B (zh) | 基于fpga的车载网络入侵检测系统及消息位时采集方法 | |
CN109936568B (zh) | 一种基于循环神经网络的防恶意攻击传感器数据采集方法 | |
CN114520736B (zh) | 一种物联网安全检测方法、装置、设备及存储介质 | |
Xun et al. | Side channel analysis: A novel intrusion detection system based on vehicle voltage signals | |
Park et al. | G-idcs: Graph-based intrusion detection and classification system for can protocol | |
Sun et al. | Analysis of ID sequences similarity using DTW in intrusion detection for CAN bus | |
Tayyab et al. | Spoofing attack on clock based intrusion detection system in controller area networks | |
Zhou et al. | A model-based method for enabling source mapping and intrusion detection on proprietary can bus | |
Wei et al. | OFIDS: online learning-enabled and fingerprint-based intrusion detection system in controller area networks | |
CN117955704A (zh) | 基于注意力的CNN-BiLSTM算法的车联网入侵检测方法及系统 | |
Boumiza et al. | An efficient hidden Markov model for anomaly detection in can bus networks |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240904 Address after: Room 1101, 11th Floor, Building 24, Lane 333, Wensong Road, Songjiang District, Shanghai, 201616 Patentee after: Shanghai Wangju Information Technology Co.,Ltd. Country or region after: China Address before: 410081 No. 36, Mount Lu, Changsha, Hunan, Yuelu District Patentee before: HUNAN NORMAL University Country or region before: China |