DEENESPTFRRUARHIKOZHNL

Secure Onboard Communication (SecOC)

ModulSecOC (Secure Onboard Communication)
BSW-Modul-ID150
Standard-Header#include "SecOC.h"
SWS-SpezifikationAUTOSAR_SWS_SecureOnboardCommunication.pdf
ClusterSecurity & Intrusion Detection

ModulegidsAI-GEGENEREERD

Beveiligt I-PDU's met authenticator en Freshness Value tegen manipulatie en replay naast de PDU-router.
DOOR AI GEGENEREERD ongecontroleerd Model: claude-opus-5-5 · Inspanning: high · Temperatuur: niet regelbaar · Prompt: e42ecdfc6fe3 Herkomst Open vragen (2)
Causaal anker: R20-11 Geldig vanaf R20-11 Nieuw gesynthetiseerd voor deze specificatiestand.
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Beveiligt I-PDU's met authenticator en Freshness Value tegen manipulatie en replay naast de PDU-router.

SecOC beschermt I-PDU's tegen manipulatie en replay. Daartoe voegt het bij het verzenden een authenticator en een Freshness Value toe en controleert het beide bij ontvangst. De acceptatie van een PDU en de cryptografische verwerking zijn ontkoppeld: pas de cyclische hoofdfuncties authenticeren respectievelijk verifiëren in zes stappen ([SWS_SecOC_00040]). De cryptografie wordt geleverd door de CSM, de Freshness Value door een externe Freshness Manager. Een beperkt aantal herhaalpogingen bepaalt wanneer een ontvangen PDU wordt verworpen en een verificatiestatus wordt gemeld ([SWS_SecOC_00241]).

SecOC beveiligt I-PDU's in de communicatiestack. Het bevindt zich naast de PduR en voegt aan elke Authentic I-PDU de Authenticator en een eventueel ingekorte Freshness Value toe. Zo ontstaat een Secured I-PDU (SWS SecOC p. 39). De Authenticator wordt berekend over Data Identifier, gebruikersdata en volledige Freshness Value (SWS SecOC p. 29). De cryptografie wordt geleverd door de CSM ([SWS_SecOC_00138]), de Freshness Value door een Freshness Manager via RTE of C-functie ([SWS_SecOC_91001], [SWS_SecOC_00230]).

kontext com Com / obere Schicht pdur PduR com->pdur Authentic I-PDU secoc SecOC pdur->secoc SecOC_[If|Tp]Transmit, SecOC_RxIndication, SecOC_StartOfReception lower Untere Schicht (CanIf, FrIf, CanTp …) pdur->lower Secured I-PDU secoc->pdur PduR_SecOCTransmit, PduR_SecOC…RxIndication csm Csm secoc->csm Csm_MacGenerate / Csm_MacVerify fvm Freshness Manager (SW-C via RTE of C-functie) secoc->fvm Get[Tx|Rx]Freshness…, SPduTxConfirmation, VerificationStatusCallout app SW-C (Verifikationsstatus) secoc->app VerificationStatusIndication det Det secoc->det SECOC_E_… idsm IdsM secoc->idsm Security Events app->secoc SecOC_VerifyStatusOverride, SecOC_SendDefaultAuthenticationInformation lower->pdur Secured I-PDU (Empfang)

Contextdiagram: SecOC tussen PduR, CSM, Freshness Manager, applicatie, DET en IdsM. Bronnen: [SWS_SecOC_00138], [SWS_SecOC_91001], [SWS_SecOC_00273]

Verzenden en ontvangen zijn ontkoppeld. Bij SecOC_[If|Tp]Transmit kopieert SecOC alleen de gebruikersdata. Pas de cyclische SecOC_MainFunctionTx berekent de Authentication Information en initieert de overdracht via de PduR (SWS SecOC p. 40, [SWS_SecOC_00176]). Ontvangen Secured I-PDU's buffert SecOC volledig en controleert deze in SecOC_MainFunctionRx in zes stappen, van het parsen tot de doorgifte naar boven ([SWS_SecOC_00040], [SWS_SecOC_00255]). De module werkt alleen in de toestand SECOC_INIT, die door SecOC_Init tot stand wordt gebracht en door SecOC_DeInit weer wordt opgeheven ([SWS_SecOC_00162], [SWS_SecOC_00161]).

Pogingen tot herhaling bij ontvangst worden gestuurd door twee tellers ([SWS_SecOC_00237], [SWS_SecOC_00239], [SWS_SecOC_00240], [SWS_SecOC_00241]):

  • De Build-teller telt tijdelijke knelpunten zoals E_BUSY.
  • De Verify-teller telt mislukte MAC-vergelijkingen.
  • Bereikt een van beide zijn limiet, dan wordt de PDU verworpen.

Bij het verzenden leidt een bereikte limiet tot SECOC_E_CRYPTO_FAILURE en, indien vrijgegeven, tot verzending met default-patroon ([SWS_SecOC_00155], [SWS_SecOC_00229]).

rxverifikation a Secured I-PDU volledig ontvangen Build-teller = 0, verify-teller = 0 b Freshness abfragen (SecOC_GetRxFreshness / …AuthData) a->b c Ergebnis Freshness? b->c d Build-teller + 1 c->d E_BUSY h Verwerfen: SECOC_FRESHNESSFAILURE c->h E_NOT_OK i Csm_MacVerify c->i E_OK e Build-teller >= SecOCAuthenticationBuildAttempts? d->e f Herhaling in de volgende SecOC_MainFunctionRx e->f nein g Verwerfen: SECOC_AUTHENTICATIONBUILDFAILURE e->g ja f->b j Ergebnis Verifikation? i->j j->d E_BUSY, QUEUE_FULL k Verify-teller + 1, build-teller = 0 j->k MAC ongeldig m Verwerfen: SECOC_VERIFICATIONFAILURE j->m onherstelbaar (E_NOT_OK, KEY_FAILURE) n SECOC_VERIFICATIONSUCCESS, Authentic I-PDU an obere Schicht j->n erfolgreich l Verify-teller >= SecOCAuthenticationVerifyAttempts? k->l l->b nee: volgende geldige Freshness Value l->m ja

Activiteitendiagram: Build- en Verify-teller beslissen over herhaling of verwerpen. Bronnen: [SWS_SecOC_00239], [SWS_SecOC_00241]

Het resultaat van elke poging meldt SecOC als SecOC_VerificationStatusType, afhankelijk van de configuratie aan softwarecomponenten en aan de Freshness Manager ([SWS_SecOC_00271], [SWS_SecOC_00243]). Met SecOC_VerifyStatusOverride kan de verificatie gericht worden overstuurd ([SWS_SecOC_00122]). Bij opsplitsing in Authentic en Cryptographic I-PDU wordt pas geverifieerd wanneer beide delen met passende Message Linker aanwezig zijn ([SWS_SecOC_00211]).

Rol naast de PduR en systeemgrens

SecOC bevindt zich in de lagenarchitectuur naast de PDU-router. Het zet een Authentic I-PDU om in een Secured I-PDU door Authentication Information direct achter de gebruikersdata toe te voegen: de Authenticator en de eventueel ingekorte Freshness Value (SWS SecOC p. 39, SWS SecOC p. 43). Geen enkele andere module mag afhankelijk zijn van SecOC, zodat een systeem ook zonder SecOC kan worden gebouwd. MetaData van een Authentic PDU verschijnen ongewijzigd in de Secured PDU en omgekeerd ([SWS_SecOC_00212]).

De Authenticator wordt berekend over de aaneenschakeling van drie delen: SecOCDataId, beveiligd deel van de Authentic I-PDU en volledige Freshness Value (SWS SecOC p. 29). De cryptografie wordt geleverd door de CSM, bijvoorbeeld met Csm_MacGenerate en Csm_MacVerify ([SWS_SecOC_00138]). De Freshness Value wordt beschikbaar gesteld door een Freshness Manager, hetzij via de RTE-poort FreshnessManagement hetzij via C-functies ([SWS_SecOC_91001], [SWS_SecOC_00230]). Verdere ontvangers van meldingen zijn:

kontext com Com / obere Schicht pdur PduR com->pdur Authentic I-PDU secoc SecOC pdur->secoc SecOC_[If|Tp]Transmit, SecOC_RxIndication, SecOC_StartOfReception lower Untere Schicht (CanIf, FrIf, CanTp …) pdur->lower Secured I-PDU secoc->pdur PduR_SecOCTransmit, PduR_SecOC…RxIndication csm Csm secoc->csm Csm_MacGenerate / Csm_MacVerify fvm Freshness Manager (SW-C via RTE of C-functie) secoc->fvm Get[Tx|Rx]Freshness…, SPduTxConfirmation, VerificationStatusCallout app SW-C (Verifikationsstatus) secoc->app VerificationStatusIndication det Det secoc->det SECOC_E_… idsm IdsM secoc->idsm Security Events app->secoc SecOC_VerifyStatusOverride, SecOC_SendDefaultAuthenticationInformation lower->pdur Secured I-PDU (Empfang)

Contextdiagram: SecOC bemiddelt tussen PduR, CSM, Freshness Manager en applicatie en meldt aan DET en IdsM. Bronnen: SWS SecOC p. 24, [SWS_SecOC_00138], [SWS_SecOC_91001], [SWS_SecOC_00273]

Dezelfde mechanismen ondersteunen ook gateways. SecOC ondersteunt re-authenticatiegateways tussen veiligheidszones, waarbij elke bewerking afzonderlijk wordt geconfigureerd. „Gatewaying-on-the-fly” wordt niet ondersteund (SWS SecOC p. 57).

Initialisatie, modultoestand en cyclische hoofdfuncties

De modultoestand SecOC_StateType kent SECOC_UNINIT en SECOC_INIT ([SWS_SecOC_00162]).

  • SecOC_Init ontvangt een implementatiespecifieke SecOC_ConfigType en leidt bij succes naar SECOC_INIT. Bij toewijzing aan meerdere partities is per partitie een Init-functie mogelijk ([SWS_SecOC_00106], [SWS_SecOC_00104]).
  • SecOC_DeInit verwerpt alle gebufferde I-PDU's en zet de module terug naar de niet-geïnitialiseerde toestand ([SWS_SecOC_00161]). Daarbij worden ook interne variabelen en buffers gewist (SWS SecOC p. 65).
  • Een aanroep zonder voorafgaande initialisatie meldt SECOC_E_UNINIT ([SWS_SecOC_00101]).

De feitelijke verwerking wordt uitgevoerd door SecOC_MainFunctionTx en SecOC_MainFunctionRx. Per geconfigureerde instantie ontstaat een eigen functie …_<shortName> ([SWS_SecOC_00176], [SWS_SecOC_00171]). De periode daarvan is configureerbaar (SWS SecOC p. 130, SWS SecOC p. 129). Elke SecOCTxPduProcessing draait in de gereferentieerde instantie ([SWS_SecOC_00276]).

Zonder initialisatie keert de Tx-hoofdfunctie direct terug. Anders authenticeert zij alle nieuwe Authentic I-PDU's in dezelfde aanroep en initieert de overdracht daarvan direct via de PduR (SWS SecOC p. 84).

lebenszyklus start Start uninit SECOC_UNINIT start->uninit uninit->uninit SecOC_MainFunctionTx: onmiddellijke terugkeer; API-aanroep: SECOC_E_UNINIT init SECOC_INIT uninit->init SecOC_Init(config) erfolgreich init->uninit SecOC_DeInit(): gebufferde I-PDU's, variabelen en buffers wissen init->init SecOC_MainFunctionTx/Rx: authenticatie resp. verificatie

Toestandsdiagram: Init en DeInit schakelen tussen SECOC_UNINIT en SECOC_INIT; de hoofdfunctie werkt alleen in de geïnitialiseerde toestand. Bronnen: [SWS_SecOC_00162], [SWS_SecOC_00106], [SWS_SecOC_00161], SWS SecOC p. 84

Verzenden: van Authentic naar Secured I-PDU

Het verzendpad is ontkoppeld en verloopt in twee fasen (SWS SecOC p. 40):

  1. De bovenste laag roept PduR_<Up>Transmit aan, de PduR roept SecOC_[If|Tp]Transmit aan. SecOC kopieert de Authentic I-PDU volledig naar het eigen geheugen en keert terug ([SWS_SecOC_00252]).
  2. In de volgende cyclus van de hoofdfunctie ontstaat de Secured I-PDU en initieert SecOC de overdracht via de PduR.

Bevestigingen van de onderste laag geeft SecOC via PduR_SecOC[If|Tp]TxConfirmation door naar boven ([SWS_SecOC_00063]).

