0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何实现安全的AUTOSAR通信栈

Elektrobit 来源:Elektrobit 2025-09-08 16:43 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

软件定义汽车新时代下的通信安全

随着软件定义汽车(SDV)理念的普及,车辆内部各电子控制单元(ECU)之间的通信已经突破传统的控制边界,成为支撑自动驾驶、高度互联和OTA更新的关键基础设施。在这样的背景下,通信安全的重要性尤为凸显。未经保护的通信链路可能面临数据篡改、重放攻击及冒充攻击等风险,危及车辆功能的正确性和用户安全。因此,在AUTOSAR架构中建立完备的通信安全机制,已成为行业共识与技术刚需。

AUTOSAR通信栈(ComStack):分层、模块化的基础

AUTOSAR通信栈(ComStack)作为基础软件(BSW)核心组件之一,承担起ECU之间数据交换的核心功能,包含多个分层模块,支持CAN、LIN、FlexRay 和以太网等多种通信协议。其层级结构可概括如下:

1.CanIf/EthIf/FrIf/LinIf接口

针对不同总线协议,在低层提供硬件抽象,屏蔽底层细节,连接上层的PduR。

2.PduR(Protocol Data Unit Router)路由层

管理不同协议的数据单元(PDU)路由,确保来自Com模块的消息发送至应用层或者对应物理总线,也可以接收和转发消息。

3.Com(Communication)层

位于应用和底层接口之间,负责信号级处理,包括信号打包、解包及路由到相应应用组件或下层。

4.SecOC(Secure Onboard Communication)模块

这是通信栈中专门针对安全功能设计的组件,用于消息认证与防篡改,属于BSW结合PduR共同协作实现端到端的安全传输。

这种分层架构使得通信部分高度模块化,功能清晰,易于扩展与维护,同时为集成安全功能功能安全提供了良好的基础。

SecOC模块:安全通信的核心支撑

Secure Onboard Communication(SecOC)是AUTOSAR专门用于通信安全的模块,旨在保护ECU间的PDU级消息,确保其真实性、完整性和新鲜度。根据官方规范,SecOC的功能包括:消息认证、完整性保护及防重放措施。

1.消息认证与完整性保护

每条受保护消息都会附加认证标签(如MAC),接受方在接收消息时进行验证,确保消息确实来自可信源且在传输中未被篡改。 SecOC支持对一条消息内容和其认证标签共同校验,从而对攻击产生抵御能力。

2.重放攻击防护机制(Freshness)

为阻止重放攻击,SecOC插入"freshness"值(如递增计数器或时间戳),用于区分消息的时序新旧。接收方比较该值并拒绝过期或重复消息,从而确保系统只能处理按预期顺序或时间提交的消息。

3.资源高效设计

SecOC模块强调在资源受限的AUTOSAR环境中实现轻量安全机制。其规范涵盖处理认证算法、打包认证标签、与Com/PduR协作流程等细节,并支持根据实际资源选用对称算法、MAC长度及计数器类型等多个配置选项。

安全通信的系统级实现流程

1.初期设计与配置

定义通信需求及安全等级:分析哪些通信路径需要认证、完整性验证以及新鲜度保护。如:安全/关键命令、遥测数据或OTA触发消息等;

配置SecOC模块:设置安全算法(如AES-CMAC)、MAC总长度、计数器大小、如何计算新鲜度值等。

2.与ComStack集成

Tx路径:应用调用Com,将信号封装为PDU;随后PduR将PDU导向SecOC,SecOC 生成认证标签并附加生成MAC校验值;经过PduR-CanIf将其发送至总线。

Rx路径:接收方通过CanIf接收数据后转发至SecOC;SecOC校验MAC与新鲜度,认证通过后移除标签,将净内容转交给PduR处理,再由PduR分发给应用组件。

该流程由AUTOSAR通信规范明确规定,不允许跳过SecOC模块以保证端到端的安全性。

3.系统级测试与验证

功能验证:测量正常通信路径及认证通过时的数据完整性。

攻击模拟:尝试对消息内容篡改、重放旧消息或伪造MAC,检验系统并确保拒绝不符合安全策略的消息。

性能评估:评估认证与验证机制对总线延迟和资源(如CPU、内存)的影响,确保系统仍满足实时、安全等关键性能指标。

AUTOSAR通信安全的未来方向

1.趋向更高的安全目标与扩展

