用于检测CAN总线中的攻击的方法和装置制造方法及图纸

技术编号:35981079 阅读:14 留言:0更新日期:2022-12-17 22:51
一种通过处理器执行的用于CAN的入侵检测方法可以包括:从CAN中按出现的顺序收集CAN ID;从收集到的CAN ID生成预定数量L个CAN ID的序列,L为大于或等于1的整数;以及将该序列输入到双向GPT2网络中并且计算与该序列对应的损失函数的值,其中,当允许的CAN ID的数量为K时,将序列中允许的CAN ID按大小排序并且转换为0到K

【技术实现步骤摘要】
用于检测CAN总线中的攻击的方法和装置
[0001]相关申请的交叉引用
[0002]本申请要求于2021年6月16日提交至韩国知识产权局(KIPO)的韩国专利申请第10

2021

0078080号以及2022年5月23日提交KIPO的韩国申请第10

2022

0062705号的优先权,其整体内容通过引用并入本文。


[0003]本公开涉及车载网络中的入侵检测方法及装置,尤其涉及一种通过使用生成预训练变换器2(GPT2)深度学习网络对控制器局域网(CAN)总线进行入侵检测的方法及装置。

技术介绍

[0004]控制器局域网(CAN)总线协议已被引入以通过使用单个公共总线来支持车辆中的各种控制器之间的通信。但是,由于它的设计没有考虑安全性,因此面临各种攻击的威胁。由于连接到CAN总线的控制器在车辆正常操作状况下传送时段性和非时段性信号,因此如果通过按出现顺序收集CAN信号的标识符(ID)来配置CAN ID的序列,则该序列将具有特定的模式。因此,当学习正常操作状况下的CAN ID序列的模式时,可以检测由于攻击的出现而导致的CAN ID序列的模式的变化。然而,当检测目标CAN ID序列中仅包括极少数的攻击ID时,可能很难检测到相应的模式变化。因此,为了检测对CAN总线的攻击,需要不同于现有检测技术的检测技术。

技术实现思路

[0005]因此,本公开的示例性实施方式旨在提供通过使用GPT2深度学习网络对CAN总线进行入侵检测的方法和装置。
[0006]根据本专利技术的第一示例性实施方式,一种通过处理器执行的用于CAN的入侵检测方法可以包括:按出现顺序从CAN收集CAN ID;从收集到的CAN ID生成预定数量L个CAN ID的序列,L为大于或等于1的整数;以及将序列输入到双向GPT2网络并且计算与序列对应的损失函数的值,其中,当允许的CAN ID的数量为K时,将序列中的允许的CAN ID按大小排序并且转换为0到K

1的值,将序列中的不允许的CAN ID转换为K,将序列输入到双向GPT2网络,并且K为等于或大于1的整数。
[0007]双向GPT2网络可以包括前向GPT模块、后向GPT模块和全连接层。
[0008]在计算损失函数的值时,可以将序列按原序输入到前向GPT模块,并且可以将序列按逆序输入到后向GPT模块。
[0009]在计算损失函数的值时,可以将与属于序列的从第0个CAN ID至第L

2个CAN ID的CAN ID对应的嵌入向量输入到前向GPT模块,并且前向GPT模块可以输出具有与嵌入向量相同维度的E维向量,其对应于第1个至第(L

1)个CAN ID。
[0010]在计算损失函数的值时,可以将与属于序列的从第(L

1)个CAN ID至第1个CAN ID的CAN ID对应的嵌入向量输入到后向GPT模块,并且后向GPT模块可以输出具有与嵌入向量
相同维度的E维向量,其对应于第(L

2)个至第0个CAN ID。
[0011]在计算损失函数的值时,可以将前向GPT模块的输出和后向GPT模块的输出级联以生成2E
×
L矩阵,2E
×
L矩阵可以通过全连接层转换为(K+1)
×
L矩阵,并且(K+1)
×
L矩阵可以通过softmax层变换为概率矩阵。
[0012]损失函数可以被定义为前向GPT模块、后向GPT模块和全连接层可以被训练以使损失函数的值最小,是用于训练的第n个正常CAN ID序列的第l个变量,并且是针对实际生成的CAN ID,其为真实值。
[0013]入侵检测方法还可以包括:将损失函数的值与阈值进行比较;以及当损失函数的值等于或大于阈值时,将与序列对应的时段确定为存在入侵的时段,其中损失函数可以被定义为定义为是与检测目标序列对应的第m个CANID序列的第l个变量,并且是针对实际生成的CAN ID,其为真实值。
[0014]根据本专利技术的第二示例性实施方式,一种用于CAN的入侵检测装置可以包括:处理器;存储器,存储一个或更多个可由处理器执行的指令,以及收发器,连接到CAN的总线以执行通信,其中当由处理器执行时,一个或更多个指令使入侵检测装置:按照出现的顺序从CAN收集CAN ID;从收集到的CAN ID生成预定数量L个CAN ID的序列,L为大于或等于1的整数;以及将序列输入到双向GPT2网络并且计算与序列对应的损失函数的值,其中当允许的CAN ID的数量为K时,将序列中的允许的CAN ID按大小排序并且转换为0到K