De authenticatie omvat zes stappen: voorbereiden, DataToAuthenticator samenstellen, Authenticator genereren, Secured I-PDU samenstellen, Freshness Counter ophogen, verzenden. Data Id (16 bit) en Freshness Value worden hierbij in Big Endian opgenomen (SWS SecOC p. 33).

Is de versheidsbron een C-functie (CFUNC), dan haalt SecOC de waarde op via SecOC_GetTxFreshness. Moet de Freshness Manager de ingekorte waarde zelf leveren, dan dient daartoe SecOC_GetTxFreshnessTruncData ([SWS_SecOC_00231], [SWS_SecOC_00230]). Het aanzetten tot verzending meldt SecOC met SecOC_SPduTxConfirmation respectievelijk via RTE ([SWS_SecOC_00232], [SWS_SecOC_00233]). Ongebruikte bereiken worden gevuld met SecOCTxPduUnusedAreasDefault ([SWS_SecOC_00269]).

Authenticatie bij directe overdracht (bus-interface)ComPduRSecOCFreshness ManagerCsmUntere Schicht (z. B. CanIf)PduR_ComTransmit()SecOC_IfTransmit()Authentic I-PDU compleetin eigenen Puffer kopierenE_OKUse Case: SecOC_MainFunctionTx (volgende aanroep)SecOC_GetTxFreshness()resp. SecOC_GetTxFreshnessTruncData()E_OK, Freshness ValueCsm_MacGenerate(DataToAuthenticator)AuthenticatorAsynchroner Csm-Job: Ergebnis per CallbackSecured I-PDU bilden:Authentic I-PDU | Freshness Value (ingekort) | AuthenticatorPduR_SecOCTransmit()Transmit (Secured I-PDU)SecOC_SPduTxConfirmation()Use Case: BevestigingTxConfirmation(result)SecOC_TxConfirmation(result)PduR_SecOCIfTxConfirmation(result)TxConfirmation(result)

Sequentiediagram: De acceptatie van de Authentic I-PDU en de authenticatie in de volgende cyclus van de hoofdfunctie zijn ontkoppeld. Bronnen: SWS SecOC p. 40, [SWS_SecOC_00231], [SWS_SecOC_00232], [SWS_SecOC_00063]

Bij getriggerde overdracht moet vooraf minstens één SecOC_IfTransmit hebben plaatsgevonden. Zonder beschikbare data antwoordt SecOC_TriggerTransmit met E_NOT_OK, en AlwaysTransmit mag niet worden gebruikt (SWS SecOC p. 44, [SWS_SecOC_00127]).

Voor SECOC_TPPDU start SecOC_TpTransmit het proces. SecOC haalt de data stapsgewijs op met PduR_SecOCTpCopyTxData ([SWS_SecOC_00253], [SWS_SecOC_00254]). De TP-module leest aansluitend uit via SecOC_CopyTxData ([SWS_SecOC_00129]).

Authenticatie met transportprotocol (SECOC_TPPDU)ComPduRSecOCCanTpPduR_ComTransmit()SecOC_TpTransmit()looptotdat Authentic I-PDU volledig gekopieerd isPduR_SecOCTpCopyTxData()Com_CopyTxData()BUFREQ_E_BUSY: herhaling in de volgende Main-Function-aanroepBUFREQ_E_NOT_OK: AbbruchUse Case: SecOC_MainFunctionTxauthenticate()PduR_SecOCTransmit()CanTp_Transmit()loopje N-PDUPduR_CanTpCopyTxData()SecOC_CopyTxData()PduR_CanTpTxConfirmation()SecOC_TpTxConfirmation()PduR_SecOCTpTxConfirmation()Com_TpTxConfirmation()

Sequentiediagram: Bij TP-verzending is SecOC naar boven TP-ontvanger en naar beneden TP-bron. Bronnen: SWS SecOC p. 109, [SWS_SecOC_00253], [SWS_SecOC_00254]

Met SecOCTxSecuredPduCollection wordt de Secured I-PDU opgesplitst in twee berichten:

  • de Authentic I-PDU,
  • een Cryptographic I-PDU bestaande uit Authentication Data en Message Linker.

Beide worden in dezelfde cyclus verzonden ([SWS_SecOC_00201], [SWS_SecOC_00209], [SWS_SecOC_00202]). De bevestiging naar boven is alleen dan E_OK wanneer beide delen met E_OK zijn bevestigd ([SWS_SecOC_00270]).

Ontvangen en verifiëren

De verificatie omvat zes stappen ([SWS_SecOC_00040]):

  1. Authentic I-PDU, Freshness Value en Authenticator parsen,
  2. Freshness Value opvragen bij de Freshness Manager,
  3. de te controleren data samenstellen,
  4. de Authentication Information controleren,
  5. de Freshness Manager bevestigen,
  6. de Authentic I-PDU doorgeven aan de bovenliggende laag.

SecOC kopieert de Secured I-PDU eerst naar het eigen geheugen en verifieert deze in de volgende cyclus van de hoofdfunctie (SWS SecOC p. 50). Via bus-interfaces komt deze binnen per SecOC_RxIndication ([SWS_SecOC_00124]). Is een I-PDU met statische lengte korter dan geconfigureerd, dan wordt deze stilzwijgend verworpen ([SWS_SecOC_00268]). De lengte van de Authentic I-PDU is afkomstig uit de configuratie, van de onderste laag of uit de header ([SWS_SecOC_00257], [SWS_SecOC_00258], [SWS_SecOC_00259]).

Ontvangst via bus-interface en freshness-afhandelingPduRSecOCSchMFreshness ManagerCsmSecOC_RxIndication()Secured I-PDU puffern,Build- en verify-teller = 0SecOC_MainFunctionRx()loopAuthentication verify attempts [MAC-Verifikation fehlgeschlagen]loopAuthentication build attempts [GetRxFreshness()==E_BUSY || Csm_MacVerify()==E_BUSY]GetRxFreshness()Freshness ValueCsm_MacVerify()VerifikationsergebnisVerificationStatus()

Sequentiediagram: Freshness-opvraag en MAC-verificatie lopen in de context van de Rx-hoofdfunctie in twee geneste herhalingslussen. Bronnen: SWS SecOC p. 103, [SWS_SecOC_00237], [SWS_SecOC_00238]

Bij het transportprotocol verloopt de ontvangst als volgt ([SWS_SecOC_00130], [SWS_SecOC_00128], [SWS_SecOC_00125]):

  • SecOC_StartOfReception reserveert bufferruimte voor de gehele Secured I-PDU,
  • SecOC_CopyRxData neemt de afzonderlijke segmenten over,
  • SecOC_TpRxIndication meldt het einde van de ontvangst.

Pas na volledige ontvangst mag SecOC de Authentic I-PDU doorgeven ([SWS_SecOC_00255]). Interpretatie volgens het diagram: Het doorgeven aan de bovenste laag zou pas na succesvolle verificatie mogen beginnen (SWS SecOC p. 112). Vraag Q-d5c1780d034c722e (open) In afwijking daarvan geeft versie R23-11 de start van de ontvangst al in SecOC_StartOfReception door (SWS SecOC p. 54).

Verificatie met transportprotocolCanTpPduRSecOCComPduR_CanTpStartOfReception()SecOC_StartOfReception()BUFREQ_OK (buffer voor volledige Secured I-PDU)loopje N-PDUPduR_CanTpCopyRxData()SecOC_CopyRxData()BUFREQ_OKPduR_CanTpRxIndication()SecOC_TpRxIndication(E_OK)Use Case: SecOC_MainFunctionRxverify()optsuccesvolle verificatie (interpretatie van de volgorde volgens schema)PduR_SecOCTpStartOfReception()Com_StartOfReception()looptotdat alle gegevens zijn gekopieerdPduR_SecOCTpCopyRxData()Com_CopyRxData()PduR_SecOCTpRxIndication()Com_TpRxIndication()

Sequentiediagram: SecOC buffert de gehele Secured I-PDU; het doorgeven aan Com volgt (interpretatie) pas na succesvolle verificatie. Bronnen: SWS SecOC p. 112, [SWS_SecOC_00255]

Met SecOCRxSecuredPduCollection verifieert SecOC pas wanneer Authentic en Cryptographic I-PDU met passende Message Linker aanwezig zijn ([SWS_SecOC_00203], [SWS_SecOC_00211]). Daarvoor houdt het gescheiden buffers aan ([SWS_SecOC_00204]):

  • Na succesvolle verificatie worden beide buffers geleegd ([SWS_SecOC_00207]).
  • Na een mislukking blijven beide behouden, en bij elke nieuwe binnenkomst wordt opnieuw geverifieerd ([SWS_SecOC_00208]).

De overloopstrategie QUEUE sluit deze opsplitsing uit ([SWS_SecOC_CONSTR_00265]).

Freshness Manager, verificatiestatus en override

SecOC beheert de versheid niet zelf. Afhankelijk van SecOCQueryFreshnessValue (RTE of CFUNC) en SecOCUseAuthDataFreshness vraagt het GetRxFreshness of GetRxFreshnessAuthData op. In het tweede geval draagt het bovendien een geconfigureerd deel van de ontvangen PDU over ([SWS_SecOC_00244], [SWS_SecOC_00245], [SWS_SecOC_00246], [SWS_SecOC_00247]). Meegegeven worden daarnaast de ingekorte Freshness Value en het aantal eerdere verificatiepogingen ([SWS_SecOC_91007], [SWS_SecOC_91006]).

De waarden zijn beschikbaar als SecOC_FreshnessArrayType ([SWS_SecOC_91012]), met het meest significante bit in de eerste byte, dus Big Endian (SWS SecOC p. 80). De retourwaarde E_BUSY betekent dat de waarde tijdelijk niet beschikbaar is ([SWS_SecOC_91002]).

Het resultaat van elke poging vat SecOC_VerificationStatusType samen: freshnessValueID plus een waarde uit SecOC_VerificationResultType, zoals SECOC_FRESHNESSFAILURE ([SWS_SecOC_00160], [SWS_SecOC_00149]). Het wordt gemeld afhankelijk van modus BOTH, FAILURE_ONLY of NONE ([SWS_SecOC_00271], [SWS_SecOC_91016]). Optioneel wordt alleen de eindstatus doorgegeven ([SWS_SecOC_00272]). De Freshness Manager ontvangt het resultaat via SecOC_VerificationStatusCallout ([SWS_SecOC_00119], [SWS_SecOC_00243]).

SecOC_VerifyStatusOverride overstuurt de verificatie gericht ([SWS_SecOC_00122]). In R20-11 kent SecOC_OverrideStatusType onder andere …DROP_UNTIL_NOTICE, …DROP_UNTIL_LIMIT, …CANCEL en …PASS_UNTIL_NOTICE ([SWS_SecOC_00991]). R23-11 vult dit aan met …SKIP_UNTIL_LIMIT en …PASS_UNTIL_LIMIT (SWS SecOC p. 102). Aan de verzendzijde schakelt SecOC_SendDefaultAuthenticationInformation het default-patroon per Freshness Value ID in of uit ([SWS_SecOC_91013]).

Configuratie en instantierelatie

De configuratie is onderverdeeld in drie containers:

Centrale parameters zijn SecOCDataId, SecOCFreshnessValueId, de lengtes van freshness en Authenticator, evenals de CsmJob-referentie (SWS SecOC p. 106). Werkt een CSM-job asynchroon, dan heeft SecOC daarvoor fabrikantspecifieke callbacks nodig (SWS SecOC p. 78).

Enkele poorten bestaan alleen bij passende configuratie:

  • SendDefaultAuthenticationInformation alleen wanneer een default-patroon is ingesteld ([SWS_SecOC_91020]),
  • FreshnessManagement alleen bij opvraag via RTE ([SWS_SecOC_91001]).

Security Events worden alleen gemeld wanneer SecOCEnableSecurityEventReporting is ingesteld ([SWS_SecOC_00273]).

Gedrag in het foutgeval

Aan de verzendzijde geldt:

  • Bij herstelbare CSM-fouten zoals E_BUSY of QUEUE_FULL behoudt SecOC de Authentic I-PDU en probeert het opnieuw in de volgende cyclus ([SWS_SecOC_00151]).
  • Is de pogingenlimiet bereikt, dan meldt het SECOC_E_CRYPTO_FAILURE aan DET ([SWS_SecOC_00155]).
  • Bij een bereikte limiet, freshness-E_NOT_OK of een niet-herstelbare fout gebruikt SecOC het default-patroon, voor zover dit is vrijgegeven ([SWS_SecOC_00229]).
  • Als er geen patroon is geconfigureerd, breekt SecOC de opdracht af (SWS SecOC p. 124).
  • Bij een geconfigureerd, maar niet vrijgegeven patroon zou SecOC eveneens moeten afbreken. Vraag Q-a3c1cc4b9b925ed4 (open)
