车辆网络安全功能的设计实施

发布者:wmghyu最新更新时间:2022-11-16 来源: elecfans关键字:CAN  ECU 手机看文章 扫描二维码
随时随地手机看文章

摘要    

在汽车行业,网络安全的实施程度很低。一辆汽车有多个电子控制单元(ECU),每个ECU通过控制区网络(CAN)与另一个ECU进行大量的信息交流。如果黑客入侵系统,那么它就像一个开放的资源来源,任何有价值的信息都可以被操纵。这可能会导致巨大的损失。这是一个验证各种现有网络安全功能的动机,了解系统,然后实施网络安全功能。

本文讨论了密钥槽验证设计、最大权威计数器验证设计和用户模式实现。汽车工业的发展采用了汽车开放系统架构(AUTOSAR)平台。


I.简介

近年来,正如人们所看到的,机械系统正在被电子元件所取代。现在,汽车不再是一个机械装置和一个电子设备,连接性使它成为一个物联网(IOT)设备。在汽车行业,一辆汽车有许多电子控制单元(ECU)。这些ECU已被编程以执行许多功能。

早期的网络安全问题只是用计算机进行各种攻击的黑客。如今,有许多网络安全功能在非计算机上实现,例如,家用电器、交通、公用事业以及各行业。随着每个设备都在向自动化和物联网方向发展,许多工厂和行业都在发展。随着连接性的增加,物联网概念在汽车行业得到了广泛的应用。

这种连接性的增加也增加了网络风险,这是一个严重的问题,也是一个社会问题。ECU被编程了许多功能,这些功能被用于汽车中,如驾驶辅助、安全气囊和许多其他应用。这些ECU通过控制区网络(CAN)相互连接,这是广泛用于车辆的通信协议。在CAN总线上有许多信息传输,而某些信息与安全有非常重要的关系。如果这些安全信号在CAN总线上被操纵,对车辆的影响是危险的,车辆没有安全保障将导致巨大的风险。

II.理论和方法

A.安全通信

发射器ECU和接收器ECU通过CAN总线连接。发射器有硬件安全模块(HSM),它能够计算出信息验证码(MAC)。HSM计算MAC的输入是时间戳和信息或有效载荷。MAC被生成并与信息和时间戳一起发送给接收方ECU。接收器也与HSM相关联,它有能力验证发射器通过CAN总线发送的MAC。一旦MAC被HSM验证,信息就被接收器接受。

在这种情况下,时间戳显示为7'O clock,如图1所示。有一个黑客ECU监视着总线,并有意在总线上捕获信息。当黑客ECU捕获信息时,很明显,MAC和时间戳7'O时钟也从总线上被捕获。现在,黑客ECU以不同的时间戳发送相同的信息。图1中的不同时间戳是9'O时钟。

在9点钟,黑客ECU通过CAN总线向接收器发送相同的信息。当接收方在验证MAC时,时间戳不匹配。接收者没有关于不同时间戳的信息。因此,该信息被拒绝。

ac88348e-62fc-11ed-8abf-dac502259ad0.png

图1. 信息认证

现在,可能有这样的情况:发射器和接收器之间有时间延迟,信息连同MAC和时间戳到达接收器时有一些延迟。这不会有任何问题,因为时间戳只不过是一个计数器而已。计算MAC的计数值和接收方关于该计数值的信息将保持不变。接收方的计数器值不会递增。因此,即使总线上有一定的延迟,MAC也会被接收器验证。

B.基于密码的信息验证码

基于密码的信息验证码(CMAC)是一种用于MAC生成和验证的算法。这种算法在ECU的硬件安全模块(HSM)中进行。如图2所示,CMAC算法与发射器的对应密钥槽相耦合。有效载荷或信息和防重放计数器被作为输入给CMAC算法以生成MAC。

这是与安全信息相关的计数器。因此,CMAC算法的输入是有效载荷和防重放计数器。每一个安全发射器信息都与一个密钥槽相关。