随着整车功能和联网能力的不断增强,未来安全机制亦需升级。当前研究如CINNAMON模块,即在SecOC的基础上增加加密功能,增强机密性保护。这种机制可以与SecOC并行部署,使信息在传输中不仅防篡改,也无法被未授权读取。

2.与Adaptive Platform的整合

除了Classic Platform当前支持的SecOC,AUTOSAR Adaptive Platform(AP)中的ara::com同样集成认证与防重放功能,新版本规格已加入SecOC行为和API,支持Freshness管理,从而保障高级、动态更新场景下的通信安全。

总结与Elektrobit的专业视角

通过上述分析,可见AUTOSAR通信栈中安全机制的设计原则:模块化、安全性与资源效率兼备。 SecOC模块作为枢纽,结合Com、PduR、CanIf等基础组件,实现端到端安全通信,为SDV提供可信基础。

未来发展方向主要包括:

增强机密性保护;

更完善的浓缩式Freshness 管理;

在Adaptive Platform场景中实现统一安全策略。

以下提供EB tresos软件解决方案的实践案例

多核ECU可信配置与ASIL‑D安全实装

面向对象:ECU软件架构师、嵌入式系统工程师、功能安全负责人

通过EB tresos AutoCore OS实现单/多核部署、实现基于Crypto/HSM的CAN/LIN/ETH通信协议栈,利用Elektrobit对MCAL接入与安全隔离优化来实现安全通信的实现。

以我们在英飞凌AURIXTMTC 397上的Demo为例:

首先通过EB tresos Studio新建一个多核的OS系统,按照初始化的流程在EcuM中实现从主核到从核的顺序初始化MCAL和BSW的寄存器/函数。

因为部署有多个CAN控制器(CAN0, CAN1, ...),不同核(Core0, Core1)会独立管理它监控的进程。

初始化成功之后,OS启动调度,通过RTE管理不同的Task,来触发CAN通信的读写,通信流程例子如下:

MCAL CAN Driver多核

每个核上的CAN Driver接收自己核上CAN控制器的数据

例如:CAN0的Rx消息在Core0的中断中触发CanIf_RxIndication()或者把消息放到对应的CANtx Buffer里面去

CanIf多核部署

每核各自运行CanIf实例,但共享统一配置(通常静态分区)

CanIf查找匹配的RxPdu后,调用上层PduR_CanIfRxIndication()

PduR多核处理

若RxPdu的目标模块(如COM)位于同核:直接调用上层模块

若目标模块在另一核(Core1接收,Core0的SWC接收):

调用核间通信机制:

Shared Memory Ring Buffer

AUTOSAR OS Event

数据通过共享内存或IOC传递至另一核

COM & RTE

数据最终被写入目标核上的COM模块

SWC通过Rte_Read()接口读取数据

LIN/ETH的通信也是类似的,通过各自的LinIf和SOAD抽象层协议栈去实现通信。

在此之上,Elektrobit通过对此过程中PduR的数据根据对应的Crypto算法,使用密钥,新鲜值等参数作为入参,实现通信数据的加解密,实现数据的安全通信满足ASIL-D的要求。

作者

汤旭

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信
    +关注

    关注

    18

    文章

    6319

    浏览量

    139594
  • AUTOSAR
    +关注

    关注

    10

    文章

    389

    浏览量

    23525
  • ecu
    ecu
    +关注

    关注

    14

    文章

    967

    浏览量

    56894

原文标题:技术干货 | 如何实现安全的AUTOSAR通信栈