txfehler a SecOC_MainFunctionTx: Authentifizierung starten b Freshness abfragen, Csm_MacGenerate a->b c Ergebnis? b->c d Authentic I-PDU behouden, volgende Main-Function-aanroep c->d behebbar (E_BUSY, QUEUE_FULL) g Default-Senden per SecOC_SendDefaultAuthenticationInformation freigegeben? c->g Freshness E_NOT_OK of onherstelbaar (E_NOT_OK, KEY_FAILURE) j Secured I-PDU via PduR verzenden c->j E_OK e SecOCAuthenticationBuildAttempts erreicht? d->e e->b nein e->g ja (aanvullend Det: SECOC_E_CRYPTO_FAILURE) h Freshness Value en authenticator uit SecOCDefaultAuthenticationInformationPattern g->h ja i Authentic I-PDU entfernen, Sendeauftrag abbrechen g->i geen patroon geconfigureerd; interpretatie: ook bij niet-vrijgegeven patroon h->j

Activiteitendiagram: herstelbare fouten leiden tot herhaling, limiet of harde fout tot het defaultpatroon of tot afbreken. Bronnen: [SWS_SecOC_00151], [SWS_SecOC_00155], [SWS_SecOC_00229], SWS SecOC p. 124

Afbrekingen en fouten van de naburige lagen behandelt SecOC als volgt:

  • SecOC_[If|Tp]CancelTransmit geeft SecOC direct naar onderen door en geeft alle buffers vrij (SWS SecOC p. 48, [SWS_SecOC_91009]).
  • Meldt de onderste laag E_NOT_OK, dan laat SecOC enkel de bevestiging naar boven achterwege.
  • Levert het ophalen van gegevens bij het TP-verzenden BUFREQ_E_BUSY op, dan herhaalt SecOC dit in de volgende cyclus ([SWS_SecOC_00260]).
  • BUFREQ_E_NOT_OK leidt zowel bij het verzenden als bij het ontvangen tot direct afbreken ([SWS_SecOC_00266], [SWS_SecOC_00267]).

Aan de ontvangstzijde houdt SecOC per PDU een build-teller en een verify-teller bij, beide beginnen bij 0 ([SWS_SecOC_00234], [SWS_SecOC_00235]):

rxverifikation a Secured I-PDU volledig ontvangen Build-teller = 0, verify-teller = 0 b Freshness abfragen (SecOC_GetRxFreshness / …AuthData) a->b c Ergebnis Freshness? b->c d Build-teller + 1 c->d E_BUSY h Verwerfen: SECOC_FRESHNESSFAILURE c->h E_NOT_OK i Csm_MacVerify c->i E_OK e Build-teller >= SecOCAuthenticationBuildAttempts? d->e f Herhaling in de volgende SecOC_MainFunctionRx e->f nein g Verwerfen: SECOC_AUTHENTICATIONBUILDFAILURE e->g ja f->b j Ergebnis Verifikation? i->j j->d E_BUSY, QUEUE_FULL k Verify-teller + 1, build-teller = 0 j->k MAC ongeldig m Verwerfen: SECOC_VERIFICATIONFAILURE j->m onherstelbaar (E_NOT_OK, KEY_FAILURE) n SECOC_VERIFICATIONSUCCESS, Authentic I-PDU an obere Schicht j->n erfolgreich l Verify-teller >= SecOCAuthenticationVerifyAttempts? k->l l->b nee: volgende geldige Freshness Value l->m ja

Activiteitendiagram: build- en verify-tellers sturen herhaling en verwerpen bij ontvangst. Bronnen: SWS SecOC p. 42, PRS SecOC p. 19, [SWS_SecOC_00239], [SWS_SecOC_00241]

Voor freshness-E_NOT_OK bevat R20-11 twee requirements naast elkaar. Het ene verwerpt de PDU direct met SECOC_FRESHNESSFAILURE ([SWS_SecOC_00256]). Het andere telt een mislukte poging en meldt bij een bereikte limiet SECOC_E_FRESHNESS_FAILURE aan DET ([SWS_SecOC_00248]). Daarnaast gaan security events naar de IdsM, zoals SECOC_SEV_MAC_VERIFICATION_FAILED met de DataId als context ([SWS_SecOC_00274], [SWS_SecOC_00275]).

Verdere gedetailleerde bewijzen

Door AI gegenereerde handleiding op basis van de in de payload opgenomen specificatie-uittreksels. Normatief voor R20-11 zijn de requirements; documentverwijzingen zijn deels afkomstig uit andere releases. Geen vervanging voor de specificatie.

Secure Onboard Communication (SecOC)

Provides cryptographic authentication and freshness protection for critical communication PDUs.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

functie SecOC_Init [SWS_SecOC_00106] 📄 PDF

void SecOC_Init (const SecOC_ConfigType* config);