acedfcec-62fc-11ed-8abf-dac502259ad0.png

图2. CMAC生成钥匙槽也被称为密钥ID。密钥ID是提供钥匙的槽位。在提供的钥匙槽中提供钥匙,然后设置MAC标志。有一些内部值被设置为MAC Only flag。该标志用于生成MAC。这些生成的密钥与CMAC算法相连,该算法将生成以有效载荷和防重放计数器为输入的MAC。

用于MAC验证的值是不同的,该标志值只能验证MAC。与安全发射器信息相比,安全接收者信息被赋予不同的密钥ID。“MAC验证”的值在提供密钥后设置。MAC验证标志有一个设置好的内部值。这个过程将生成MAC验证的密钥。因此,这些密钥被耦合到CMAC层,用于MAC生成或MAC验证。

C.用户模式和管理模式

两种特权模式的操作是管理模式和用户模式。监督员模式将可以访问所有的资源控制操作。它就像一个管理员,拥有所有内存位置的读、写和可执行权限。 所有的任务都在一个单一的平台上运行,除了管理员,没有人可以改变任何任务、任何代码或任何配置。这使得该系统非常僵硬。

在汽车工业中,汽车中的电子设备之一是ECU。这个ECU只在监督员模式下运行。寄存器和内存位置只能在监督员模式下访问。所有的应用程序都在监督员模式下运行。 当处理器在用户模式下运行时,它对系统的访问将受到限制。如果实施了用户模式,那么在这种模式下,用户将有对资源控制操作有限的访问权,某些内存位置将有有限的权限。要了解从管理模式切换到用户模式,并检索到管理模式。

了解机器状态寄存器(MSR)是很重要的。这个MSR决定了处理器的状态。MSR是一个32位的寄存器。MSR中的问题状态寄存器(PR)位表示处理器是处于用户模式还是监督模式。如果PR位=0,处理器处于管理模式。如果PR位=1,处理器在用户模式下运行。

ECU在监督员模式下运行。其中一个功能将被定义为在用户模式下运行。因此,代码是在该功能中开发的,以便ECU在用户模式下运行该特定功能。当代码正在执行时,MSR的PR位被设置为1,而不会干扰MSR中的任何其他位。将PR位改为1后,ECU现在在用户模式下运行。

如果ECU必须切换回管理模式,则必须执行系统调用或中断,以将MSR寄存器的PR位更改为零。

ad06cba0-62fc-11ed-8abf-dac502259ad0.png

图3. 用户模式概念

MSR将其值存储在特殊用途寄存器(SPR)中,同时执行系统调用。SPR的作用是将MSR值的PR位位置改为1。当MSR从SPR中检索到它的值时。对它的指示,是保持在管理模式,因为MSR的PR位将是1。这个概念证明了可以从管理模式切换到用户模式,反之亦然。通过使用这个概念,用户和管理模式可以在ECU中成功实现。

III.设计

本节将解释网络安全三个功能的设计,前两个设计将证明现有的代码运行良好。第三个设计是ECU中用户模式的实现。

A.钥匙槽验证

验证任何一个ECU都不得使用安全外围设备内的同一密钥槽来生成和验证MAC。ECU已被校准以生成有效的非零MAC。已使用不同的密钥来生成和验证MAC。

行动

触发ECU发送安全信息。选择由ECU在总线上发送的安全发射器信息,并形成必要的数据发送到MAC生成接口操纵应用程序代码,将密钥槽号为4的数据发送至MAC 生成与接收方信息密钥槽号相对应的密钥槽接口。密钥槽验证的设计如图4所示。

ad38c8bc-62fc-11ed-8abf-dac502259ad0.png

图4. 密钥槽验证设计

设计显示,密钥槽号11、12、13、14、15是接收信息的密钥槽号,这些密钥槽被强制放在密钥槽号4上,一次一个。MAC生成的密钥闪光,这些密钥与密钥槽11、12、13、14、15相关。这些钥匙应该被生成。这个动作将触发错误。这个错误就是无效的钥匙。

