上下文
命名空间 apext::com::secoc 在 AUTOSAR Adaptive Platform(SWS Communication Management §C.1 “Header: apext/com/secoc/fvm.h” )的功能集群 Communication Management(ara::com)内定义了平台扩展规范接口(Platform Extension Interfaces)。这些扩展接口的目的是使 OEM 和协议栈厂商能够提供定制的 Freshness Value Manager(FVM),该管理器生成、管理和验证用于抵御重放攻击的 Secure Onboard Communication(SecOC)所需的新鲜度值。
该命名空间主要与三个角色交互:通信管理(ara::com)、标准化接口定义(FVM)及其数据载体如 FVContainer([SWS_CM_11286] 、[SWS_CM_11344] ),以及整车厂或协议栈供应商的具体 FVM 实现。理解:假定厂商特定的 FVM 库在系统集成过程中作为静态或动态库进行链接,因为规范定义了功能接口,但具体的集成形式由协议栈特定决定。 问题 Q-256aef3d6698cc3f (未决)
SecOcKontext
AraCom
Communication Management
(ara::com )
SecOcExt
Platform Extension Interface
(apext::com::secoc )
AraCom->SecOcExt
verwaltet Lebenszyklus
ruft FVM::Initialize
AraCom->SecOcExt
fragt Frische ab
(FVM::GetTxFreshness)
FvmImpl
OEM / Stack-Vendor
FVM-Implementierung
FvmImpl->SecOcExt
implementiert
FVM-Interface
上下文图:命名空间 apext::com::secoc 在 Communication Management 与厂商特定 FVM 实现之间的集成。来源:[SWS_CM_11272] 、SWS Communication Management §C.1 “Header: apext/com/secoc/fvm.h” 。
生命周期
FVM 实现的生命周期管理完全由通信管理 ara::com 控制([SWS_CM_11272] )。应用程序和服务实例不直接创建或管理 FVM 组件。
在通信栈初始化期间,通过调用库 API apext::com::secoc::FVM::Initialize([SWS_CM_11273] )确定性地完成启动。如果厂商侧无法正确完成初始化,FVM 层会通过定义的错误代码 kFVInitializeFailed([SWS_CM_11342] )指示此错误状态。成功执行初始化调用后,Freshness Value Manager 保持在活动运行状态,并响应对发送和接收新鲜度值的同步请求。
使用路径
常规使用路径分为消息的发送保护和接收验证:
发送时的报文安全保护流程 Communication Management (ara::com) FVM (apext::com::secoc) Use Case: E2E 保护与准备 完成 E2E 计算 Authentic Message bereitstellen Use Case: Frischewert-Abfrage GetTxFreshness(freshnessValueId, ...) alt Erfolg 返回包含新鲜度值的 FVContainer Authenticator berechnen SecOC-Nachricht versenden Authentication Build Counter = 0 kFVNotAvailable Fehler kFVNotAvailable melden Authentication Build Counter inkrementieren Wiederholversuch bis Schwellwert
时序图:使用 FVM 保护发送消息时的调用和重试流程。来源:[SWS_CM_11274] 、[SWS_CM_11275] 。
错误场景
FVM 接口内的错误情况通过类型安全的错误域 ComSecOcFvmErrorDomain 进行处理,其实例可通过 GetComSecOcFvmErrorDomain 获取([SWS_CM_12521] )。错误代码在枚举类型 ComSecOcFvmErrc 中定义([SWS_CM_11342] ):
通过辅助函数 MakeErrorCode([SWS_CM_12522] ),可以将错误代码与厂商特定的附加数据(SupportDataType)一起封装到常规的 ara::core::ErrorCode 对象中。针对基于异常的环境中失败的同步调用,提供了异常类 ComSecOcFvmException。
本指南基于 AUTOSAR Adaptive Platform R25-11(Communication Management)规范。所有陈述均完全基于指定的规范和文档参考。
gemini-3.8-flash-low· 2026-10-13 · 德文原文