Serves as a data container for passing freshness values and their bit length in secure on-board communication.
AI-GENERATEDunreviewedModel: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: ecc01f4ad2a5ProvenanceOpen questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original
Serves as a data container for passing freshness values and their bit length in secure on-board communication.
The structure apext::com::secoc::FVContainer serves in the Communication Management module as a transport container for freshness values to secure on-board communication [SWS_CM_11286]. It encapsulates the bit length of the value in field length as well as the actual freshness value as a byte vector in field value[SWS_CM_11344]. Depending on the context of use, the vector transports full or truncated values, whereby external synchronization is required in the presence of concurrency due to the lack of internal synchronization mechanisms.
Context
The data structure apext::com::secoc::FVContainer is part of the Platform Extension Interfaces of the Communication Management module and is declared in the header apext/com/secoc/fvm.h[SWS_CM_11286]. According to the architecture of the AUTOSAR Adaptive Platform, Platform Extension Interfaces serve to be used or implemented by vehicle manufacturers (OEM) or integrators to adapt platform functionality to project-specific requirements (AUTOSAR_AP_SWS_CommunicationManagement p. 536 §C “Platform Extension Interfaces”).
Within secure on-board communication (Secure Onboard Communication, SecOC), apext::com::secoc::FVContainer serves as a standardized data transfer container for freshness values (Freshness Values) [SWS_CM_11286]. The structure bundles two related pieces of information: the exact length of the freshness value in bits in field length[SWS_CM_11344] and the raw data of the freshness value as a byte vector in field value[SWS_CM_11345]. In doing so, it acts as a direct interface between the AUTOSAR Communication Management and an OEM-specific implementation of the Freshness Value Manager (FVM).
As a C++ structure (struct) [SWS_CM_11286] with exclusively public member variables, apext::com::secoc::FVContainer follows the design pattern of a pure value object. Instantiation takes place on demand either on the stack or dynamically on the heap by the caller or the callee, depending on whether a freshness value is passed to a method or provided as a return value [SWS_CM_11345].
The lifetime of an instance is primarily bound to the contained vector ara::core::Vector<std::uint8_t>[SWS_CM_11345]. When leaving scope, all memory resources allocated for the freshness value are deterministically freed. Copy and move operations follow the standard semantics of the types std::uint64_t[SWS_CM_11344] and ara::core::Vector[SWS_CM_11345]. The structure has no internal synchronization mechanisms; concurrent access across thread boundaries is therefore likely entirely the responsibility of the using components (interpretation). Question Q-24fe9a6468a61804 (open)
Usage Path
The typical usage path comprises creation, initialization, and subsequent evaluation of the container when exchanging freshness values for message protection or verification. Depending on whether apext::com::secoc::FVContainer acts as a method parameter or as a return value, the vector value contains either the complete freshness value or a truncated value [SWS_CM_11345].
In the verification or signing process, Communication Management first requests a freshness value. The Freshness Value Manager instantiates the container, sets the significant bit length in field length[SWS_CM_11344], and populates the vector value with the byte values [SWS_CM_11345]. After return of the container, Communication Management reads length and value, where the bit length presumably defines the exact boundary and unused padding bits in the last byte of the vector are ignored (interpretation). Question Q-c3cfaf1bae1ad3ac (open)
Vector of bytes containing the freshness value. Depending on whether the container is used as an input or returning value by the method it will contain either the full freshness or truncated values
Vector of bytes containing the freshness value. Depending on whether the container is used as an input or returning value by the method it will contain either the full freshness or truncated values
gemini-3.8-flash-low· 2026-10-13 · German original