深度了解自动驾驶安全
至于自动驾驶的前景,只能说无论是国内还是国外,自动驾驶的道路最终都会越走越远。自动驾驶车辆是一个包含定位系统、感知系统、规划系统和控制系统的复杂系统。自动驾驶安全通常是指车辆行驶过程中的安全,具体包含传感器安全、操作系统安全、控制系统安全以及V2X通信安全。
1、自动驾驶技术栈
自动驾驶技术栈可以分为两个方面:关键构件和核心技术。具体来说,自动驾驶的关键构件有全球导航卫星系统/惯性测量单元、传感器、V2X和执行器。自动驾驶的核心技术可以分为定位、感知、规划和控制四个方面。
2、自动驾驶安全
传感器安全:传感器是自动驾驶领域研究的最前沿,目前针对自动驾驶车辆的绝大多数攻击都与传感器有关。不同的传感器具有不同的工作原理,因此针对传感器可以有多种类型的攻击。常见的攻击主要针对相机、全球导航卫星系统/惯性测量单元、超声传感器、毫米波雷达和激光雷达。针对上述五类传感器中的某一类发起攻击通常比较容易,但是同时攻击多类传感器是比较困难的。因此,多传感器交叉验证是目前抵御针对传感器攻击的重要手段之一。此外,尽管传感器失效也可能导致自动驾驶系统做出错误的决策,但是传感器失效和针对传感器的攻击是不同的。在绝大多数情况下,针对传感器的攻击都趋向于隐蔽地进行,对传感器数据的篡改是比较温和不明显的,即看起来像正常数据。相反,当传感器失效时,传感器数据会产生非常明显的变化。
操作系统安全:自动驾驶系统通常集成了多种软件模块,这些模块之间的交互与协作需要达到苛刻的实时性要求。因此,自动驾驶领域需要专门的操作系统来管理多种软件模块。由于自动驾驶系统中不同模块之间具有较强的耦合性,因此模块间高效的通信与资源分配十分重要。早期的移动机器人系统(例如Miro、URBI和OpenRDK)通常仅提供了移动机器人的软件构件管理框架,缺乏软件库和可视化调试工具,因此它们不适用于自动驾驶车辆。实际上,大多数自动驾驶车辆的操作系统是基于ROS开发的。ROS的一个先天缺陷是没有为消息通信和节点创建提供认证机制。因此,ROS2中引入了数据分发服务(DDS,Data Distribution Service)来提供安全的数据分发。具体来说,DDS从实时性、连续性和可靠性三个方面对ROS2的安全性进行了改进。
控制系统安全:自动驾驶车辆中的各类机械构件和数字设备通常由电子控制单元来进行控制。不同电子控制单元之间的通信是通过数字总线实现的。当前,控制器局域网络(CAN,Controller Area Network)是车辆内部电子网络的主要总线协议。然而,由于CAN在设计之初没有包含认证和接入控制,因此极易被黑客劫持。针对CAN攻击的防护措施主要分为两种:基于加密/认证的方法和基于入侵检测的方法。此外,尽管CAN-FD(CAN with Flexible Data Rate)旨在代替CAN成为下一代车辆内部网络协议,其仍然容易受到窃听和重放攻击。
V2X通信安全:V2X通信主要包含车辆与车辆(V2V)、车辆与基础设施(V2I)、车辆与行人(V2P)和车辆与网络(V2N)四类。针对V2X通信的攻击主要分为四类:认证/识别攻击、可用性攻击、数据完整性攻击和机密性攻击。目前,绝大多数针对V2X通信攻击的防护方法都需要引入认证机制。由于与V2X通信相关的设备均受限于计算资源和存储能力的不足,因此设计安全高效的认证方案比较困难,需要着重考虑以下两个因素:轻量化和双向认证。此外,近年来研究者们逐渐摒弃了集中式的第三方认证机构,转而基于区块链技术来设计具有分布式特性的V2X安全通信机制。
目前,美国因为法律法规的宽松,已经成为无人驾驶汽车的孵化基地。许多中国汽车公司已经跨越半个世界,研究和试验无人驾驶汽车。这种热度肯定会带来好的结果。无人驾驶,从各个方面来说,都是科技时代社会进步的发展产物。毕竟在这个科技时代,简约舒适、驾驶安全才是硬道理。
免责声明:该内容整理于网络上,如有侵权,请联系删除!