车载总线(Automotive Bus)是指在车辆内部用于不同电子控制单元(ECU)之间进行通信和数据传输的系统。它充当了车辆内部各个电子模块之间的数据传输媒介,使得不同的车辆系统可以相互协作和交换信息。
车载总线允许车辆上的各个控制单元进行实时的数据交换和通信,以实现车辆的各种功能,如引擎控制、制动系统、座椅调节、仪表盘显示等。它提供了一种标准化的接口和通信协议,以确保各个控制单元之间的互操作性和数据的可靠传输。
CAN (Controller Area Network):
CAN是车辆网络通信中最常用的协议之一。然而,原始的CAN协议没有内置的安全机制,因此现代车辆通常使用CAN协议的安全扩展,如CAN-FD (CAN with Flexible Data-Rate) 和CAN-XCP (CAN with Extended Calibration Protocol) 来增加安全性。
可靠性:CAN使用冗余机制和错误检测与纠正技术,确保通信的可靠性。它具有错误检测和错误响应机制,可以检测和处理通信中的错误。
实时性:CAN协议设计用于实时控制应用,具有高效的消息传输机制和低延迟特性。
简单性:CAN协议相对简单,易于实现和部署。它使用广播通信和基于标识符的消息过滤机制。
然而,原始的CAN协议存在一些安全性挑战,如缺乏身份验证和加密机制,容易受到欺骗和中间人攻击。为了提高CAN协议的安全性,现代车辆通常使用CAN的安全扩展协议,如CAN-FD(CAN with Flexible Data-Rate)和CAN-XCP(CAN with Extended Calibration Protocol)。这些扩展协议提供了额外的安全特性,如消息认证、数据完整性保护和加密。
LIN (Local Interconnect Network):
LIN协议用于车辆中低速数据传输,如门控、照明和仪表板等。LIN本身并没有提供强大的安全性,因此在需要更高安全级别的应用中,可以结合其他安全通信协议使用。
成本效益:由于LIN协议的较低速率和简单性,它在成本上更具有竞争力。它适用于车辆中的简单控制和监测任务。
简单性:LIN协议相对简单,易于实现和部署。它使用主-从架构,其中一个主节点控制多个从节点。
然而,与CAN相比,LIN协议在安全性方面的功能有限。它没有内置的加密和身份验证机制,因此在需要更高安全级别的应用中,可以结合其他安全通信协议使用,如CAN-FD和LIN的安全扩展。
综上所述,CAN和LIN是车辆通信中常见的协议。CAN主要用于高速、实时控制的通信,而LIN主要用于低速、简单控制的通信。为了提高安全性,现代车辆通常采用CAN和LIN的安全扩展协议,以增加安全特性和保护通信免受攻击。
FlexRay:
FlexRay是一种高速车辆网络通信协议,用于高带宽和实时性要求较高的系统,如刹车、转向和悬挂控制。FlexRay提供了一些安全机制,例如消息认证和数据完整性保护。
高带宽和灵活性:FlexRay支持高达10 Mbps的通信速率,能够满足车辆系统中对大量数据传输的需求。它还提供了灵活的网络配置选项,允许多种通信拓扑结构。
实时性:FlexRay使用时间分隔多路访问 (Time Division Multiple Access, TDMA) 技术,通过将通信周期划分为固定的时间槽,实现严格的实时通信。这对于需要高精度和可靠性的车辆控制系统至关重要。
安全性:FlexRay提供了消息认证和数据完整性保护的机制,以保护通信数据的安全性。它使用消息认证码 (MAC) 和数据签名等技术来验证消息的真实性和完整性。
Ethernet:
以太网在车辆领域的应用越来越普遍,特别是用于高带宽的数据传输和车辆内部的通信。为了增强安全性,车辆中使用的以太网通常采用了安全扩展,如Ethernet AVB (Audio Video Bridging) 和 TSN (Time-Sensitive Networking)。
Ethernet AVB (Audio Video Bridging):Ethernet AVB是一组用于音频和视频传输的标准,旨在提供严格的实时性和同步性。它具有流量调度和时钟同步机制,以确保高质量的音视频传输,并为车载娱乐和车载通信系统提供更好的用户体验。
TSN (Time-Sensitive Networking):TSN是一组扩展以太网标准,旨在满足对实时性和可靠性要求较高的应用的需求。它提供了严格的时间同步和流量调度机制,支持车辆中对高实时性通信的要求,如自动驾驶和高级驾驶辅助系统。
Automotive Ethernet Security (ASec):
ASec是一套在汽车以太网中实施安全性的标准和协议。它包括对消息认证、数据完整性、访问控制和安全密钥管理的支持。
消息认证和完整性保护:ASec提供了对消息的认证和数据完整性保护的机制。它使用加密算法和数字签名来确保消息的真实性和完整性,防止消息被篡改或伪造。
访问控制:ASec定义了访问控制机制,以确保只有经过授权的设备和实体可以访问车辆的以太网系统。它可以基于身份验证、访问权限和角色分配等策略进行访问控制。
安全密钥管理:ASec提供了安全密钥的生成、分发和管理机制,以确保密钥的机密性和安全性。密钥管理是实施安全通信的重要组成部分,用于加密和解密通信数据。
ISO 14229 (UDS):
Unified Diagnostic Services (UDS) 是一种用于车辆诊断和通信的标准。UDS定义了一系列安全机制和服务,用于保护诊断通信的安全性和防止未授权访问。
安全访问:UDS定义了安全访问机制,以确保只有经过授权的实体可以访问车辆的诊断接口和敏感数据。它使用挑战-响应的方式进行身份验证,并通过安全访问级别控制访问权限。
数据隐私:UDS支持对诊断数据的加密和数据隐私保护。它使用加密算法和数据掩码等技术,以防止未经授权的访问和数据泄露。
安全诊断会话:UDS提供了安全诊断会话的机制,允许在安全环境下执行敏感的诊断操作。安全诊断会话通常涉及对车辆控制单元的编程、校准和配置等操作。
真实案例说明
技术学习:特斯拉 Autopilot的实验性安全研究:
https://keenlab.tencent.com/zh/2019/03/29/Tencent-Keen-Security-Lab-Experimental-Security-Research-of-Tesla-Autopilot/
总结
车载总线是指在汽车中用于不同电子设备之间进行通信和数据传输的一种系统。它扮演着汽车电子系统中重要的角色,实现了各个部件之间的互联和协作。以下是关于车载总线学习的一些总结要点:
总的来说,对车载总线的学习可以帮助理解车辆电子系统的工作原理、数据传输方式以及安全性的考量。这对于车辆制造商、工程师和安全专家来说都是至关重要的,以确保车辆的性能、可靠性和安全性。