Initializes the the Sec OC module. Successful initialization leads to state Sec OC_ INIT. In configurations, in which Sec OC is assigned to more than one partition (i.e. Sec OC_ Main Functions are mapped to partition s), Sec OC may provide one init AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_SecureOnboardCommunication function per partition. The decision on whether a single Sec OC_ Init() function or one per partition is provided is implementation - specific. In case a given implementation provides one Sec OC_ Init() function per partition, it is up to the implementation to devise a naming pattern that prevents name clashes among the different Sec OC_ Init() functions (e.g., by adding a suffix containing short name the Ecuc Partition.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 4620b5d490e2 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie SecOC_Init dient voor de initialisatie van de module SecOC en brengt deze bij succesvolle afronding in de toestand SecOC_INIT [SWS_SecOC_00106]. De aanroep vindt plaats via de interface uit SecOC.h met de service-ID 0x01 [SWS_SecOC_00106].

Parameters en retourwaarden

  • Overdrachtsparameter: Via de invoerparameter config wordt een pointer naar een geselecteerde configuratiestructuur van het type SecOC_ConfigType overgedragen [SWS_SecOC_00106].
  • Retourwaarde: De functie heeft geen retourwaarde (void) [SWS_SecOC_00106].

Gelijktijdigheid en partitionering

De uitvoering van SecOC_Init is gespecificeerd als niet-reentrant (Non Reentrant) [SWS_SecOC_00106].

Er gelden bijzondere voorschriften voor systemen met meerdere partities: Als de module SecOC aan meerdere partities is toegewezen (doordat hoofdfuncties zoals SecOC_MainFunction over partities worden verdeeld), kan er één init-functie per partitie bestaan [SWS_SecOC_00106]. Of er een centrale functie SecOC_Init of aparte functies per partitie beschikbaar worden gesteld, is implementatiespecifiek [SWS_SecOC_00106]. Worden partitiespecifieke functies aangeboden, dan moet de implementatie naamconflicten voorkomen, bijvoorbeeld door het toevoegen van een suffix met de korte naam van de desbetreffende EcucPartition [SWS_SecOC_00106].

Deze tekst is gegenereerd door een AI op basis van de specificatie AUTOSAR Classic R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_DeInit [SWS_SecOC_00161] 📄 PDF

void SecOC_DeInit (void);

This service stops the secure onboard communication. All buffered I - PDU are removed and have to be obtained again, if needed, after Sec OC_ Init has been called. By a call to Sec OC_ De Init the AUTOSAR Sec OC module is put into a not in itialized state (Sec OC_ UNINIT).

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: c3c9650a2dbc Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De synchrone functie SecOC_DeInit beëindigt de werking van de veilige on-board-communicatie in de SecOC-module en brengt deze over naar de toestand SecOC_UNINIT [SWS_SecOC_00161]. De functie is gedeclareerd in het headerbestand SecOC.h en heeft de service-ID 0x05 alsook de signatuur void SecOC_DeInit(void) [SWS_SecOC_00161]. Deze verwerkt noch invoer- noch uitvoerparameters en levert geen retourwaarde op [SWS_SecOC_00161].

Bufferopschoning en toestandsovergang

Met de aanroep van SecOC_DeInit worden alle in de module gebufferde I-PDU's verworpen en uit de buffers verwijderd [SWS_SecOC_00161]. Als deze gegevens na een herstart van de beveiligde communicatie nog steeds nodig zijn, moeten ze na een hernieuwde aanroep van SecOC_Init opnieuw worden opgevraagd [SWS_SecOC_00161].

Gelijktijdigheid en beperkingen

Voor de uitvoering van de deïnitialisatie gelden vaste voorschriften en randvoorwaarden [SWS_SecOC_00161]:

  • Niet-reentrant: De interface is gespecificeerd als niet-reentrant (Non Reentrant) en mag daarom niet concurrent worden uitgevoerd [SWS_SecOC_00161].
  • Volgordevoorwaarden: De module blijft na de aanroep in de ongeïnitialiseerde toestand, zodat navolgende communicatiediensten dwingend een hernieuwde aanroep van SecOC_Init vereisen [SWS_SecOC_00161].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-Classic-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_IfTransmit [SWS_SecOC_00112] 📄 PDF

Std_ReturnType SecOC_IfTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Requests transmission of a PDU.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 4ad6d7766599 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone servicefunctie SecOC_IfTransmit dient ertoe de overdracht van een PDU in module SecOC aan te vragen [SWS_SecOC_00112]. Deze heeft het service-ID 0x49 en wordt gedeclareerd via het headerbestand SecOC.h [SWS_SecOC_00112].

De functie verwacht twee ingangsparameters [SWS_SecOC_00112]:

  • TxPduId: De identifier van de te verzenden PDU (type PduIdType).
  • PduInfoPtr: Een pointer naar een structuur van het type PduInfoType, die de datalengte en pointers naar de PDU-data en naar metadata beschikbaar stelt.

Er bestaan noch invoer-/uitvoerparameters noch zuivere uitvoerparameters [SWS_SecOC_00112].

Retourwaarden en foutafhandeling

Als synchrone retourwaarde wordt een status van het type Std_ReturnType geretourneerd [SWS_SecOC_00112]:

Bij een fout wordt het mislukken van het verzoek direct gesignaleerd door E_NOT_OK; specifieke foutcodes voor DET of DEM zijn in de functiespecificatie niet afzonderlijk opgenomen [SWS_SecOC_00112].

Gelijktijdigheid en beperkingen

Wat de gelijktijdigheid betreft, is de functie re-entrant voor verschillende PDU-ID's, maar niet re-entrant voor dezelfde PDU-ID [SWS_SecOC_00112].

Deze gebruiksinstructie is door een AI gegenereerd op basis van de AUTOSAR-specificatie.

functie SecOC_TpTransmit [SWS_SecOC_91008] 📄 PDF

Std_ReturnType SecOC_TpTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Requests transmission of a PDU.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 4b4f6d06f1cb Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone interface SecOC_TpTransmit met service-ID 0x53 dient voor het aanvragen van een PDU-overdracht in de module SecOC en wordt gedeclareerd via het headerbestand SecOC.h [SWS_SecOC_91008]. Deze neemt het verzendverzoek in ontvangst en leidt de verdere verwerking binnen de module in.

Gebruik en samenspel

Als invoerparameters verwacht de functie de PDU-identificatie TxPduId evenals de pointer PduInfoPtr naar een constante van het type PduInfoType, die gegevens over de PDU-lengte alsook pointers naar de nuttige gegevens en metadata omvat [SWS_SecOC_91008]. De functionele interactie wordt bepaald door de configuratie: als SecOCPduType is geconfigureerd op SECOC_TPPDU, triggert de aanroep van SecOC_TpTransmit de concrete verzendoperatie voor een Authentic I-PDU [SWS_SecOC_00253].

Retourwaarden en concurrency

Het resultaat van de aanroep wordt via Std_ReturnType geretourneerd: De waarde E_OK bevestigt dat het verzendverzoek succesvol is geaccepteerd, terwijl E_NOT_OK betekent dat het verzoek is afgewezen [SWS_SecOC_91008]. Wat betreft het concurrencygedrag is de functie re-entrant geïmplementeerd voor verschillende PDU-identifiers, maar deze mag onder geen beding re-entrant worden aangeroepen voor dezelfde TxPduId [SWS_SecOC_91008].

Interpretatie: Het afwijzen van een verzoek met E_NOT_OK is in de praktijk vermoedelijk vooral toe te schrijven aan ongeldige pointerwaarden in PduInfoPtr of aan een reeds geblokkeerde respectievelijk lopende overdracht van dezelfde PDU. Vraag Q-4c6165f6330c4bc2 (open)

Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de specificatie AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_IfCancelTransmit [SWS_SecOC_00113] 📄 PDF

Std_ReturnType SecOC_IfCancelTransmit (PduIdType TxPduId);

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 93fdfc8c106e Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De synchrone interfacefunctie SecOC_IfCancelTransmit verzoekt om het afbreken van een lopende PDU-overdracht in een onderliggende communicatiemodule [SWS_SecOC_00113]. Deze is gedeclareerd via het headerbestand SecOC.h en heeft het service-ID 0x4a [SWS_SecOC_00113]. Via de overdrachtsparameter TxPduId van het type PduIdType wordt de PDU doorgegeven waarvan het verzendproces moet worden afgebroken [SWS_SecOC_00113]. Aanvullende invoer- of uitvoerparameters bestaan niet [SWS_SecOC_00113].

Retourwaarden en uitvoering

Het resultaat van het annuleringsverzoek wordt synchroon via de retourwaarde van het type Std_ReturnType aan de aanroeper doorgegeven [SWS_SecOC_00113]:

  • E_OK: De onderliggende doelmodule heeft het afbreken van de PDU-overdracht met succes uitgevoerd [SWS_SecOC_00113].
  • E_NOT_OK: Het afbreekverzoek is door de doelmodule afgewezen [SWS_SecOC_00113].

Aangezien specifieke foutcodes of foutmeldingen aan ontwikkelings- of diagnose-foutregistraties (DET/DEM) voor deze functie niet zijn gespecificeerd, dient uitsluitend de retourwaarde voor foutdetectie [SWS_SecOC_00113].

Gelijktijdigheid en beperkingen

Wat betreft parallelle aanroepen is SecOC_IfCancelTransmit re-entrant voor verschillende PDU-identificaties, maar expliciet niet re-entrant voor dezelfde TxPduId [SWS_SecOC_00113]. Aanroepende modules moeten daarom door geschikte synchronisatie waarborgen dat niet meerdere instanties tegelijkertijd het afbreken van de verzending voor dezelfde PDU initiëren.

Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_TpCancelTransmit [SWS_SecOC_91009] 📄 PDF

Std_ReturnType SecOC_TpCancelTransmit (PduIdType TxPduId);

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 507f9341fb59 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie SecOC_TpCancelTransmit dient ertoe het afbreken van een lopende PDU-overdracht in een onderliggende communicatiemodule aan te vragen [SWS_SecOC_91009]. Deze is gedeclareerd via het headerbestand SecOC.h en heeft de service-ID 0x54 [SWS_SecOC_91009].

Als invoerparameter wordt de identificatie TxPduId van het type PduIdType doorgegeven, die de af te breken zend-PDU eenduidig identificeert [SWS_SecOC_91009]. Het resultaat van het afbreekverzoek wordt synchroon teruggemeld via de retourwaarde van het type Std_ReturnType [SWS_SecOC_91009]:

  • E_OK: Het afbreken van de overdracht is met succes uitgevoerd door de doelmodule [SWS_SecOC_91009].
  • E_NOT_OK: Het afbreken is door de doelmodule afgewezen [SWS_SecOC_91009].

Met betrekking tot concurrency is de functie re-entrant voor verschillende PDU-ID's, maar expliciet niet re-entrant voor dezelfde PDU-ID [SWS_SecOC_91009]. Oproepers moeten er daarom voor zorgen dat parallelle aanroepen met identieke TxPduId worden vermeden. Aangezien de payload geen specifieke foutcodes voor de Default Error Tracer (DET) of Diagnostic Event Manager (DEM) bevat, vindt de directe foutafhandeling in de context van de oproeper vermoedelijk primair plaats via de evaluatie van de retourwaarde E_NOT_OK [SWS_SecOC_91009]. Vraag Q-c1f907444c4ca270 (open)

Deze gebruiksinstructie is automatisch gegenereerd en gebaseerd op de specificatie AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_TpCancelReceive [SWS_SecOC_91010] 📄 PDF

Std_ReturnType SecOC_TpCancelReceive (PduIdType RxPduId);

Requests cancellation of an ongoing reception of a PDU in a lower layer transport protocol module.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 7bc4b1ba75bb Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie SecOC_TpCancelReceive dient ertoe het afbreken van een lopend ontvangstproces van een PDU in een onderliggende transportprotocolmodule aan te vragen [SWS_SecOC_91010]. Via de enige invoerparameter RxPduId wordt aan de module de eenduidige identificatie van de af te breken PDU doorgegeven [SWS_SecOC_91010].

Retourwaarden en uitvoering

De terugmelding over het slagen van de annulering geschiedt onmiddellijk via de retourwaarde van het type Std_ReturnType [SWS_SecOC_91010]:

  • E_OK: De annulering van de ontvangst is door de doelmodule met succes uitgevoerd [SWS_SecOC_91010].
  • E_NOT_OK: De annulering is door de doelmodule afgewezen [SWS_SecOC_91010].

Specifieke foutcodes, ontwikkelingsfouten (DET) of productiefouten (DEM) zijn niet voorzien in de specificatiegegevens van de functie. Interpretatie: met de in de specificatie genoemde doelmodule (“destination module”) wordt vermoedelijk de onderliggende transportprotocolmodule bedoeld waartoe het afbreekverzoek is gericht. Vraag Q-bce6ed77e65a6b9b (open)

Gelijktijdigheid en integratie

Wat betreft concurrency is de functie als niet re-entrant (Non Reentrant) gedeclareerd [SWS_SecOC_91010]. Daarom mag er geen gelijktijdige of onderbrekende aanroep plaatsvinden; aanroepende software-eenheden moeten de toegangen dienovereenkomstig coördineren. De functie heeft de service-ID 0x4c en wordt gedeclareerd via het headerbestand SecOC.h [SWS_SecOC_91010].

Deze gebruiksinstructie is gegenereerd door een AI en is uitsluitend gebaseerd op de specificaties van AUTOSAR-release R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_VerifyStatusOverride [SWS_SecOC_00122] 📄 PDF

Std_ReturnType SecOC_VerifyStatusOverride (uint16 ValueID, SecOC_OverrideStatusType overrideStatus, uint8 numberOfMessagesToOverride);

Service SecOC_VerifyStatusOverride.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 87867716fd61 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie SecOC_VerifyStatusOverride stelt de applicatie in staat om het verificatie- en doorstuurgedrag van SecOC gericht te overschrijven om zo I-PDU's onafhankelijk van het daadwerkelijke verificatieresultaat te accepteren of te verwerpen, evenals foutafhandelingen te besturen [SWS_SecOC_00122].

Parameters en aanroepcontext

De adressering richt zich naar de moduleconfiguratie: Als SecOCOverrideStatusWithDataId op FALSE is ingesteld, identificeert Value ID de Freshness Value van alle toegewezen Secured I-PDU's; staat de parameter op TRUE, dan duidt Value ID direct de Data ID van een Secured I-PDU aan [SWS_SecOC_00122]. Via overrideStatus worden het gewenste gedrag en de temporele geldigheid ervan gedefinieerd. De teller numberOfMessagesToOverride bepaalt het aantal sequentieel te overschrijven verificaties, maar wordt uitsluitend geëvalueerd bij de modi SECOC_OVERRIDE_DROP_UNTIL_LIMIT, SECOC_OVERRIDE_SKIP_UNTIL_LIMIT en SECOC_OVERRIDE_PASS_UNTIL_LIMIT [SWS_SecOC_00122].

Voor de modi SECOC_OVERRIDE_PASS_UNTIL_NOTICE, SECOC_OVERRIDE_SKIP_UNTIL_LIMIT, SECOC_OVERRIDE_PASS_UNTIL_LIMIT en SECOC_OVERRIDE_SKIP_UNTIL_NOTICE moet SecOCEnableForcedPassOverride dwingend op TRUE zijn geconfigureerd [SWS_SecOC_00122].

Concurrency en retourwaarden

De functie is reentrant voor verschillende Freshness Value IDs, maar niet reentrant voor dezelfde Freshness Value ID [SWS_SecOC_00122]. Een succesvolle aanroep levert E_OK op, terwijl een mislukte aanroep met E_NOT_OK wordt beantwoord [SWS_SecOC_00122].

Interactie bij de verificatie

Een ingestelde override grijpt in op de verwerkingslogica van het ontvangstpad:

  • Indien gescheiden Authentic en Cryptographic I-PDU's worden gebruikt (SecOCRxSecuredPduCollection), bestuurt overrideStatus het gedrag zodra beide PDU's met passende Message Linker zijn ontvangen [SWS_SecOC_00203], [SWS_SecOC_00206], [SWS_SecOC_00211].
  • Zelfs bij overschrijding van SecOCAuthenticationBuildAttempts of SecOCAuthenticationVerifyAttempts alsmede bij niet-herstelbare fouten (zoals KEY_FAILURE) richten het verificatieresultaat en de PDU-doorzending zich primair naar overrideStatus [SWS_SecOC_00240], [SWS_SecOC_00241].

Deze tekst is opgesteld door een AI en is gebaseerd op de vereisten van de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I2)

functie SecOC_SendDefaultAuthenticationInformation [SWS_SecOC_91013] 📄 PDF

Std_ReturnType SecOC_SendDefaultAuthenticationInformation (uint16 FreshnessValueID, boolean sendDefaultAuthenticationInformation);

The service provides the ability to enable the sending of un - authenticated PDU to lower layer. (example: in case authentication build counter has reached the configuration value Sec OCAuthentication Build Attempts or the query of the freshness function returns E_ NOT_ OK or the calculation of the authenticator has returned a non - recoverable error such as returning E_ NOT_ OK or KEY_ FAILURE). T his service is optional (the service is available only if Sec OCDefault Authentication Information Pattern is configured). If the service is not available or the service is available but the service was called with send Default

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 78b64ca2ff88 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone functie SecOC_SendDefaultAuthenticationInformation ([SWS_SecOC_91013]) maakt het mogelijk om het verzenden van niet-geauthenticeerde I-PDU's naar onderliggende lagen gericht vrij te geven of te blokkeren. De service is gedeclareerd via SecOC.h en bestuurt via de vlag send Default Authentication Information het gedrag voor een specifieke Freshness Value ID. Bij een succesvol verzoek retourneert de functie E_OK, anders E_NOT_OK ([SWS_SecOC_91013]).

Interactie en foutgedrag

De functie is optioneel en is alleen beschikbaar als de parameter SecOCDefaultAuthenticationInformationPattern is geconfigureerd ([SWS_SecOC_91013]). Het gedrag treedt in werking wanneer het genereren van de authenticatie-informatie mislukt – bijvoorbeeld wanneer de teller SecOCAuthenticationBuildAttempts is bereikt, de freshness-functie E_NOT_OK oplevert of de berekening van de authenticator een onherstelbare fout zoals KEY_FAILURE resp. E_NOT_OK retourneert ([SWS_SecOC_91013], [SWS_SecOC_00229]):

  • Werd de service met TRUE aangeroepen, dan gebruikt de module het patroon SecOCDefaultAuthenticationInformationPattern voor alle bytes van de freshness-waarde en authenticator om de authenticatie-informatie op te bouwen, en breekt het verzendverzoek niet af ([SWS_SecOC_91013], [SWS_SecOC_00229]).
  • Is de service niet beschikbaar of werd deze voor de betreffende ID met FALSE aangeroepen, dan verwijdert de module de authentieke I-PDU uit zijn interne buffer en breekt de overdracht af ([SWS_SecOC_91013], [SWS_SecOC_00229]).

Concurrency

De functie is voor dezelfde Freshness Value ID niet re-entrant, maar mag voor verschillende ID's wel re-entrant worden aangeroepen ([SWS_SecOC_91013]).

Deze gebruiksinstructie is automatisch gegenereerd op basis van de specificatie van AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_RxIndication [SWS_SecOC_00124] 📄 PDF

void SecOC_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Indication of a received PDU from a lower layer communication interface module.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: f7c10da93bc2 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De synchrone interfacefunctie SecOC_RxIndication (service-ID 0x42) wordt aangeroepen door een onderliggende communicatie-interfacemodule om de ontvangst van een PDU aan de SecOC-module te melden [SWS_SecOC_00124]. Bij de aanroep identificeert RxPduId de ontvangen PDU, terwijl via PduInfoPtr een pointer naar de PDU-informatie wordt overgedragen. Deze structuur bevat de payloadlengte SduLength, de bufferpointer SduDataPtr alsmede bijbehorende metadata van de PDU [SWS_SecOC_00124]. De functie heeft geen retourwaarde en is gedeclareerd via het headerbestand SecOC.h [SWS_SecOC_00124].