文章出处:【微信号:Elektrobit官方,微信公众号:Elektrobit】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    从手写代码到AUTOSAR工具链:J1939Tp应用篇

    J1939Tp是我学习AUTOSAR CP诸多BSW模块的起点,其分层架构完美体现了AUTOSAR规范的精髓,掌握J1939Tp有助于深入理解通信(COM)相关模块的程序执行过程。
    的头像 发表于 07-10 16:37 4785次阅读
    从手写代码到<b class='flag-5'>AUTOSAR</b>工具链:J1939Tp应用篇

    揭秘RT-Thread上的AUTOSAR CP系统

    标准,同时保留RT-Thread的POSIX支持与可裁剪性,实现通信隔离、诊断模块集成等关键技术突破,为车载系统提供高安全、可扩展的解决方案。车载电子系统与传统
    的头像 发表于 06-23 20:22 2967次阅读
    揭秘RT-Thread上的<b class='flag-5'>AUTOSAR</b> CP系统

    基于Classic AUTOSAR的ECU平台虚拟化技术分析

    采用了该标准。Classic AUTOSAR标准涵盖广泛的应用领域,从控制简单的车内温度传感器到对安全至关重要的线控转向系统,再到具有实时处理功能的复杂驾驶员辅助软件,是汽车中间件的首选。
    的头像 发表于 06-19 14:11 680次阅读
    基于Classic <b class='flag-5'>AUTOSAR</b>的ECU平台虚拟化技术分析

    东软睿驰亮相第16届AUTOSAR开放大会

    此前,5月27日-28日,第16届AUTOSAR开放大会(16th AUTOSAR Open Conference)在比利时布鲁日成功召开,本届大会以“AUTOSAR solutions
    的头像 发表于 06-06 16:07 1428次阅读

    深入浅出解析低功耗蓝牙协议

    协议的实现代码称为协议(protocol stack),Bluetooth LE协议就是实现低功耗蓝牙协议的代码,理解和掌握Bluetooth LE协议是
    的头像 发表于 04-09 14:49 1020次阅读
    深入浅出解析低功耗蓝牙协议<b class='flag-5'>栈</b>

    三种蓝牙架构实现方案(蓝牙协议方案)

    蓝牙架构实现方案有哪几种?我们一般把整个蓝牙实现方案叫做蓝牙协议,因此这个问题也可以这么阐述:蓝牙协议有哪些具体的架构方案?在蓝牙协议
    的头像 发表于 04-08 15:35 1222次阅读
    三种蓝牙架构<b class='flag-5'>实现</b>方案(蓝牙协议<b class='flag-5'>栈</b>方案)

    光庭信息荣获AUTOSAR中国中心2024年度特别贡献奖

    近日,“AUTOSAR 中国中心 2024 年度奖项颁奖典礼暨答谢酒会”在上海圆满落幕。经 AUTOSAR 中国中心管理团队提名与评选,特授予光庭信息“AUTOSAR 中国中心年度特别贡献奖”。光庭
    的头像 发表于 12-20 16:08 868次阅读

    AUTOSAR通信对自动驾驶的影响 AUTOSAR通信与嵌入式系统设计

    AUTOSAR通信与嵌入式系统设计紧密相连,共同推动着自动驾驶技术的发展。 AUTOSAR通信对自动驾驶的影响 提高通信效率和可靠性
    的头像 发表于 12-17 15:09 1076次阅读

    AUTOSAR通信与网络安全 AUTOSAR通信在车辆中的应用

    随着汽车行业的发展,车辆的电子化和智能化水平不断提高,这使得车辆的通信系统变得日益复杂。AUTOSAR(AUTomotive Open System ARchitecture)是一个全球性的汽车软件
    的头像 发表于 12-17 15:06 1453次阅读

    AUTOSAR通信实现中的常见问题

    AUTOSAR(Automotive Open System Architecture)汽车开放系统架构旨在实现汽车电子的软硬件分离,降低ECU软件开发的复杂度,提高软件可重用性。 一、通信协议
    的头像 发表于 12-17 15:03 1776次阅读

    AUTOSAR通信堆栈的配置 AUTOSAR通信模块测试方法

    )的开发和生产。通信堆栈是AUTOSAR架构中的关键组成部分,负责处理ECU之间的通信AUTOSAR通信堆栈的配置
    的头像 发表于 12-17 15:01 1532次阅读

    AUTOSAR通信框架的优势 AUTOSAR通信实例与应用场景

    AUTOSAR通信框架的优势 AUTOSAR(AUTomotive Open System ARchitecture)是一个全球性的汽车软件架构合作伙伴计划,旨在创建并建立一个开放的标准化软件架构
    的头像 发表于 12-17 14:58 1735次阅读

    AUTOSAR通信与CAN协议的关系

    AUTOSAR通信模型: AUTOSAR定义了一个分层的软件架构,其中包括应用层、基础软件层和微控制器抽象层。在这些层中,通信模型是实现EC
    的头像 发表于 12-17 14:57 1471次阅读

    AUTOSAR通信组件介绍 AUTOSAR通信层功能分析

    实现汽车电子控制单元(ECU)的软件设计和开发。这个架构包括多个层,其中通信层是AUTOSAR架构中的关键组成部分之一。 1. 通信组件概述 AUT
    的头像 发表于 12-17 14:55 2169次阅读

    AUTOSAR通信协议解析 如何实现AUTOSAR通信

    通信协议是一个复杂的系统,它涵盖了多种通信方式和模块,以实现车内ECU之间的高效、可靠的数据交换。以下是对AUTOSAR
    的头像 发表于 12-17 14:54 3975次阅读