政务网站建设标准,wordpress中英文建站,黑龙江网站备案管理局,厦门谷歌seo公司文章目录 摘要一、引言和动机A 相关工作 二、背景及实验设置A 以前工作中的时钟偏差和局限性B.最坏到达时间C.安装组件 三、优化流量分配A.问题陈述B.优化帧调度 四、协议和结果A.主协议B.对手模型C. 优化流量和单一发送者的结果D.多发送方情况和噪声信道 摘要
以前的研究工作… 文章目录 摘要一、引言和动机A 相关工作 二、背景及实验设置A 以前工作中的时钟偏差和局限性B.最坏到达时间C.安装组件 三、优化流量分配A.问题陈述B.优化帧调度 四、协议和结果A.主协议B.对手模型C. 优化流量和单一发送者的结果D.多发送方情况和噪声信道 摘要
以前的研究工作已经认可了使用延迟和时钟偏移来检测在CAN总线上通信的入侵或指纹识别控制器。最近CAN帧的定时特性也被用于建立一种隐蔽通道进行密码认证通过这种方式巧妙地消除了在数据帧短负载中需要密码材料的需求。然而这种方法的主要缺点是现有的CAN总线流量上可以实现的安全级别有限。在这项工作中我们通过依赖优化算法来调度CAN帧并在优化的CAN流量上部署隐蔽通道从而显著提高了安全性。在实际的总线分配下我们能够从每个帧中提取3-5位的认证数据这导致了一种有效的入侵检测和认证机制。通过累积连续几个帧的隐蔽通道数据我们可以实现与当前现实世界需求相符的更高安全级别。为了证明我们的方法的正确性我们在汽车级控制器即Infineon Aurix上进行了实验并使用行业标准工具即CANoe进行了总线测量。
一、引言和动机
在模拟环境中对车辆总线进行攻击的小型演示最早可以追溯到[1]的工作。最近的一些工作如[2]–[4]等已经明确证明了攻击现实世界中的车辆的可行性。车载网络的大部分安全问题源于控制器局域网CAN没有内在的安全机制这一事实。CAN总线能够在单个帧中传输多达8字节的数据最大位速率为1Mbit/s。CAN帧的结构如图1所示。为了避免冲突基于ID字段进行仲裁该字段使用帧的前11位如果使用扩展标识符则为29位而15位CRC循环冗余校验有助于识别传输错误。CAN还使用比特填充来避免长序列中相同值的比特同步丢失即在连续五个相同位之后引入一个相反值的额外位以强制转换。研究界已经提出了数十种保护CAN总线的方案。正如预期的那样其中大多数依赖于使用密码消息认证码MAC例如[5]–[7][8]或最近[9]和许多其他。但由于CAN帧的大小有限即64位因此在文献中通常讨论了两种选项截断MAC以便它们与合法数据一起适应帧内或将MAC作为单独的数据包发送。最后一个选项会创建额外的问题因为每个常规帧都发送一个新的认证帧会增加总线负载并且无法满足我们稍后在分析中讨论的实时需求。第一个过程MAC截断得到了AUTOSAR [10]架构中引入的较新的安全规范的支持该规范要求为CAN帧提供24位的安全性。然而从64位CAN帧有效载荷中保留24位用于安全性可能不太方便因为这代表了37%的有效载荷。此外标准规定新鲜度参数需要8位导致32位预留用于安全目的因此50%的帧变得无法用于常规数据。总的来说似乎将密码材料包含在CAN帧中仍然有些问题因为CAN的小数据包大小很难应对所需的安全级别。第三种选择是使用替代物理层例如CAN [11]隐藏认证位这是CAN的一种扩展。这种方法在[12]中提出。然而车载设备中不存在CAN收发器而且由于向CAN-FD的迁移汽车工业似乎不太可能采用CAN。 上下文和动机。在最近的工作中我们通过设计一种隐蔽的定时信道用于密码认证以上下文和动机。在最近的工作中我们通过设计一种隐蔽的定时信道用于密码认证以建设性的方式利用了定时器-计数器电路的精细控制[13]。这个提议的优点在于允许认证数据被承载在CAN帧有限的64位有效载荷之外。然而[13]中工作的问题是在现有的CAN总线流量上放置隐蔽通道时性能会显著下降。在[14]中可以找到一种基于帧到达时间创建隐蔽认证通道的类似方法但实现的安全级别非常有限每个CAN帧只有1个隐蔽比特。此外[14]中的认证仅针对发送方而不是帧的内容。 通过优化CAN通信我们的方法可以在隐蔽通道上获得更高的数据速率。当然在多个发送者的情况下这需要发送者之间的时间同步。传统的CAN实现假设节点的异步行为和缺乏共同的时间基准。然而根据[15]的AUTOSAR标准规范来自行业的最新方法为所有三种主要的车载总线以太网、CAN和FlexRay提供了时间同步的支持。最近的AUTOSAR关于CAN上的时间同步的规范对时间主设备、网关甚至从设备的最大精度提出了警告将其设定为10μs即[16]的第4.1节。这表明我们的方法的需求是现实的并与行业当前的趋势一致。在TT-CANTime-triggered CAN的时间触发通信中时间同步也是必需的因此在现实世界的应用中存在。
设计意图。我们创建一个隐蔽的身份验证通道该通道保持CAN帧的位不变并通过依赖有效的帧调度来提高通道的数据速率。所处理的场景在图2中简要概述。为了避免使图形过载只描绘了两个ECU电子控制单元和一个外部设备可能是一个CANcase但我们的场景对ECU或外部设备的数量没有限制。ECU以通常的方式在预定义的周期i, i 1. . n对于总线上定义的每个ID我们假设有n个这样的ID进行消息通信其中添加了一个小的漂移i和一个小型的身份验证延迟ξ更多详细信息将在后续部分给出。在CAN总线上创建隐蔽身份验证通道的主要优点如下
它不会消耗帧数据字段中的比特该字段限制在64位。它在携带数据的帧中隐蔽地嵌入认证数据而无需额外的认证帧。由于认证数据隐藏在延迟中因此它不会增加总线负载。
我们为CAN上的消息认证创建的秘密通道必须被视为与基于MAC的常规解决方案相辅相成而不是与之竞争。显然使用常规MAC更为高效但不可否认的是数据字段64位的有限大小使得包含此类MAC变得困难而MAC截断是唯一的选择这反过来又会显著降低安全级别因为我们稍后会讨论所以添加额外的认证帧可能是不现实的。相反秘密认证通道可以在不影响现有流量的情况下带来额外的保护层。事实上我们讨论的优化流量分配直接改善了真实帧的最坏情况到达时间因为总线上发生了更少或希望没有的帧冲突。比较秘密通道和常规、预期通信通道的容量将是具有偏见的因为前者建立在后者微小的物理波动之上不足为奇的是秘密通道确实具有较小的数据速率。
在我们的提案中帧认证工作的主要概念是在延迟中编码认证数据并添加针对帧时序的优化。这些细节可以在图3中找到。CAN帧由标识符字段ID表示以循环方式到达总线为了避免过于复杂我们省略了数据字段但在消息认证码中使用了ID。虽然事件帧也可能存在于CAN总线上但CAN流量的大多数性质是循环的因此我们专注于对此类流量进行身份验证。我们为三种不同的延迟10ms、20ms和50ms描绘了标识符。每个延迟都添加了一个漂移ξ它以隐蔽的方式携带认证数据。原则上ξ是加密消息认证码MAC的最后一字节。该MAC在整个帧的内容上计算并且对于每一帧来说都是唯一的假设适当的新鲜度参数被使用例如时间戳或计数器。为了避免过于复杂我们在图形轮廓中省略了这些细节。由于CAN流量分配不当可能需要同时发送多个数据包灰色高亮的数据包所暗示的那样。这些重叠可能从传输的角度来看不是问题但是它们会影响预期到达时间和因此覆盖通道的数据速率。为了避免这种情况我们使用额外的延迟ii 1. . 3来以最佳方式分配流量并保持帧间距离最大。图4提供了关于为什么未优化的流量对秘密时序通道来说是问题的更清晰的图像。图的左侧显示了记录在现实世界车辆中的帧之间的传输时间。尽管整个流量是循环的但帧之间的传输时间是嘈杂的并且与预期到达的偏差很常见。为了提高性能我们进一步依赖优化算法。图4右侧显示了经过优化后的传播时间。相同的总线负载和相同的ID数量被使用但传输时间现在遵循一个更清晰的模式。如预期并由实验证明秘密通道将比优化过的流量具有更高的比特率。
A 相关工作
在计算机网络中隐蔽定时信道已经得到了很好的探索例如[17]–[19]。但是除了上述最近的论文[13]和[14]之外我们不知道这种信道是否用于保护车载通信。 表I尝试对CAN总线上的现有两个隐蔽定时信道提案[13]和[14]进行比较总结。我们试图以一种统一的方式从TACAN [14]和INCANTA [13]中提取比较结果。这两个工作都使用通过改变单个ID的到达时间来创建的信道进行实验。特别是TACAN [14]使用在10ms广播的载体ID并编码了到达时间中的1位信息而INCANTA [13]使用在100ms广播的载体ID并编码了5位信息。为了增加数据速率TACAN [14]还使用了最低有效位信道通过该信道修改数据字段的最后一位但这并不是定时隐蔽信道因此我们没有将其包含在此分析中只关注TACAN的到达时间间隔(IAT)版本。对于[14]误码率(BER)小于1%提到这个BER值是通过近似超过4帧获得的否则BER可能会显著高达40%左右。对于[13]BER值为1.75%适用于高优先级ID轻松赢得仲裁的情况。在吞吐量方面[14]报告为22.5 bps我们可以计算[13]的数据速率为57 bps尽管其ID的周期性较慢即[13]为100ms vs. [14]为10ms但[13]使用的ID漂移更高即220ns公差为20,000ns这导致每条消息提取约5位。无论是[14]还是[13]都没有用多个ID进行隐蔽数据的实验而且由于较低优先级ID的到达时间的不可预测性增加性能不太可能随着ID数量的增加呈线性扩展。相反在CANTO中我们使用来自总线的所有ID作为定时隐蔽信道。来自CANTO的最佳流量分配使我们能够实现所有ID的相同结果从而实现大约5047 bps的数据速率和0.95%的误码率我们在实验部分稍后会展示这一点。
尽管如此许多近期的研究工作都集中在使用帧到达时间即我们用来创建隐蔽通道的延迟以检测入侵例如[24]和[25]。通过使用布隆过滤器[26]帧到达时间也与帧内容相结合以过滤[27]中的恶意活动。最近帧周期性被利用来提取时钟偏差这由于振荡器中的物理缺陷而在[28]中用于为每个设备创建独特的指纹。这为CAN节点的物理指纹识别提供了空间。十多年来时钟偏差的使用已被[29]的工作探索用于对计算机进行指纹识别并且不出所料它也应用于智能手机[30]。不幸的是基于时钟偏差的识别机制在嵌入式设备的精细粒度的时间触发中断控制下变得无效这使它们有可能伪造它们的时钟偏差如[31]所示。所有这些工作都在利用控制器中时钟电路的精度这也是我们在这里提出的建议的核心。 为了从数据字段中节省比特其他工作已经建议使用标识符字段即[32]、[33]、[34]和[35]但这需要特别小心因为标识符字段对于仲裁至关重要也用于过滤目的。另一种在不损害CAN帧的比特的情况下识别发送方的方法是使用物理信号特性例如[36]–[38]但这些方法可能容易受到总线阻抗的小变化的影响。
二、背景及实验设置
这部分内容简要概述了CAN网络上的延迟和时钟偏移。尽管如此我们还是讨论了先前关于CAN总线隐蔽定时信道的工作中的局限性。然后我们描述了我们设置的组成部分。
A 以前工作中的时钟偏差和局限性
在图5中我们展示了当三个ECUs以固定的时间间隔δ广播时时钟偏差如何累积。由于时钟精度问题尽管延迟δ是固定的但每个ECU测量的时间实际上是δ1、δ2和δ3。如果第一个ECU测量从第二个和第三个ECU接收到的帧的到达时间那么这些延迟就会累积。结果是一个代表时钟偏差的斜率。图6显示了在一个Infineon板上测量的延迟与CANoe之间的图形描述这是另一个Infineon板周期性广播帧的情况。这个描述是根据我们之前的工作[13]进行的。延迟被强制设置为±100、±250、±500个时钟滴答1个滴答是10ns因此在图片中可以看到几个斜率。我们在CAN总线上创建隐蔽通道的前期工作的主要限制是现有的流量分配不良阻碍了隐蔽通道的数据速率。图7显示了根据[13]记录的四个Infineon TriCore板上没有左和有右现有网络流量时的延迟变化延迟表示为预期到达时间和记录到达时间之间的分数。在存在流量的情况下一些帧会显著延迟到达使它们与随机延迟发送的帧无法区分。这些延迟会导致入侵检测机制的误报。正如我们在这项工作中所讨论和展示的流量优化是解决这个问题的唯一方法。
B.最坏到达时间
CAN消息的最坏到达时间对于评估CAN网络中特定消息周期分配的可行性至关重要。 请注意由于其基于ID的仲裁机制低优先级ID的到达可能会被高优先级ID显著延迟。为了证明我们方法的可行性并概述总线的带宽限制我们现在简要介绍一下CAN调度性的背景。为此我们将使用[39]中提出的理论框架。特别是我们使用[39]中定义的消息m的繁忙时间段t和最坏排队延迟w 我们保持[39]中的原始符号并将m解释为定义其优先级的消息的ID。在先前的关系中Bm是由较低优先级消息传输引起的阻塞延迟Jk是消息k的排队抖动Tk是消息k的周期Ck是消息k的传输时间q是消息m的实例τbit是总线上传单个位的时间。通过hp(m)我们表示具有高于m的优先级的消息即ID较低的消息。t和w都通过n的递归来解决更多详细信息请参阅[39]直到t和w的值收敛即t n1 m t n m 和 wn1 m (q) wn m(q)。
我们现在展示通过将先前的方法应用于我们特定的40个ID分配所获得的结果。我们选择了ID及其周期性以获得40%的总线负载这是真实世界车辆的特征。这些ID的周期为10、20、50和100ms在即将到来的部分中给出了对此分配的更多评估。我们固定了以下参数这些参数是我们设置的特征τbit 2μs用于我们使用的500kbps CANCk 270μs这是总线上最长消息的持续时间根据[39]这是计算为55 10Bτbit其中B是消息中的字节数Bm 270μs除了优先级最低的ID之外Bm 0。图8显示了左侧的繁忙期和右侧的每个40个ID的最坏情况排队延迟蓝色圆圈。一些ID的值被描绘为标签但这些值并不重要这些值只是被分配得更快的ID具有更高的优先级并且对于相同的周期性连续编号以便我们可以更轻松地直观跟踪它们。然后我们用红色圆圈描绘了当ID数量翻倍时这些值的变化例如我们需要发送带有认证数据的额外帧的情况。在原始实例中有40个ID的情况下广播时间为10ms的ID的总线繁忙期将在0.2-1.2ms之间而广播时间为100ms的ID将在5.4-8ms之间。排队时间保持在0.52-11.96ms的范围内。对于一个周期为100ms的帧来说11.96ms的漂移可能有点高。然而当ID数量翻倍时繁忙期和最坏情况排队延迟增加的范围为0.52-34.06ms最坏情况下增加了3倍。通过使总线负载翻倍最坏情况到达时间的增加高于预期的两倍这表明添加额外的帧几乎不是替代方案。优化流量分配也将在这方面有所帮助。
C.安装组件
我们使用AURIX TC224 TFT应用套件实施和评估流量分配的优化。开发板具有一个运行频率高达133 MHz的TC224 32位TriCore CPU提供1MB的FLASH内存和96kB的RAM内存。我们的基于TriCore的实施所传输的CAN帧使用CANoe一种用于分析和测试汽车网络的软件工具进行记录。为了实现这一点CANoe运行的PC通过VN CAN到PC适配器与开发板接口如图9所示。离线使用Mathematica分析记录的跟踪。
根据描述的机制由于CAN帧必须在特定的时间槽中传输节点需要实现一个保持时间的功能。我们在TC224上使用捕获/比较单元6定时器CCU6模块实现了这个功能该模块被配置为每1微秒触发一次中断作为我们本地时钟的基本滴答。在几次实验中我们使用计算MAC值的最后7位来表示认证延迟。此延迟添加到消息周期时间加上 当足够的CCU6定时器的滴答过去时消息将在总线上发送。 所有消息数据字节、配置的消息周期时间和每个消息选择的 值都在MultiCAN模块中配置。MultiCAN模块还负责将帧数据以指定的波特率为500 kbps发送到CAN收发器。
执行初始硬件设置后为每条消息计算初始MAC值。在运行时基于CCU6定时器中递增的计数器值发送所有帧的周期时间和 值但如前所述会有一个小的延迟。帧交付将在CCU6定时器的ξ个滴答过期后发生。每次帧交付后消息计数器递增并根据消息数据和消息计数器计算新的MAC值。
三、优化流量分配
A.问题陈述
B.优化帧调度
四、协议和结果
A.主协议
B.对手模型
C. 优化流量和单一发送者的结果
D.多发送方情况和噪声信道