Foutafhandeling en lengtecontrole

Voor de ontvangst van I-PDU's met statische configuratie (beveiligde, authentieke of cryptografische I-PDU's met de EcuC-parameter DynamicLength gelijk aan FALSE) geldt een specifieke foutcontrole: Is de ontvangen lengte kleiner dan de geconfigureerde lengte, dan verwerpt de SecOC-module de I-PDU geruisloos [SWS_SecOC_00268]. Interpretatie: Aangezien de functie void retourneert, worden foutieve of onvolledige I-PDU's vermoedelijk zonder terugkoppeling naar de aanroepende laag verworpen. Vraag Q-6e9a176383e1983b (open)

Gelijktijdigheid en beperkingen

De uitvoering van SecOC_RxIndication is reentrant voor aanroepen met verschillende PDU-ID's, maar expliciet niet reentrant voor dezelfde PDU-ID [SWS_SecOC_00124]. Aanroepende modules moeten daarom via hun programmabesturing waarborgen dat parallelle aanroepen met identieke RxPduId worden voorkomen.

Deze gebruiksinstructie is geautomatiseerd opgesteld en is gebaseerd op de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_TpRxIndication [SWS_SecOC_00125] 📄 PDF

void SecOC_TpRxIndication (PduIdType id, Std_ReturnType result);

Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 4e2c4fc6858d Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie SecOC_TpRxIndication dient als callback-interface van de module SecOC en wordt na de ontvangst van een I-PDU via de Transport-Protocol-API (TP API) aangeroepen [SWS_SecOC_00125]. Via deze notificatie verneemt SecOC of de transmissie van de I-PDU met succes is voltooid of dat er een overdrachtsfout is opgetreden [SWS_SecOC_00125].

De interface heeft volgens [SWS_SecOC_00125] de volgende parameters en eigenschappen:

  • id (PduIdType): Identificatie van de ontvangen I-PDU waarvoor de ontvangstgebeurtenis wordt gesignaleerd.
  • result (Std_ReturnType): Resultaat van de PDU-receptie, dat aangeeft of het transport succesvol was dan wel mislukte.
  • Retourwaarde: Geen (void); de functie levert geen statuswaarde terug aan de aanroeper.

Met betrekking tot concurrency is SecOC_TpRxIndication gespecificeerd als reentrant (Reentrant) en werkt synchroon (Synchronous) onder de service-ID 0x45 [SWS_SecOC_00125]. De declaratie wordt via het headerbestand SecOC.h beschikbaar gesteld [SWS_SecOC_00125]. Interpretatie: De aanroep wordt vermoedelijk typisch getriggerd door een transporterende laag zoals de PduR of een TP-module zodra de PDU-gegevensoverdracht volledig is voltooid. Vraag Q-6448356fa3609004 (open)

Voor deze functie zijn in de specificatie geen specifieke foutcodes, DET-controles of DEM-foutregistraties gedefinieerd [SWS_SecOC_00125]. De foutafhandeling beperkt zich tot de overdracht van het transportresultaat via de parameter result, op basis waarvan de module SecOC beslist of de ontvangen gegevens verder worden verwerkt dan wel worden verworpen.

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_TxConfirmation [SWS_SecOC_00126] 📄 PDF

void SecOC_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 73c9975309da Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie SecOC_TxConfirmation wordt aangeroepen door de onderliggende communicatie-interfacemodule om de succesvolle overdracht of het mislukken van het verzenden van een PDU synchroon te bevestigen aan de module SecOC [SWS_SecOC_00126]. De service heeft geen retourwaarde (void), is gedeclareerd in het headerbestand SecOC.h en geregistreerd onder de service-ID 0x40 [SWS_SecOC_00126].

De functie verwacht twee ingangsparameters [SWS_SecOC_00126]:

  • TxPduId: Identificatie van de overgedragen PDU (type PduIdType).
  • result: Resultaat van de overdracht (type Std_ReturnType) met de waarden E_OK bij succesvolle verzending of E_NOT_OK bij mislukte overdracht.

Foutafhandeling en gelijktijdigheid

Overdrachtsfouten van de lagere lagen worden direct via het argument result met de waarde E_NOT_OK doorgegeven [SWS_SecOC_00126]. Wat betreft gelijktijdigheid is de aanroep re-entrant voor verschillende PDU-ID's, maar gedefinieerd als niet re-entrant voor dezelfde PDU-ID [SWS_SecOC_00126]. De concrete uitvoeringscontext bevindt zich vermoedelijk op task- of interruptniveau van de onderliggende module, aangezien de specificatie hiervoor geen beperking bevat. Vraag Q-8bb15b92df860fc1 (open)

Samenspel en doorzending

Wanneer de configuratie SecOCTxSecuredPduCollection wordt gebruikt, stuurt SecOC de bevestiging pas door naar de bovenliggende laag nadat SecOC_TxConfirmation is aangeroepen voor zowel de Authentic I-PDU als de Cryptographic I-PDU [SWS_SecOC_00270].

Voor de resultaatstatus naar de bovenliggende laag geldt daarbij een strikte voorwaarde: de parameter result van de doorgestuurde aanroep is alleen E_OK wanneer de bevestigingen voor beide deel-PDU's telkens met E_OK zijn doorgegeven; anders luidt de status E_NOT_OK [SWS_SecOC_00270].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_TpTxConfirmation [SWS_SecOC_00152] 📄 PDF

void SecOC_TpTxConfirmation (PduIdType id, Std_ReturnType result);

This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ed0d4b6dacab Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie SecOC_TpTxConfirmation dient ter bevestiging van een via het netwerk overgedragen I-PDU en informeert de SecOC-module synchroon over het slagen of mislukken van het verzendproces [SWS_SecOC_00152].

Gebruik en parameters

De aanroep vindt plaats na de fysieke overdracht van een I-PDU op het netwerk [SWS_SecOC_00152]. De interface is gedeclareerd in de header SecOC.h en heeft service-ID 0x48 [SWS_SecOC_00152]. Deze accepteert twee invoerparameters en levert geen retourwaarde op (void):

  • id (type PduIdType): Unieke identificatie van de overgedragen I-PDU [SWS_SecOC_00152].
  • result (type Std_ReturnType): Geeft aan of de overdracht op het netwerk succesvol was of is mislukt [SWS_SecOC_00152].

Gelijktijdigheid en uitvoering

Volgens de specificatie moet de functie synchroon worden uitgevoerd en is deze volledig re-entrant (Reentrant) [SWS_SecOC_00152]. Deze kan zodoende parallel voor verschillende of dezelfde I-PDU's worden aangeroepen, voor zover de aanroepcontext dit vereist.

Foutafhandeling en wisselwerking

Specifieke DET- of DEM-foutcodes worden in de payload niet vermeld. De foutafhandeling met betrekking tot de overdracht vindt primair plaats via de meegegeven statusparameter result, die de module meldt of het verzendproces is geslaagd [SWS_SecOC_00152]. Interpretatie: De functie dient vermoedelijk primair als callback-interface voor onderliggende transportprotocolinstanties om na het voltooien van grote of gefragmenteerde overdrachten de verzendstatus terug te melden. Vraag Q-a2957406d76ee65f (open)

Deze gebruiksinstructie is opgesteld door een AI en vat de eisen uit de AUTOSAR-specificatie voor de module SecOC samen.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_TriggerTransmit [SWS_SecOC_00127] 📄 PDF

Std_ReturnType SecOC_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);

Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: da47edaa7d8f Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone interface SecOC_TriggerTransmit dient voor het kopiëren van een voor overdracht opgevraagde SDU [SWS_SecOC_00127]. Via de parameter TxPduId wordt de SDU geadresseerd, terwijl PduInfoPtr als invoer- en uitvoerparameter de pointer naar de doelbuffer (SduDataPtr) alsook specificaties van de buffergrootte (SduLength) beschikbaar stelt [SWS_SecOC_00127].

Gebruik en gegevensoverdracht

Binnen de functie controleert de module of de beschikbaar te stellen gegevens passen in de via PduInfoPtr->SduLength gemelde buffergrootte [SWS_SecOC_00127]:

  • Als de gegevens erin passen, kopieert de functie deze naar de buffer PduInfoPtr->SduDataPtr, vult het daadwerkelijke aantal gekopieerde bytes in PduInfoPtr->SduLength in en retourneert E_OK [SWS_SecOC_00127].
  • Is de opslagruimte niet toereikend, dan retourneert de functie E_NOT_OK, zonder de inhoud van PduInfoPtr te wijzigen [SWS_SecOC_00127].

Foutafhandeling en gelijktijdigheid

Wordt E_NOT_OK geretourneerd, dan zijn er geen SDU-gegevens gekopieerd. In dit geval mag de aanroeper PduInfoPtr niet evalueren of gebruiken, aangezien deze een NULL-pointer kan bevatten of naar ongeldige gegevens kan verwijzen [SWS_SecOC_00127]. De functie is reentrant voor verschillende PDU-ID's, maar niet reentrant voor dezelfde TxPduId [SWS_SecOC_00127]. De service is beschikbaar via de header SecOC.h [SWS_SecOC_00127].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR Classic Platform Release R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_CopyRxData [SWS_SecOC_00128] 📄 PDF

BufReq_ReturnType SecOC_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);

This function is called to provide the received data of an I - PDU segment (N - PDU) to the upper layer. Each call to this function provides the next part of the I - PDU data. The si ze of the remaining buffer is written to the position indicated by buffer Size Ptr.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 35610f4482a7 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De synchrone functie SecOC_CopyRxData wordt aangeroepen om ontvangen gegevens van een I-PDU-segment (N-PDU) over te dragen aan de bovenste laag [SWS_SecOC_00128]. Elke aanroep stelt het telkens volgende deel van de I-PDU-gegevens beschikbaar [SWS_SecOC_00128]. De service heeft de service-ID 0x44 en is beschikbaar via het headerbestand SecOC.h [SWS_SecOC_00128].

Parameters en bufferopvraging

De parameter id identificeert de ontvangen I-PDU eenduidig [SWS_SecOC_00128]. Via de pointer info worden de bronbuffer SduDataPtr en het aantal te kopiëren bytes SduLength beschikbaar gesteld [SWS_SecOC_00128]. Een overdracht van SduLength met de waarde 0 dient voor het opvragen van de actueel in de bovenliggende module beschikbare ontvangstbuffer; in dat geval mag SduDataPtr als NULL_PTR worden overgedragen [SWS_SecOC_00128]. Op de door bufferSizePtr gerefereerde locatie wordt na het kopiëren de resterende buffergrootte geschreven [SWS_SecOC_00128].

Retourwaarden en concurrency

De functie retourneert de status BufReq_ReturnType [SWS_SecOC_00128]. Bij een succesvolle gegevensoverdracht meldt deze BUFREQ_OK [SWS_SecOC_00128]. Treedt er een fout op, dan worden er geen gegevens gekopieerd en retourneert de functie BUFREQ_E_NOT_OK [SWS_SecOC_00128]. SecOC_CopyRxData is als reentrant gespecificeerd [SWS_SecOC_00128].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_CopyTxData [SWS_SecOC_00129] 📄 PDF

BufReq_ReturnType SecOC_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

Service SecOC_CopyTxData.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 42779c9fb9b6 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De synchrone en reentrante functie SecOC_CopyTxData wordt aangeroepen om verzendgegevens voor een I-PDU-segment (N-PDU) op te halen [SWS_SecOC_00129]. Via de parameter info worden de doelbuffer SduDataPtr en de op te vragen hoeveelheid bytes SduLength overgedragen [SWS_SecOC_00129]. Een aanroep waarbij SduLength gelijk is aan 0 maakt het mogelijk de beschikbare hoeveelheid gegevens op te vragen of statuswijzigingen te melden via de parameter retry; in dat geval mag SduDataPtr een NULL_PTR zijn [SWS_SecOC_00129]. Via availableDataPtr meldt de module de resterende hoeveelheid restgegevens in de verzendbuffer terug [SWS_SecOC_00129].

Herhaling en foutafhandeling

Het buffer- en herhaalgedrag wordt bestuurd via retry [SWS_SecOC_00129]:

  • Als retry een NULL_PTR is, mogen gekopieerde gegevens direct worden vrijgegeven [SWS_SecOC_00129].
  • Bij TP_CONFPENDING blijven eerder gekopieerde gegevens in de buffer achter ten behoeve van foutherstel [SWS_SecOC_00129].
  • TP_DATACONF bevestigt alle voorafgaand aan deze aanroep verzonden gegevens voor buffervrijgave [SWS_SecOC_00129].
  • TP_DATARETRY start het opnieuw kopiëren van reeds verzonden gegevens vanaf de door TxTpDataCnt gedefinieerde byte-offset [SWS_SecOC_00129].