所有的钥匙槽都经过验证,每次使用不同的接收器钥匙槽时,应用程序代码都会提供相同的错误。

B.最具权威性的反核查

确保ECU在权威性计数器达到最大值时设置一个DTC,并发送零MAC。

行动

触发ECU来发送安全信息。验证ECU正在发送它所支持的所有发送器信息。选择一个安全的发送器信息,并操作应用程序代码,将相应的权威计数器设置为其最大值。

ad56d97e-62fc-11ed-8abf-dac502259ad0.png

图5. 最具权威性计数器验证设计图

权威的计数器是与安全发射器信息相关的内部计数器。如果该计数器达到其最大值,那么应用代码应该设置诊断故障代码(DTC)。还可以观察到,选定的安全发射器信息中的MAC值应该是零。

当代码中出现错误时,DTC就是设定的。DTC可以被设置为各种错误,通过这个应用层提示某些内容没有按照预期工作。

IV.用户模式验证

最初,ECU将在管理模式下执行功能。在管理模式的功能结束时,会引入一个链式任务,并将一个用户模式定义的功能作为参数给出。这些函数不能在用户模式下访问寄存器,因为它们是不被信任的函数,所以引入了包装器,如图6所示,它显示了用户模式的实现设计。

这些是映射到可信函数的不信任函数,以调用原始函数,在用户模式下执行。当包装器在函数中被调用时。它应该在实时操作系统(RTOS)中进行配置,这些函数被配置为可信函数。

这样就可以访问寄存器和函数,在用户模式下执行。现在,为了将运行在用户模式下的ECU切换到管理模式,在用户模式函数的末端调用一个链式任务,传递给它的参数是管理模式函数。

ad8ca798-62fc-11ed-8abf-dac502259ad0.png

图6. 用户模式的实现设计

因此,ECU将以管理模式运行。在函数执行结束时,会调用一个终止链任务,该任务将终止该进程。

V.结果

所有三种设计的结果都显示在本节中。

A.密钥槽位验证结果

CAN总线通常在传输所有的发射器和接收器信息,如ECU所规定的。这些信息将包含分配给每个信息的原始密钥槽。选定的安全发射器信息包含密钥槽ID为4,这是最初分配的密钥ID。不会有任何错误。该测试案例也没有启用。

adb7be06-62fc-11ed-8abf-dac502259ad0.png

图7. 密钥槽验证的结果 现在,测试案例被启用,接收器的钥匙槽ID,一次一个被强制送到特定选择的发射器信息的应用代码中。

在图7中,接收器的钥匙槽号11、12、13、14、15是强制的。在提供钥匙后,应用程序代码会出现错误。出现的错误是INVALID KEY。在这种情况下,发射器信息2被迫接受改变了的钥匙槽11、12、13、14、15。所有的接收器钥匙槽ID都给出了同样的错误,因此,这将证明,当接收器钥匙槽被强制取代发射器钥匙槽时,没有一个ECU能够发挥作用。

B.最具权威性的计数器结果

发射器指数2的选择是为了使权威的计数器达到最大。这将导致为安全发送器信息2设置DTC,并且传输的MAC值也为零。这在图8中显示。

add78b28-62fc-11ed-8abf-dac502259ad0.png

图8. 最大权威性计数器的验证结果 结果证明,测试案例是经过验证成功的。DTC也被设置,并且该特定信息的MAC值为零。其他信息通常会执行一个有效的MAC。

C.用户模式的结果

图9显示了管理模式的结果。决定ECU状态的寄存器是MSR。在图9中,MSR的值是00009000。这表明第17位是0,也就是确定监督员模式的PR位。

ae0b85a4-62fc-11ed-8abf-dac502259ad0.png

图9. 管理模式的结果 如图10所示,MSR寄存器的值是00029000。 这清楚地表明,MSR的PR位等于1,这代表处理器运行在用户模式下。 