1的值,将序列中的不允许的CAN ID转换为K,将序列输入到双向GPT2网络,并且K为等于或大于1的整数。
[0015]双向GPT2网络可以包括前向GPT模块、后向GPT模块和全连接层。
[0016]在计算损失函数的值时,可以将序列按原序输入到前向GPT模块,并且可以将序列按逆序输入到后向GPT模块。
[0017]在计算损失函数的值时,可以将与属于序列的从第0个CAN ID至第L

2个CAN ID的CAN ID对应的嵌入向量输入到前向GPT模块,并且前向GPT模块可以输出具有与嵌入向量相同维度的E维向量,其对应于第1个至第(L

1)个CAN ID。
[0018]在计算损失函数的值时,可以将与属于序列的从第(L

1)个CAN ID至第1个CAN ID的CAN ID对应的嵌入向量输入到后向GPT模块,并且后向GPT模块可以输出具有与嵌入向量相同维度的E维向量,其对应于第(L

2)个至第0个CAN ID。
[0019]在计算损失函数的值时,可以将前向GPT模块的输出和后向GPT模块的输出级联以生成2E
×
L矩阵,2E
×
L矩阵可以通过全连接层转换为(K+1)
×
L矩阵,并且(K+1)
×
L矩阵可以通过softmax层变换为概率矩阵。
[0020]损失函数可以被定义为
前向GPT模块、后向GPT模块和全连接层可以被训练以使损失函数的值最小,是用于训练的第n个正常CAN ID序列的第l个变量,并且是针对实际生成的CAN ID,其为真实值。
[0021]一个或更多个指令还可以使入侵检测装置:将损失函数的值与阈值进行比较;以及当损失函数的值等于或大于阈值时,将与序列对应的时段确定为存在入侵的时段,其中损失函数可以被定义为损失函数可以被定义为是与检测目标序列对应的第m个CAN ID序列的第l个变量,并且是针对实际生成的CAN ID,其为真实值。
[0022]当使用本公开提出的用于使用双向GPT2网络检测对CAN总线的攻击的方法及装置时,即使在CAN ID序列中包括少量的攻击I本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通过处理器执行的用于控制器局域网(CAN)的入侵检测方法,所述入侵检测方法包括:按出现顺序从所述CAN收集CAN标识符(ID);从收集到的CAN ID生成预定数量L个CAN ID的序列,L为大于或等于1的整数;以及将所述序列输入到双向生成预训练变换器2(GPT2)网络并且计算与所述序列对应的损失函数的值,其中,当允许的CANID的数量为K时,将所述序列中的允许的CANID按大小排序并且转换为0到K

1的值,将所述序列中的不允许的CANID转换为K,将所述序列输入到所述双向GPT2网络,并且K为等于或大于1的整数。2.根据权利要求1所述的入侵检测方法,其中,所述双向GPT2网络包括前向GPT模块、后向GPT模块和全连接层。3.根据权利要求2所述的入侵检测方法,其中,在计算所述损失函数的值时,将所述序列按原序输入到所述前向GPT模块,并且将所述序列按逆序输入到所述后向GPT模块。4.根据权利要求3所述的入侵检测方法,其中,在计算所述损失函数的值时,将与属于所述序列的从第0个CAN ID至第L

2个CAN ID的CAN ID对应的嵌入向量输入到所述前向GPT模块,并且所述前向GPT模块输出具有与所述嵌入向量相同维度的E维向量,其对应于第1个至第(L

1)个CAN ID。5.根据权利要求3所述的入侵检测方法,其中,在计算所述损失函数的值时,将与属于所述序列的从第(L

1)个CANID至第1个CANID的CANID对应的嵌入向量输入到所述后向GPT模块,并且所述后向GPT模块输出具有与所述嵌入向量相同维度的E维向量,其对应于第(L

2)个至第0个CAN ID。6.根据权利要求4所述的入侵检测方法,其中,在计算所述损失函数的值时,将所述前向GPT模块的输出和所述后向GPT模块的输出级联以生成2E
×
L矩阵,所述2E
×
L矩阵通过所述全连接层转换为(K+1)
×
L矩阵,并且所述(K+1)
×
L矩阵通过softmax层变换为概率矩阵。7.根据权利要求2所述的入侵检测方法,其中,所述损失函数被定义为所述前向GPT模块、所述后向GPT模块和所述全连接层被训练以使所述损失函数的值最小,是用于训练的第n个正常CANID序列的第l个变量,并且是针对实际生成的CANID,其为真实值。8.根据权利要求1所述的入侵检测方法,还包括:将所述损失函数的值与阈值进行比较;以及当所述损失函数的值等于或大于阈值时,将与所述序列对应的时段确定为存在入侵的时段,其中,所述损失函数被定义为其中,所述损失函数被定义为是与检测目
标序列对应的第m个CAN ID序列的第l个变量,并且是针对实际生成的CAN ID,其为真实值。9.一种用于控制器局域网(CAN)的入侵检测装置,所述入侵检测装置包括:处理器;存储器,存储一个或更多个可由处理器执行...

【专利技术属性】
技术研发人员:朱岐昊朴乘莹沈相奎金义锡金德洙李锡雨李廷元
申请(专利权)人:上海磐起信息科技有限公司
类型:发明
国别省市:

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

1