Als retourwaarden levert de functie BUFREQ_OK bij een succesvol kopieerproces, BUFREQ_E_BUSY indien tijdelijk niet voldoende verzendgegevens beschikbaar zijn (waardoor de aanroeper de poging later kan herhalen), of BUFREQ_E_NOT_OK bij een algemene mislukking [SWS_SecOC_00129].

Concurrency

De functie is reentrant ontworpen, zodat parallelle aanroepen voor verschillende PDU-instanties toelaatbaar zouden moeten zijn [SWS_SecOC_00129]. Vraag Q-6420f2ca317efcb4 (open)

Deze gebruiksinstructie is automatisch gegenereerd op basis van de specificatie.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_StartReception [SWS_SecOC_00130] 📄 PDF

BufReq_ReturnType SecOC_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Service SecOC_StartReception.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e711d8ef8bcc Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone en reentrante functie SecOC_StartReception wordt aan het begin van de ontvangst van een N-SDU aangeroepen om de verbinding te controleren en de benodigde ontvangstbuffer beschikbaar te stellen [SWS_SecOC_00130]. De N-SDU kan daarbij als enkel frame (Single Frame, SF) of gefragmenteerd over meerdere N-PDU's (First Frame, FF, gevolgd door Consecutive Frames, CF) worden ontvangen [SWS_SecOC_00130]. De declaratie is beschikbaar via de header SecOC.h [SWS_SecOC_00130].

Parameters en bufferopvraging

  • id: Identificatie van de ontvangen I-PDU [SWS_SecOC_00130].
  • info: Pointer naar een PduInfoType-structuur met de payload van het eerste respectievelijk afzonderlijke frame alsook metadata; zijn noch gegevens noch metadata beschikbaar, dan wordt NULL_PTR overgedragen [SWS_SecOC_00130].
  • TpSduLength: Totale lengte van de te ontvangen N-SDU. Wordt de parameter met de waarde 0 overgedragen, dan retourneert de service de momenteel maximaal beschikbare buffergrootte [SWS_SecOC_00130].
  • bufferSizePtr: Uitvoerparameter voor de beschikbare ontvangstbuffer, die door de transportprotocolmodule wordt gebruikt voor de berekening van de Block Size (BS) [SWS_SecOC_00130].

Retourwaarden en foutafhandeling

  • BUFREQ_OK: De verbinding is geaccepteerd en de ontvangst wordt voortgezet; bufferSizePtr geeft de beschikbare buffergrootte aan (is er geen buffer van de vereiste grootte beschikbaar, dan wordt 0 gemeld) [SWS_SecOC_00130].
  • BUFREQ_E_NOT_OK: De verbinding is geweigerd en de ontvangst wordt afgebroken; bufferSizePtr blijft ongewijzigd [SWS_SecOC_00130].
  • BUFREQ_E_OVFL: Er kan geen buffer van de vereiste lengte beschikbaar worden gesteld; de ontvangst breekt af en bufferSizePtr blijft ongewijzigd [SWS_SecOC_00130].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_GetRxFreshness [SWS_SecOC_91007] 📄 PDF

Std_ReturnType SecOC_GetRxFreshness (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetRxFreshness.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ef974f5cced3 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone interfacefunctie SecOC_GetRxFreshness dient ertoe dat de module SecOC de actuele freshness-waarde opvraagt voor een ontvangen beveiligde I-PDU [SWS_SecOC_91007]. De aanroep vindt plaats zodra de beveiligde PDU volledig is ontvangen en voor de configuratie daarvan SecOCQueryFreshnessValue == CFUNC en SecOCUseAuthDataFreshness == FALSE zijn vastgelegd [SWS_SecOC_00247], [SWS_SecOC_00250].

De functie is re-entrant [SWS_SecOC_91007] en geeft respectievelijk verwacht de volgende parameters:

  • SecOCFreshnessValueID: Identificatie van de op te vragen freshness-waarde [SWS_SecOC_91007].
  • SecOCTruncatedFreshnessValue en SecOCTruncatedFreshnessValueLength: Pointer naar de in de ontvangen PDU opgenomen ingekorte freshness-waarde en de lengte daarvan in bits [SWS_SecOC_91007].
  • SecOCAuthVerifyAttempts: Aantal eerdere verificatiepogingen sinds de PDU-ontvangst (beginnend bij 0, geïncrementeerd bij elke mislukte poging) [SWS_SecOC_91007].
  • SecOCFreshnessValue en SecOCFreshnessValueLength: Uitvoerbuffer voor de bepaalde freshness-waarde alsmede in-/uitvoerparameter voor de bitlengte daarvan [SWS_SecOC_91007].

Het resultaat van de opvraag bestuurt de verdere verwerking in SecOC:

  • E_OK: De freshness-waarde is met succes beschikbaar gesteld en wordt gebruikt voor de authenticatorberekening [SWS_SecOC_91007].
  • E_NOT_OK: De beschikbaarstelling is mislukt vanwege algemene problemen of een onjuiste freshness-ID [SWS_SecOC_91007].
  • E_BUSY: De informatie is tijdelijk niet beschikbaar [SWS_SecOC_91007]. In dit geval verhoogt SecOC de Authentication-Build-Counter en voert het geen poging tot authenticatieverificatie uit [SWS_SecOC_00236].

Deze gebruiksinstructie is automatisch gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I2)

functie SecOC_GetRxFreshnessAuthData [SWS_SecOC_91006] 📄 PDF