ae266608-62fc-11ed-8abf-dac502259ad0.png

图10. 管理模式的结果

所有其他的位子都没有受到影响,ECU有能力在用户和监管理模式下切换和执行功能。它甚至能够访问所需的特权寄存器和内存位置。

VI.总结

由于攻击率高,网络安全只出现在计算机中。现在,车辆通信中的网络安全已经成为汽车行业不可或缺的一部分。没有钥匙,就没有安全。因此,钥匙在有关安全的HSM中起着重要作用。

目前只讨论、设计和实现了三个功能,但汽车行业的网络安全是一项巨大的研究课题。实现了许多功能,每一个功能都需要对AUTOSAR、CAN通信和许多其他功能的平台有深入的了解。一旦理解了这些特性,就可以设计和实现其他安全特性。


关键字:CAN  ECU 引用地址:车辆网络安全功能的设计实施

上一篇:为何芯片对智能电动汽车很重要?
下一篇:分析吉利 EV450 高压互锁故障原因

推荐阅读最新更新时间:2024-11-12 12:28

汽车总线向CAN FD升级 需要简化设计并降低成本
对于车载网络而言, CAN 和LIN作为基础的总线技术存在已久,但它们已经不能满足车载网络中更多功能的负载——一方面是数据传输率和吞吐量的加大,同时,还要增加一些保护功能,如总线故障保护和静电释放保护,以及通过1.8V - 3.3V 或 1.8V - 5V输入/输出与处理器往返数据的能力,而在满足这些需求的同时,设计的复杂性、空间和成本也必须有效控制。 数据传输率和吞吐量的加大对带宽和数据速率灵活性提出更高的要求,这加大了对CAN FD(灵活数据速率)这一通信协议的应用需求。相较于CAN,CAN FD能支持高达5 Mbps的数据传输率和高达64字节的有效负荷,它可以支持汽车 MCU 和连接的系统之间以各种速率高效通信。 系
[汽车电子]
汽车总线向<font color='red'>CAN</font> FD升级 需要简化设计并降低成本
KLA-Tencor宣布推出针对光学和EUV空白光罩的FlashScan产品线
今天,KLA-Tencor公司(纳斯达克股票交易代码:KLAC)宣布推出全新的FlashScan空白光罩*检测产品线。自从1978年公司推出第一台检测系统以来,KLA-Tencor一直是图案光罩检测的主要供应商,新的FlashScan产品线宣告公司进入专用空白光罩的检验市场。光罩坯件制造商需要针对空白光罩的检测系统,用于工艺开发和批量生产过程中的缺陷检测,此外,光罩制造商(“光罩厂”)为了进行光罩原料检测,设备监控和进程控制也需要购买该检测系统。 FlashScan系统可以检查针对光学或极紫外(EUV)光刻的空白光罩。 “先进的光刻技术从表征良好的空白光罩开始。” KLA-Tencor的光罩和宽带等离子晶圆检测部总经理熊亚霖博士
[半导体设计/制造]
【MPC5744P】Bootloader下位机开发(CAN通讯)
此下位机开发通讯采用CAN,所有Hex文件解析工作在上位机,下位机尽可能避免复杂操作,以加快烧录速度。 使用的为NXP DEVKIT-MPC5744P开发板。 为保证烧录过程不出现错误,上下位机采用一问一答模式,上位机发送一帧数据后,下位机接收处理完毕再回馈给上位机,上位机再决定下一步动作。 核心代码逻辑部分,将命令分成EntryBootloader, Reset, Data, DataEnd, CheckBootloader, Erase, ERR几个部分。 烧录时会先检查是否处于Bootloader,然后执行擦写操作(擦写地址范围由上位机发送),再发送数据(地址+数据为一帧),最后发送结束命令。由于Flash编
[单片机]
CAN现场总线的妙用
现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN(Controller Area Network)属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。较之目前许多RS-485基于R线构建的分布式控制系统而言, 基于的分布式控制系统在以下方面具有明显的优越性:  首先,CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点
[嵌入式]
CAN总线成为车电系统的总线标准
1 . CAN总线 在电子产品的各种通讯方式中,CAN(Controller Area Network)总线以其高可靠性、实时性、传输距离远的特点得到广泛的应用,已经成为许多高档汽车(如奔驰、宝马等)车电系统的总线标准。于是出现了许多内部集成CAN控制器的单片机,如Atmel公司的T89C51CC0X系列单片机就是其中性价比较高的一款,它具有丰富的内部资源,支持CAN方式的在线编程。我们在使用此系列产品的过程中,针对其应用普遍但编程器较少的特点,开发了一款基于T89C51CC01CA芯片的CAN程序下载和CAN节点调试器,它既能对同类单片机进行编程,又能通过CAN总线对具有CAN通讯功能的设备进行调试。 2. 系统结构框图 2
[单片机]
<font color='red'>CAN</font>总线成为车电系统的总线标准
小身材,大能耐—ScanSnap iX1300 中国首发,助您从容应对生活方式巨变
2023 年 6 月,中国深圳讯 —— 全球扫描仪龙头企业株式会社 PFU在华子公司必福优信息设备(深圳)有限公司近日宣布在中国市场推出 ScanSnap 系列*1新机型—ScanSnap iX1300。这款扫描仪小巧轻便,功能齐全,能够同时满足个人和商用需求。 ScanSnap iX1300 您曾有过需要即时共享文档或远程办公时找不到文档的经历吗?如今,混合办公模式日渐成为主流。ScanSnap iX1300 机身小巧、功能齐全,使您无论是在办公室、居家,还是在公共场所、联合办公空间,都可以更好地平衡工作和生活。别看 ScanSnap iX1300 身形小巧,它却搭载了两种扫描模式:您既可以选择连续高速扫描 A4 文档
[家用电子]
小身材,大能耐—S<font color='red'>can</font>Snap iX1300 中国首发,助您从容应对生活方式巨变
CAN总线如何设计拓扑才最安全?
随着CAN总线的应用越来越广泛,工程师在面对各种不同工况下,如何选择合适的网络拓扑方式就变成了一个让人头疼的问题。这里介绍主流的几种总线拓扑方式,可以帮您完成快速了解进行选择。 一、直线型拓扑 图1 直线型拓扑 直线型拓扑也叫总线型拓扑,如图1所示,所有的节点都接到同一总线上,总线上任意节点发送信息,其他节点都能正常接收。 它的优势包括:  布线施工简单;  阻抗匹配固定规则(首尾各1个120欧电阻匹配);  接线操作简单方便;  由于这些优势,在很多领域里都获得了广泛应用,可以满足大多数领域的应用要求,但是随着行业应用的扩展,逐渐发现了总线型拓扑的缺点,比如:  如果节点数较多,
[嵌入式]
<font color='red'>CAN</font>总线如何设计拓扑才最安全?
基于CAN总线的旋转编码器采集模块设计
随着工业生产自动化水平的提高,各种传感器的应用也越来越多。旋转编码器作为速度和位移反馈的传感器,主要应用于数控机床、高精度的闭环调速系统、伺服电动机、异步电动机、步进电动机、电梯曳引机、电梯门机乃至机械轴等需要对运动速度和位移信息反馈的自动化控制场合,以保证机械的高精度稳定运转,进而提高生产效率和保障安全运营。 本文针对旋转编码器在工业现场中的应用,基于LPCI768硬件平台,设计出一种旋转编码器采集模块,该模块内部具有高精度分析、整形、解码电路,可同时对2路编码器输入信号进行分析、解码。经过处理的旋转信号通过高性能处理器进行采集及数字滤波。旋转编码器同时还对2路编码器信号进行角速度计算,最终模块通过CAN总线将采集到的旋转
[单片机]
基于<font color='red'>CAN</font>总线的旋转编码器采集模块设计
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved