AUTOSAR_EXP_SWArchitecture
FIG-bbfd16836bd6847c
289 × 224 px
1 Release(s)
Figure 9.26: Interfaces for freshness value management
SHA-256 Inhalts-Fingerabdruck:
bbfd16836bd6847cd99a76e8ac580f863420bf02e17071525ba6050776fe599b
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Schnittstellen- und Komponentendiagramm (Architekturprofil der AUTOSAR Adaptive Platform).
- Technischer Zweck: Spezifikation der Kopplung zwischen dem Functional Cluster
Communication Management(ara::com) und demFreshness Value Management(FVM) zur Absicherung der Dienst- und PDU-Kommunikation gegen Replay-Angriffe (SecOC / Message Authentication) gemäß AUTOSAR Adaptive Platform R21-11.
2. Komponenten, Entitäten & Schnittstellen
Communication Management(«aapFunctionalCluster»):- Repräsentiert das funktionale Cluster der Adaptive Platform für Inter-Process- und Inter-ECU-Kommunikation.
- Tritt im Diagramm als Konsument/Klient der FVM-Funktionalität auf.
FVM(«aapNativeInterface,aapPlatformExtension»):- Stereotyp
«aapNativeInterface»: Definiert eine native C++-Schnittstelle auf Plattformebene. - Stereotyp
«aapPlatformExtension»: Kennzeichnet die Schnittstelle als Plattform-Erweiterungspunkt (OEM- oder anbieterspezifische Implementierung, keine anwendungsseitige Standard-ara::-API). - Schnittstellenmethoden:
+ Initialize(): Initialisiert den Zustand des FVM (z. B. Synchronisationsstatus, Trip-/Reset-Counter, Anbindung an Zeitbasen).+ GetTxFreshness(): Liefert den aktuellen Freshness-Wert (vollständig bzw. trunkiert) für den Sendevorgang zur kryptografischen MAC-Generierung.+ GetRxFreshness(): Rekonstruiert anhand des empfangenen (trunkierten) Freshness-Werts und des lokalen Zustands den vollständigen Freshness-Wert zur MAC-Verifikation.
- Stereotyp
- Beziehung:
- Gerichtete Abhängigkeit (
Dependencymit Stereotyp«use») vom ClusterCommunication Managementauf das InterfaceFVM. Zeigt lose Kopplung via Dependency Injection / Interface-Abstraktion.
- Gerichtete Abhängigkeit (
3. Dynamisches Verhalten & Sequenzablauf
- Initialisierungsphase:
- Beim Startup des Kommunikations-Stacks ruft
Communication ManagementsynchronInitialize()auf, um den internen Zustandsautomaten des FVM und etwaige Sync-Mechanismen scharfzuschalten.
- Beim Startup des Kommunikations-Stacks ruft
- Sendepfad (TX-Sequenz):
- Eine Service-Instanz oder ein Socket-Binding initiiert den Versand einer authentifizierten Nachricht/PDU.
Communication Managementruft synchronGetTxFreshness()auf.- Der zurückgegebene Freshness-Wert wird an das Crypto-Modul übergeben, in den Datenstrom für die CMAC-/HMAC-Berechnung eingefügt und ggf. trunkiert im Header übertragen.
- Empfangspfad (RX-Sequenz):
- Eine eingehende authentifizierte Nachricht trifft im Binding ein.
Communication Managementextrahiert den trunkierten Freshness-Wert und ruft synchronGetRxFreshness()auf.- FVM rekonstruiert den vollständigen Zähler-/Zeitstempelwert.
- Schlägt die Rekonstruktion fehl (z. B. Out-of-Sync oder Replay-Verdacht), bricht
Communication Managementdie Verarbeitung ab und verwirft die PDU.
4. Normative Relevanz & Entwickler-Hinweise
- Architektur & Integration (Platform Extension):
- Das FVM ist als
«aapPlatformExtension»modular ausgelegt. Der Integrator muss eine konkrete FVM-Implementierung bereitstellen, die das OEM-spezifische Freshness-Protokoll (z. B. Time-Sync über gPTP/AUTOSAR Time Synchronization oder Trip-Counter-Verfahren nach SecOC) abbildet.
- Das FVM ist als
- Echtzeitanforderungen & Reentrancy:
GetTxFreshness()undGetRxFreshness()liegen direkt im synchronen Serialisierungs-/Deserialisierungspfad vonara::com. Die Implementierung muss zwingend reentrant, threadsicher und latenzarm (ohne blockierende I/O oder Mutex-Contention) sein.
- Kopplung an Krypto-Subsysteme:
- Das Interface übergibt die Werte typischerweise an die PDU-Router- bzw. SOME/IP-Transformator-Schicht, welche diese Werte mit dem
Crypto Stack(ara::crypto) zur Signatur-/MAC-Erzeugung zusammenführt.
- Das Interface übergibt die Werte typischerweise an die PDU-Router- bzw. SOME/IP-Transformator-Schicht, welche diese Werte mit dem
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.