Std_ReturnType SecOC_GetRxFreshnessAuthData (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, const uint8* SecOCAuthDataFreshnessValue, uint16 SecOCAuthDataFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetRxFreshnessAuthData.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 21909ecce4eb Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en reentrante functie SecOC_GetRxFreshnessAuthData wordt door de SecOC-module aangeroepen om bij volledig ontvangen beveiligde I-PDU's de actuele Freshness-waarde voor de authenticatie te bepalen ([SWS_SecOC_91006], [SWS_SecOC_00246]). De aanroep vindt specifiek plaats wanneer voor de betreffende PDU-configuratie SecOCQueryFreshnessValue = CFUNC en SecOCUseAuthDataFreshness = TRUE geparametriseerd zijn ([SWS_SecOC_00246], [SWS_SecOC_00249]).

Parameters en overdrachtswaarden

  • Ingangsgegevens: Overgedragen worden de aanduiding SecOCFreshnessValueID, de in de I-PDU opgenomen verkorte Freshness-waarde SecOCTruncatedFreshnessValue inclusief bitlengte SecOCTruncatedFreshnessValueLength en de teller SecOCAuthVerifyAttempts, die bij mislukte pogingen wordt geïncrementeerd ([SWS_SecOC_91006]).
  • Authenticatiegegevens: Via SecOCAuthDataFreshnessValue en SecOCAuthDataFreshnessValueLength wordt optioneel een geconfigureerd deel van de ontvangen PDU overgedragen; startpositie en lengte worden bepaald door SecOCAuthDataFreshnessStartPosition en SecOCAuthDataFreshnessLen ([SWS_SecOC_91006], [SWS_SecOC_00246]).
  • Resultaatgegevens: De volledige Freshness-waarde wordt beschikbaar gesteld via de uitvoerbuffer SecOCFreshnessValue, waarvan de bitlengte fungeert als inout-parameter SecOCFreshnessValueLength ([SWS_SecOC_91006]).

Retourwaarden en foutafhandeling

De functie signaleert het slagen van de opvraag met E_OK ([SWS_SecOC_91006]). Als de freshness-waarde door algemene problemen of een ongeldige freshness-ID niet kan worden geleverd, retourneert zij E_NOT_OK; bij tijdelijke niet-beschikbaarheid levert zij E_BUSY ([SWS_SecOC_91006]). Interpretatie: Aangezien de functie als C-functie via CFUNC wordt gekoppeld, wordt de implementatie vermoedelijk verzorgd door een externe freshness-managementmodule. Vraag Q-01aa77b7235b9001 (open)

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_GetTxFreshness [SWS_SecOC_91004] 📄 PDF

Std_ReturnType SecOC_GetTxFreshness (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

This API returns th e freshness value from the Most Significant Bits in the first byte in the array (Sec OCFreshness Value), in big endian format.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: dd021d2527b1 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en re-entrante functie SecOC_GetTxFreshness dient voor het beschikbaar stellen van de actuele freshness-waarde voor te verzenden berichten en is gedeclareerd via de header SecOC.h [SWS_SecOC_91004]. Volgens [SWS_SecOC_00231] roept de SecOC-module deze functie aan voor een PDU wanneer in de configuratie SecOCQueryFreshnessValue = CFUNC evenals SecOCProvideTxTruncatedFreshnessValue = FALSE zijn ingesteld. Interpretatie: Aangezien SecOC de aanroep bij een overeenkomstige configuratie uitvoert, moet de functie vermoedelijk als callout door een externe component beschikbaar worden gesteld. Vraag Q-99a14f896ffddf5f (open)

De interface gebruikt de volgende parameters [SWS_SecOC_91004]:

  • SecOCFreshnessValueID (In): Numerieke identificatie van de opgevraagde freshness-waarde.
  • SecOCFreshnessValueLength (InOut): Geeft de bitlengte van de beschikbaar gestelde freshness-waarde door respectievelijk neemt deze over.
  • SecOCFreshnessValue (Out): Pointer naar de byte-array voor het opnemen van de freshness-waarde in big-endian-formaat, beginnend met de meest significante bits in de eerste byte.

De retourwaarde van het type Std_ReturnType signaleert het resultaat van het beschikbaar stellen [SWS_SecOC_91004]:

  • E_OK: De freshness-waarde is met succes beschikbaar gesteld.
  • E_BUSY: De freshness-informatie kan tijdelijk niet worden geleverd.
  • E_NOT_OK: Het verzoek is mislukt, omdat voor de ID of in het algemeen geen waarde kan worden bepaald.

Deze gebruiksinstructie is geautomatiseerd gegenereerd en is uitsluitend gebaseerd op de specificaties van AUTOSAR-versie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_GetTxFreshnessTruncData [SWS_SecOC_91003] 📄 PDF

Std_ReturnType SecOC_GetTxFreshnessTruncData (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength, uint8* SecOCTruncatedFreshnessValue, uint32* SecOCTruncatedFreshnessValueLength);

Service SecOC_GetTxFreshnessTruncData.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 2ae3128a39ae Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en re-entrante functie SecOC_GetTxFreshnessTruncData wordt aangeroepen door de module SecOC om bij verzendprocessen (TX) zowel de volledige freshness-waarde als de ingekorte freshness-waarde (Truncated Freshness) voor de te verzenden Secured I-PDU op te vragen [SWS_SecOC_91003]. De aanroep vindt specifiek plaats wanneer voor de PDU-configuratie SecOCQueryFreshnessValue = CFUNC evenals SecOCProvideTxTruncatedFreshnessValue = TRUE zijn ingesteld [SWS_SecOC_00230].

De interface geeft de volgende parameters door [SWS_SecOC_91003]:

  • SecOCFreshnessValueID (in): Identificator van de opgevraagde freshness-waarde.
  • SecOCFreshnessValue (out): Doelbuffer voor de actuele volledige freshness-waarde.
  • SecOCFreshnessValueLength (inout): Geeft de lengte van de geleverde freshness-waarde in bits aan.
  • SecOCTruncatedFreshnessValue (out): Optionele buffer voor de ingekorte freshness-waarde die in de Secured I-PDU wordt ingebed.
  • SecOCTruncatedFreshnessValueLength (inout): Geeft de geconfigureerde lengte van de ingekorte freshness door; de waarde kan desgewenst door de functie worden aangepast of ongewijzigd blijven.

Als retourwaarde levert de functie E_OK bij succesvolle verstrekking, E_BUSY indien de informatie tijdelijk niet beschikbaar is, of E_NOT_OK wanneer de verstrekking mislukt wegens algemene problemen of specifiek voor de doorgegeven ID [SWS_SecOC_91003]. De declaratie is beschikbaar via de header SecOC.h [SWS_SecOC_91003].

Deze gebruiksinstructie is gegenereerd door een AI-curatie-assistent op basis van de specificatiegegevens uit AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_SPduTxConfirmation [SWS_SecOC_91005] 📄 PDF

void SecOC_SPduTxConfirmation (uint16 SecOCFreshnessValueID);

This interface is used by the Sec OC to indicate that the Secured I - PDU has been initiated for transmission.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 802cf05f792c Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone functie-interface SecOC_SPduTxConfirmation wordt door de module SecOC gebruikt om aan te geven dat de overdracht van een beveiligde I-PDU (Secured I-PDU) is geïnitieerd [SWS_SecOC_91005]. De functie is gedeclareerd in het headerbestand SecOC.h en heeft geen retourwaarde (void) [SWS_SecOC_91005].

Als enige overdrachtsparameter wordt SecOCFreshnessValueID als invoerwaarde (in) van het type uint16 meegegeven [SWS_SecOC_91005]. Deze parameter transporteert de identificatie van de desbetreffende freshness-waarde voor de betrokken I-PDU [SWS_SecOC_91005]. Verdere invoer-, uitvoer- of doorvoerparameters (inout/out) zijn niet aanwezig in de interface [SWS_SecOC_91005].

Gelijktijdigheid en eigenschappen

De interface heeft de service-ID 0x4d, werkt synchroon en is volledig re-entrant ontworpen [SWS_SecOC_91005]. De eigenschap van re-entrantie staat parallelle aanroepen in gelijktijdige uitvoeringscontexten toe [SWS_SecOC_91005]. Foutmeldingen via DET of DEM evenals speciale foutcodes zijn in de interfacespecificatie niet voorzien [SWS_SecOC_91005].

Interpretatie: Aangezien SecOC deze functie aanroept om de start van de PDU-overdracht te melden, en daarbij uitsluitend de SecOCFreshnessValueID doorgeeft, dient de aanroep vermoedelijk voor het bijwerken of bevestigen van de freshness-teller in een externe component [SWS_SecOC_91005]. Vraag Q-f234a3c6e9b16362 (open)

Deze gebruiksinstructie is geautomatiseerd gegenereerd en is uitsluitend gebaseerd op de specificatiegegevens uit AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_MainFunctionRx [SWS_SecOC_00171] 📄 PDF

void SecOC_MainFunctionRx (void);

This function performs the processing of the Sec OC module's authentication and verification processing for the Rx path. Per configured Sec OCMain Function Rx instance one Sec OC_ Main Function Rx_ shall be implemented. Hereby is the short name of the Sec OCMain Function Rx configuration container in the ECU configuration.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 03542d899cdb Herkomst Open vragen (3)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie SecOC_MainFunctionRx verzorgt de centrale authenticatie- en verificatieverwerking van de module SecOC voor binnenkomende berichten in het ontvangstpad [SWS_SecOC_00171]. Conform de interfacespecificatie heeft de functie de signatuur void SecOC_MainFunctionRx (void), bezit deze de service-ID 0x06, verwacht deze geen overdrachtsparameters en retourneert deze geen retourwaarde [SWS_SecOC_00171]. De functie wordt gedeclareerd via het headerbestand SchM_SecOC.h [SWS_SecOC_00171]; hieruit kan worden afgeleid (interpretatie) dat de aanroep periodiek plaatsvindt door de BSW-scheduler in de context van een besturingssysteem-taak. Vraag Q-d24cb58f541f6674 (open)

Instantieerbaarheid en configuratie

In systeemconfiguraties met meerdere ontvangstinstanties wordt per geconfigureerde SecOCMainFunctionRx-container een eigen functie-instantie volgens het schema SecOC_MainFunctionRx_<shortName> geïmplementeerd [SWS_SecOC_00171]. Daarbij komt <shortName> overeen met de in het ECU-configuratiemodel toegekende korte naam van de container [SWS_SecOC_00171]. Dit maakt vermoedelijk een gescheiden tijdsbesturing of prioritering van verschillende Rx-verwerkingspaden mogelijk. Vraag Q-ebb55c5d3a3da97d (open)

Foutafhandeling en gelijktijdigheid

Voor SecOC_MainFunctionRx zijn in de voorschriften noch specifieke retourwaarden noch expliciete foutcodes voor DET of DEM gedocumenteerd [SWS_SecOC_00171]. Fouttoestanden of mislukte verificaties worden daarom vermoedelijk louter intern verwerkt en asynchroon via het ontvangstpad aan bovenliggende modules gemeld. Vraag Q-5d1e45f7a779bea9 (open)

Deze tekst is gegenereerd door een AI en dient als oriëntatiehulp. Maatgevend is altijd de officiële AUTOSAR-specificatie.

functie SecOC_MainFunctionTx [SWS_SecOC_00176] 📄 PDF

void SecOC_MainFunctionTx (void);

This function performs the processing of the Sec OC module's authentication and verification processing for the Tx path. Per configured Sec OCMain Function Tx instance one Sec OC_ Main Function Tx_ shall be implemented. Hereby is t he short name of the Sec OCMain Function Tx configuration container in the ECU configuration.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 0a9d6b2d7e1e Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De hoofdfunctie SecOC_MainFunctionTx verzorgt volgens [SWS_SecOC_00176] de authenticatie- en verificatieverwerking van de SecOC-module op het zendpad (Tx-pad). Deze heeft de signatuur void SecOC_MainFunctionTx(void), neemt zodoende geen overdrachtsparameters aan en levert geen retourwaarde terug; hieraan is service-ID 0x03 toegewezen [SWS_SecOC_00176]. De declaratie wordt via de header SchM_SecOC.h beschikbaar gesteld [SWS_SecOC_00176]. Interpretatie: Aangezien de integratie via de Schedule-Manager verloopt, vindt de aanroep vermoedelijk typisch periodiek plaats door de BSW-scheduler in de context van een besturingssysteemtaak. Vraag Q-34b30208648c8e30 (open)

Instantiëring en naamgevingsconventie

De specificatie voorziet in een instantiespecifieke implementatie voor meervoudige configuraties: Voor elke geconfigureerde instantiecontainer SecOCMainFunctionTx in de ECU-configuratie moet precies één functie volgens het naamschema SecOC_MainFunctionTx_<shortName> worden geïmplementeerd, waarbij <shortName> overeenkomt met de korte naam van de betreffende configuratiecontainer [SWS_SecOC_00176].

Beperkingen en foutafhandeling

Specifieke foutcodes, DET- of DEM-terugmeldingen evenals details over reentrantie zijn in het specificatie-element niet afzonderlijk vermeld [SWS_SecOC_00176]. Interpretatie: Vanwege de koppeling aan instantiespecifieke configuratiecontainers is elke gegenereerde instantie vermoedelijk verantwoordelijk voor een geïsoleerde deelverzameling van Tx-PDU-verwerkingen en dient deze volgens plan niet concurrent door dezelfde taakcontext te worden onderbroken. Vraag (open)

Deze gebruiksinstructie is geautomatiseerd gegenereerd door een AI-curatie-assistent op basis van de AUTOSAR-specificatie R20-11.

functie SecOC_VerificationStatusCallout [SWS_SecOC_00119] 📄 PDF

void SecOC_VerificationStatusCallout (SecOC_VerificationStatusType verificationStatus);

Service is used to propagate the status of each verification attempt from the Sec OC module to other modules. This service can be configured such that:  Only: "False" Verifica tion Status is propagated to modules  Both: "True" and "False" Verification Status are propagated to modules  None: No Verification Status is propagated

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a7aa9530a7de Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone callout-functie SecOC_VerificationStatusCallout dient voor het doorgeven van de status van verificatiepogingen vanuit de SecOC-module naar externe softwaremodules [SWS_SecOC_00119]. Deze is via de header SecOC_Externals.h gedeclareerd en heeft de service-ID 0x50 [SWS_SecOC_00119]. Via de invoerparameter verificationStatus (type SecOC_VerificationStatusType) wordt een datastructuur overgedragen die het verificatieresultaat voor een specifieke Freshness Value ID en Data ID bundelt [SWS_SecOC_00119]. De functie heeft geen uitvoerparameters en geen retourwaarde (retourtype void) [SWS_SecOC_00119].

Het gedrag van de statusdoorgifte is configureerbaar en ondersteunt drie varianten [SWS_SecOC_00119]:

  • Only: Er worden uitsluitend mislukte verificatiepogingen (“False”) gepropageerd.
  • Both: Zowel succesvolle (“True”) als mislukte (“False”) verificatiestatussen worden doorgegeven aan modules.
  • None: Er wordt geen verificatiestatus doorgegeven.

Wat gelijktijdigheid betreft, is SecOC_VerificationStatusCallout reentrant voor verschillende Freshness Value IDs, maar niet reentrant voor dezelfde Freshness Value ID [SWS_SecOC_00119]. Implementerende modules moeten er daarom voor zorgen dat er bij identieke Freshness Value ID geen gelijktijdige aanroepen plaatsvinden. De aanroepcontext ligt vermoedelijk synchroon binnen het kader van de interne verificatieroutine van de SecOC-module. Vraag Q-cd6928ca22d48f54 (open) Specifieke foutcodes of meldingen aan DET en DEM zijn voor deze callout niet gedefinieerd [SWS_SecOC_00119].

Deze gebruiksinstructie is gegenereerd door een AI en is uitsluitend gebaseerd op de specificatiegegevens van de AUTOSAR-release R20-11.

Implementer's Guide volgt (complexiteit I1)

functie SecOC_VerifyStatus [SWS_SecOC_91014] 📄 PDF

void SecOC_VerifyStatus (SecOC_VerificationStatusType verificationStatus);

This s ervice provides the ability to inform the application about the result of the verification attempt of a received PDU by the Sec OC module.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 40383ff847fc Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De synchrone functie SecOC_VerifyStatus informeert de applicatie over het resultaat van de verificatiepoging van een ontvangen PDU door de module SecOC [SWS_SecOC_91014]. De interface heeft het service-ID 0x53, retourneert geen waarde (void) en wordt beschikbaar gesteld via de header SecOC_Externals.h [SWS_SecOC_91014].

Parameter

Als enige overdrachtsparameter dient de in-parameter verificationStatus van het type SecOC_VerificationStatusType [SWS_SecOC_91014]. Deze structuur levert details over de verificatiestatus en de informatie voor welke Data-ID en Freshness-Value-ID de verificatie is uitgevoerd [SWS_SecOC_91014]. Aanvullende in- of uitgangsparameters bestaan niet [SWS_SecOC_91014].

Foutafhandeling en gelijktijdigheid

Specifieke foutcodes en meldingen aan DET of DEM zijn voor deze service niet gedefinieerd [SWS_SecOC_91014]. Interpretatie: Mislukte verificaties worden vermoedelijk primair via de statuswaarden binnen de doorgegeven structuur verificationStatus aan de applicatie meegedeeld. Vraag Q-177be3d746f99b24 (open) Wat betreft de gelijktijdigheid is SecOC_VerifyStatus niet re-entrant voor dezelfde Freshness-Value-ID, maar wel re-entrant voor verschillende Freshness-Value-ID's [SWS_SecOC_91014].

Deze tekst is gegenereerd door een AI en dient als oriëntatiehulp. Doorslaggevend is de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I1)

type SecOC_StateType [SWS_SecOC_00162] 📄 PDF

States of the Sec OC module

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 9d4be727e8c2 Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het opsommingstype SecOC_StateType dient voor de formele representatie van de interne bedrijfstoestanden van de module SecOC en wordt via het headerbestand SecOC.h beschikbaar gesteld [SWS_SecOC_00162]. Het maakt een consistent toestandsbeheer gedurende de gehele levenscyclus van de softwarecomponent mogelijk.

Volgens de specificatie omvat het waardebereik van dit opsommingstype precies twee discrete toestanden [SWS_SecOC_00162]:

  • SECOC_UNINIT: Signaleert eenduidig dat de SecOC-module niet geïnitialiseerd is [SWS_SecOC_00162].
  • SECOC_INIT: Geeft bindend aan dat de SecOC-module geïnitialiseerd is [SWS_SecOC_00162].

Met betrekking tot interactie en volgordevoorwaarden representeert SECOC_UNINIT vermoedelijk de standaardtoestand direct na de systeemstart. Vraag Q-4d02fe3a0979113f (open) In deze fase worden functionele aanroepen voor cryptografische beveiliging of verificatie van berichten vermoedelijk afgewezen, aangezien de benodigde datastructuren nog niet beschikbaar zijn. Pas na succesvolle module-initialisatie wisselt de status vermoedelijk naar SECOC_INIT. Aanroepende modules of interne bewakingsroutines gebruiken vermoedelijk SecOC_StateType om de actuele operationele status synchroon te controleren en ontoelaatbare toegangen vóór de initialisatie betrouwbaar te verhinderen.

Deze tekst is gemaakt door een AI en is uitsluitend gebaseerd op de specificatiegegevens uit AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

type SecOC_VerificationResultType [SWS_SecOC_00149] 📄 PDF

Enumeration to indicate veri fication results.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 9b4c5c47c73b Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het opsommingstype SecOC_VerificationResultType dient voor de signalering van de resultaten bij de verificatie van beveiligde I-PDU's in de module SecOC en wordt beschikbaar gesteld via de header Rte_SecOC_Type.h [SWS_SecOC_00149].

De enumeratie specificeert daarbij de volgende resultaatwaarden ter differentiatie van de verificatiestatus [SWS_SecOC_00149]:

  • SECOC_VERIFICATIONSUCCESS (0x00): De verificatie van de gegevens was succesvol [SWS_SecOC_00149].
  • SECOC_VERIFICATIONFAILURE (0x01): De verificatie was niet succesvol [SWS_SecOC_00149].
  • SECOC_FRESHNESSFAILURE (0x02): De verificatie is mislukt vanwege een foutieve Freshness-waarde [SWS_SecOC_00149].
  • SECOC_AUTHENTICATIONBUILDFAILURE (0x03): De verificatie was niet succesvol vanwege onjuist opgebouwde authenticatiecodes [SWS_SecOC_00149].
  • SECOC_NO_VERIFICATION (0x04): De verificatie is overgeslagen en de gegevens zijn ongewijzigd doorgestuurd naar de bovenliggende laag; deze toestand is alleen mogelijk bij actieve statusoverschrijving SecOC_VerifyStatusOverride [SWS_SecOC_00149].
  • SECOC_VERIFICATIONFAILURE_OVERWRITTEN (0x05): De verificatie is mislukt, maar de I-PDU is als gevolg van de overschrijvingsstatus toch overgedragen aan de bovenliggende laag; deze toestand treedt eveneens uitsluitend op bij het gebruik van SecOC_VerifyStatusOverride [SWS_SecOC_00149].

Aan de hand van deze waarden kunnen bovenliggende lagen nauwkeurig evalueren of een verificatie regulier is geslaagd, is mislukt op cryptografische codes of Freshness-waarden, of dat administratieve override-toestanden de gegevensdoorgifte hebben bestuurd [SWS_SecOC_00149].

Deze tekst is gegenereerd door een AI op basis van de specificatie AUTOSAR CP R20-11.

type SecOC_VerificationStatusType [SWS_SecOC_00160] 📄 PDF

Data structure to bundle the status of a verification attempt for a specific Freshness Value and Data ID

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 98b8726de1ab Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik van de verificatiestatus-structuur

Het structuurtype SecOC_VerificationStatusType bundelt conform [SWS_SecOC_00160] het resultaat van een verificatiepoging voor een beveiligde I-PDU samen met het bijbehorende Data-ID en de gebruikte Freshness-waarde. De definitie wordt via het headerbestand Rte_SecOC_Type.h beschikbaar gesteld en omvat de volgende elementen:

  • freshnessValueID (uint16): Aanduiding van de Freshness-waarde die tot de verificatiestatus heeft geleid ([SWS_SecOC_00160]).
  • verificationStatus (SecOC_VerificationResultType): Gedetailleerd resultaat van de verificatiepoging ([SWS_SecOC_00160]).
  • secOCDataId (uint16): Data-ID van de betreffende PDU ([SWS_SecOC_00160]).

Het element verificationStatus differentieert specifieke succes- en fouttoestanden ([SWS_SecOC_00160]):

  • SECOC_VERIFICATIONSUCCESS: De cryptografische controle was succesvol.
  • SECOC_VERIFICATIONFAILURE: De verificatie is mislukt.
  • SECOC_FRESHNESSFAILURE: De verificatie is mislukt vanwege een ongeldige Freshness-waarde.
  • SECOC_AUTHENTICATIONBUILDFAILURE: Mislukte verificatie als gevolg van onjuist aangemaakte authenticatiecodes.
  • SECOC_NO_VERIFICATION: Er is geen verificatiepoging uitgevoerd voor deze I-PDU; deze is ongewijzigd doorgegeven aan de bovenste laag.
  • SECOC_VERIFICATIONFAILURE_OVERWRITTEN: De verificatie is mislukt, maar de I-PDU is wegens een actieve override-status doorgestuurd naar de bovenste laag.

Interpretatie: Aangezien het type de verificatiedetails bundelt, wordt het vermoedelijk vooral toegepast in terugkoppelings- en notificatie-interfaces om bovenliggende lagen te informeren over de authenticatietoestand van ontvangen gegevens. Vraag Q-a1099bc88a2981e2 (open)

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

type SecOC_OverrideStatusType [SWS_SecOC_00991] 📄 PDF

Type SecOC_OverrideStatusType.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a5d2888a2f81 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het enumeratietype SecOC_OverrideStatusType definieert de verschillende modi voor het oversturen van de verificatiestatus van I-PDU's in de module SecOC en wordt via de header Rte_SecOC_Type.h beschikbaar gesteld [SWS_SecOC_00991].

De waarden van het enumeratietype bepalen of en hoe de verificatie van de authenticator plaatsvindt en hoe met de binnenkomende I-PDU wordt omgegaan [SWS_SecOC_00991]:

  • SECOC_OVERRIDE_DROP_UNTIL_NOTICE (0x00): De verificatie vervalt zonder CSM-aanroep, de I-PDU wordt verworpen en het verificatieresultaat wordt ingesteld op SECOC_NO_VERIFICATION [SWS_SecOC_00991].
  • SECOC_OVERRIDE_DROP_UNTIL_LIMIT (0x01): Net als hiervoor wordt de verificatie opgeschort en de I-PDU verworpen, maar begrensd totdat het geconfigureerde aantal te oversturen berichten is bereikt [SWS_SecOC_00991].
  • SECOC_OVERRIDE_CANCEL (0x02): Breekt de actieve oversturing van de verificatiestatus af en herstelt het reguliere gedrag [SWS_SecOC_00991].
  • SECOC_OVERRIDE_PASS_UNTIL_NOTICE (0x40) en SECOC_OVERRIDE_PASS_UNTIL_LIMIT (0x42): De authenticatorverificatie wordt uitgevoerd en de I-PDU wordt ongeacht het resultaat doorgestuurd naar de hogere laag; als de verificatie mislukt, wordt het resultaat ingesteld op SECOC_VERIFICATIONFAILURE_OVERWRITTEN (hetzij tot nader order, hetzij tellerbegrensd) [SWS_SecOC_00991].
  • SECOC_OVERRIDE_SKIP_UNTIL_LIMIT (0x41) en SECOC_OVERRIDE_SKIP_UNTIL_NOTICE (0x43): De verificatie vervalt, het resultaat luidt SECOC_NO_VERIFICATION en de I-PDU wordt overgedragen aan de hogere laag. Als SecOCRxSecuredPduCollection is geconfigureerd, verwerkt SecOC de SecOCRxAuthenticPdu direct, zonder te wachten op de SecOCRxCryptographicPdu [SWS_SecOC_00991].

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_SecOC
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_SecOC@rel:R20-11#96de6dc3
Content hash
96de6dc3
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_SecureOnboardCommunication.pdf#nameddest=SWS_SecOC_00106

Initialisatie en status

SecOC_DeInit functie

This service stops the secure onboard communication. All buffered I - PDU are removed and have to be obtained again, if needed, after Sec OC_ Init has been called. By a call to Sec OC_ De Init the AUTOSAR Sec OC module is put into a not in itialized state (Sec OC_ UNINIT).

void SecOC_DeInit (void);

Returns the version information of this module.

void SecOC_GetVersionInfo (Std_VersionInfoType* versioninfo);
SecOC_Init functie

Initializes the the Sec OC module. Successful initialization leads to state Sec OC_ INIT. In configurations, in which Sec OC is assigned to more than one partition (i.e. Sec OC_ Main Functions are mapped to partition s), Sec OC may provide one init AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_SecureOnboardCommunication function per partition. The decision on whether a single Sec OC_ Init() function or one per partition is provided is implementation - specific. In case a given implementation provides one Sec OC_ Init() function per partition, it is up to the implementation to devise a naming pattern that prevents name clashes among the different Sec OC_ Init() functions (e.g., by adding a suffix containing short name the Ecuc Partition.

void SecOC_Init (const SecOC_ConfigType* config);

Diensten · Get…

Service SecOC_GetRxFreshness.

Std_ReturnType SecOC_GetRxFreshness (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetRxFreshnessAuthData.

Std_ReturnType SecOC_GetRxFreshnessAuthData (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, const uint8* SecOCAuthDataFreshnessValue, uint16 SecOCAuthDataFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

This API returns th e freshness value from the Most Significant Bits in the first byte in the array (Sec OCFreshness Value), in big endian format.

Std_ReturnType SecOC_GetTxFreshness (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetTxFreshnessTruncData.

Std_ReturnType SecOC_GetTxFreshnessTruncData (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength, uint8* SecOCTruncatedFreshnessValue, uint32* SecOCTruncatedFreshnessValueLength);

Diensten · Tp…

Requests cancellation of an ongoing reception of a PDU in a lower layer transport protocol module.

Std_ReturnType SecOC_TpCancelReceive (PduIdType RxPduId);

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

Std_ReturnType SecOC_TpCancelTransmit (PduIdType TxPduId);

Requests transmission of a PDU.

Std_ReturnType SecOC_TpTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Diensten · Overige

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

Std_ReturnType SecOC_IfCancelTransmit (PduIdType TxPduId);

Requests transmission of a PDU.

Std_ReturnType SecOC_IfTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

The service provides the ability to enable the sending of un - authenticated PDU to lower layer. (example: in case authentication build counter has reached the configuration value Sec OCAuthentication Build Attempts or the query of the freshness function returns E_ NOT_ OK or the calculation of the authenticator has returned a non - recoverable error such as returning E_ NOT_ OK or KEY_ FAILURE). T his service is optional (the service is available only if Sec OCDefault Authentication Information Pattern is configured). If the service is not available or the service is available but the service was called with send Default

Std_ReturnType SecOC_SendDefaultAuthenticationInformation (uint16 FreshnessValueID, boolean sendDefaultAuthenticationInformation);

This s ervice provides the ability to inform the application about the result of the verification attempt of a received PDU by the Sec OC module.

void SecOC_VerifyStatus (SecOC_VerificationStatusType verificationStatus);

Service SecOC_VerifyStatusOverride.

Std_ReturnType SecOC_VerifyStatusOverride (uint16 ValueID, SecOC_OverrideStatusType overrideStatus, uint8 numberOfMessagesToOverride);

Callbacks

This function is called to provide the received data of an I - PDU segment (N - PDU) to the upper layer. Each call to this function provides the next part of the I - PDU data. The si ze of the remaining buffer is written to the position indicated by buffer Size Ptr.

BufReq_ReturnType SecOC_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);

Service SecOC_CopyTxData.

BufReq_ReturnType SecOC_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

Indication of a received PDU from a lower layer communication interface module.

void SecOC_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

This interface is used by the Sec OC to indicate that the Secured I - PDU has been initiated for transmission.

void SecOC_SPduTxConfirmation (uint16 SecOCFreshnessValueID);

Service SecOC_StartReception.

BufReq_ReturnType SecOC_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.

void SecOC_TpRxIndication (PduIdType id, Std_ReturnType result);

This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

void SecOC_TpTxConfirmation (PduIdType id, Std_ReturnType result);

Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.

Std_ReturnType SecOC_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

void SecOC_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

Callouts en verwachte interfaces

Service is used to propagate the status of each verification attempt from the Sec OC module to other modules. This service can be configured such that:  Only: "False" Verifica tion Status is propagated to modules  Both: "True" and "False" Verification Status are propagated to modules  None: No Verification Status is propagated

void SecOC_VerificationStatusCallout (SecOC_VerificationStatusType verificationStatus);

Cyclisch

This function performs the processing of the Sec OC module's authentication and verification processing for the Rx path. Per configured Sec OCMain Function Rx instance one Sec OC_ Main Function Rx_ shall be implemented. Hereby is the short name of the Sec OCMain Function Rx configuration container in the ECU configuration.

void SecOC_MainFunctionRx (void);

This function performs the processing of the Sec OC module's authentication and verification processing for the Tx path. Per configured Sec OCMain Function Tx instance one Sec OC_ Main Function Tx_ shall be implemented. Hereby is t he short name of the Sec OCMain Function Tx configuration container in the ECU configuration.

void SecOC_MainFunctionTx (void);

Typen

Configuration data structure of Sec OC module

Type SecOC_OverrideStatusType.

States of the Sec OC module

Enumeration to indicate veri fication results.

Data structure to bundle the status of a verification attempt for a specific Freshness Value and Data ID