AUTOSAR_SWS_SecureOnboardCommunication
FIG-ede55e066a70cc62
896 × 1276 px
1 Release(s)
Figure 14: Verification with upper layer TP
SHA-256 Inhalts-Fingerabdruck:
ede55e066a70cc624665b01de9f0eeb2b02baecd248b760c57e0fb1fea7626cb
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Sequenzdiagramm (Interaktionsdiagramm) mit kombinierten Fragmenten (
loop,opt) und Task-Kontext-Annotation (scheduled main task). - Funktionale Einordnung: Veranschaulicht den Empfangs- und Verifikationspfad von segmentierten bzw. großvolumigen I-PDUs über Transportprotokoll-Schnittstellen (TP) im AUTOSAR Classic Communication Stack (
AUTOSAR_SWS_SecureOnboardCommunication). - Technischer Zweck: Spezifikation der Entkopplung zwischen dem physikalischen TP-Empfang (durch
CanTp), der Zwischenpufferung und kryptografischen Verifikation (durchSecOC) sowie der verzögerten Weitergabe der verifizierten Nutzdaten an die Applikations-/Signalschicht (Com). Es wird sichergestellt, dass unvollständige oder manipulierte TP-Nachrichten die oberen Schichten niemals erreichen.
2. Komponenten, Entitäten & Schnittstellen
- Beteiligte Module (
«module»):CanTp: Untere TP-Schicht (Transport Layer), zuständig für Segmentierung, Flusssteuerung und Reassemblierung auf dem CAN-Bus.PduR: PDU-Router; leitet TP-API-Aufrufe zwischen Quell- und Zielmodulen über konfigurierte Routing-Pfade weiter.SecOC: Secure Onboard Communication Modul; implementiert Verifikation (MAC/Signaturprüfung via CSM/Crypto Stack) und Pufferung.Com: AUTOSAR Communication Modul; Signalverarbeitung und Bereitstellung für die RTE/SW-Cs.
- Verwendete TP-Datentypen & Schnittstellen:
BufReq_ReturnType: Rückgabestatus für Pufferabfragen (BUFREQ_OK,BUFREQ_E_NOT_OK,BUFREQ_E_BUSY,BUFREQ_E_OVFL).PduIdType: Kennung der empfangenen TP-PDU.PduInfoType*: Zeiger auf Puffer-Metadaten (SduDataPtr,SduLength).PduLengthType,PduLengthType*: Größenangaben und verbleibender freier Pufferplatz.Std_ReturnType: Statusrückmeldung der Indication (E_OK,E_NOT_OK).
3. Dynamisches Verhalten & Sequenzablauf
Phase 1: Initialisierung des TP-Empfangs (Synchroner Pfad)
CanTpsignalisiert den Empfang des ersten Segments / Start-Frames viaPduR_CanTpStartOfReception(...).PduRroutet synchron aufSecOC_StartOfReception(...).SecOCführt internprepare()aus (Prüfung und Allokation von internem Puffer/Kontext für die gesicherte PDU).SecOCinitiiert überPduR_SecOCTpStartOfReception()den Empfangspfad zuCom_StartOfReception().- Nach Bestätigung durch
Com(BUFREQ_OK) quittiertSecOCgegenüberCanTpmitBUFREQ_OK(inklusive Puffergrößenverhandlung viaPduLengthType*).
Phase 2: Segmentierter Datentransfer (loop)
- Für jedes eintreffende TP-Segment ruft
CanTpPduR_CanTpCopyRxData(...)auf. - Weiterleitung via
PduRanSecOC_CopyRxData(...). SecOCkopiert das Segment in den internen Puffer (copyData()) und antwortet synchron mitBUFREQ_OK.- Der Pufferfortschritt wird über
PduRanCanTpzurückgemeldet, bis alle Segmente übertragen sind.
Phase 3: Abschluss des TP-Empfangs (opt)
- Nach Eingang des letzten Segments meldet
CanTpden vollständigen Empfang viaPduR_CanTpRxIndication(..., E_OK). - Weiterleitung an
SecOC_TpRxIndication(...). - Zu diesem Zeitpunkt sind die Rohdaten vollständig in
SecOCgepuffert, aber noch nicht anComübergeben.
Phase 4: Asynchrone Verifikation (scheduled main task)
- Im zyklischen Kontext (
SecOC_MainFunctionRx) prüftSecOC, ob zu verarbeitende Nachrichten anstehen (Polling-Bedingung: „Checks first if messages need to be processed: if yes it does the processing, if not it returns“). - Ausführung von
verify(): Kryptografische Validierung der Authenticator-/Freshness-Daten (z. B. CMAC über SDU + Freshness Value via CSM).
Phase 5: Weiterleitung der authentifizierten Daten an Com (opt [successful verification])
- Loop
[while all data copied]:SecOCtriggertPduR_SecOCTpCopyRxData()→Com_CopyRxData().ComführtcopyData()in die Signalpuffer aus und quittiert mitBUFREQ_OK. - Opt
[all data copied]: Nach vollständiger Übergabe signalisiertSecOCden erfolgreichen Abschluss viaPduR_SecOCTpRxIndication()→Com_TpRxIndication().
4. Normative Relevanz & Entwickler-Hinweise
- Puffer-Allokation & Dimensionierung:
SecOCbenötigt vollständigen Puffer-Speicher für die größte konfigurierte Secured I-PDU im TP-Pfad (SecOCTpRxPduBufferRef/ konfigurierte Puffergröße). Da die Verifikation erst nach vollständigem Empfang erfolgen kann, ist ein Streaming direkt inComnormativ ausgeschlossen. - Routing-Konfiguration (
PduR): Für eine gesicherte TP-Verbindung existieren zwei getrennte PduR-Routen:- Lower TP zu
SecOC:CanTp→PduR→SecOC(PduR-Routing-Path für Secured PDU). SecOCzu Upper Layer:SecOC→PduR→Com(PduR-Routing-Path für Authentic PDU).
- Lower TP zu
- Latenz & Task-Scheduling: Die Latenzzeit bis zur Signalverfügbarkeit in
Comhängt direkt von der Zykluszeit derSecOC_MainFunctionRxsowie der Rechenzeit der Verifikation (verify(), synchron oder asynchron via Crypto Stack/CSM) ab. Dies muss im Worst-Case-Execution-Time-Budget (WCET) berücksichtigt werden. - Fehlerbehandlung: Schlägt die Verifikation fehl (
verify()fehlerhaft) oder brichtCanTpvorzeitig mitE_NOT_OKab, unterbleibt der Aufruf vonPduR_SecOCTpRxIndicationin RichtungCom. Der interne Puffer inSecOCwird verworfen;Comerhält keinerlei Datenreste.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.