Dient voor het beveiligd uitpakken en importeren van beschermde cryptografische sleutels en gegevens in een applicatie.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a42cd9e6f52bHerkomstOpen vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Dient voor het beveiligd uitpakken en importeren van beschermde cryptografische sleutels en gegevens in een applicatie.
De interface maakt het veilig uitpakken en importeren van beschermde cryptografische gegevens en sleutels mogelijk met behulp van een geconfigureerde transportsleutel [SWS_CRYPT_50205]. Het uitgepakte sleutelmateriaal kan ofwel direct in een persistente sleutelsleuf worden geschreven of getypeerd als sleutelobject in het geheugen worden geladen [SWS_CRYPT_50207]. Alle methoden werken thread-safe en volgen een strikte rollback-foutsemantiek, terwijl Reset het restloos wissen van interne buffers waarborgt [SWS_CRYPT_50212].
Context
De interface ara::crypto::cryp::ProtectedKeyImportCtx stelt een cryptografische context beschikbaar om beschermde datastructuren zoals geheim sleutelmateriaal veilig in het systeem te importeren en uit te pakken. De context fungeert als intermediair tussen een verzoekende applicatie, een beveiligingsmechanisme op basis van een transportsleutel en de doelstructuren van de AUTOSAR-cryptografie. Binnenkomende geserialiseerde datapakketten worden door de context geauthenticeerd, ontsleuteld en geparset [SWS_CRYPT_50207]. Als bronnen voor de benodigde transportsleutel dienen ofwel opzichzelfstaande symmetrische sleutelobjecten [SWS_CRYPT_50205] of sleutelsleuven van een sleutelopslag [SWS_CRYPT_50206]. Als sink kunnen uitgepakte sleutelobjecten direct aan de aanroepende applicatie worden overgedragen of onmiddellijk naar een beschrijfbare sleutelsleuf worden geserialiseerd [SWS_CRYPT_50207].
Levenscyclus
De context wordt voor gezamenlijke toegang gewoonlijk beheerd via het beschikbaar gestelde smart-pointertype Sptr[SWS_CRYPT_50085]; instanties worden daarbij vermoedelijk geleverd door een verantwoordelijke crypto-drivercomponent. Vraag Q-3517b24b5eec4529 (open) Voorafgaand aan de feitelijke verwerking bevindt de context zich in een ongeconfigureerde initiële toestand, waarin nog geen transportsleutel is toegewezen. De toewijzing van een transportsleutel vindt plaats via de methode SetKey, waardoor de context overgaat naar de operationele toestand [SWS_CRYPT_50205][SWS_CRYPT_50206].
Na succesvolle uitvoering van de operatie Import houdt de context de uitgepakte gegevens en metadata aan in interne buffers, zodat het objecttype kan worden geïdentificeerd en sleutelobjecten kunnen worden uitgelezen [SWS_CRYPT_50207][SWS_CRYPT_50208]. Via de methode Reset wordt de context weer teruggezet naar zijn initiële toestand: alle interne buffers met eerder geïmporteerde gegevens worden volledig gewist en de opgeslagen transportsleutel wordt verwijderd [SWS_CRYPT_50212]. Alle interfacemethoden zijn gespecificeerd als uitzonderingsveilig en thread-safe, waardoor gelijktijdige toegangen vanuit meerdere uitvoeringscontexten beheersbaar blijven [SWS_CRYPT_50207].
De reguliere workflow begint met de configuratie van de transportsleutel. Hiervoor roept de applicatie SetKey aan met ofwel een SymmetricKey::Sptr[SWS_CRYPT_50205] of met een KeySlot::Sptr[SWS_CRYPT_50206]. In de volgende stap wordt de methode Import uitgevoerd, waaraan het geserialiseerde datapakket als ReadOnlyMemRegion wordt doorgegeven [SWS_CRYPT_50207]. Voor zover de sleutel persistent moet worden opgeslagen, kan optioneel direct een WriteableKeySlot::Sptr worden doorgegeven, waarin het uitgepakte materiaal wordt geschreven [SWS_CRYPT_50207].
Als er geen doel-slot is opgegeven of als de sleutel vluchtig moet worden gebruikt, bepaalt de applicatie via GetCryptoObjectType de categorie van het laatst geïmporteerde object [SWS_CRYPT_50208]. Aan de hand van dit type roept de applicatie de bijbehorende ophaalmethode aan: GetPrivateKey voor privésleutels [SWS_CRYPT_50209], GetPublicKey voor publieke sleutels [SWS_CRYPT_50211] of GetSymmetricKey voor symmetrisch sleutelmateriaal [SWS_CRYPT_50210]. Vereist het gebruikte importprotocol een terugmelding aan de afzender – zoals bijvoorbeeld bij de controleblokken M4 en M5 van een SHE-LoadKey-sequentie –, dan kan deze via GetResponse in een beschikbaar gestelde buffer worden geschreven [SWS_CRYPT_41020]. Na afronding van de verwerkingssequentie brengt een aanroep van Reset de context weer terug in de begintoestand [SWS_CRYPT_50212].
Als er tijdens een methode-aanroep een fout optreedt, treedt een strikte rollback-semantiek in werking die de toestand van vóór de aanroep behoudt. Bij de configuratie via SetKey mislukt de aanroep met CryptoErrc::kUsageViolation als de gebruiksvlag van de sleutel de machtiging kAllowKeyUnwrapping niet bevat [SWS_CRYPT_50205][SWS_CRYPT_50206]. Is het sleutelobject of het gereferentieerde slot principieel niet als transportsleutel bruikbaar, dan wordt CryptoErrc::kIncompatibleObject gemeld [SWS_CRYPT_50205][SWS_CRYPT_50206].
Bij de aanroep van Import leiden grootteafwijkingen van de invoergegevens tot CryptoErrc::kInvalidInputSize en formatschendingen tot CryptoErrc::kInvalidArgument[SWS_CRYPT_50207]. Mislukt de integriteits- of authenticiteitscontrole van de beveiligingslaag (bijv. door een ongeldige Message Authentication Code of een onjuiste handtekening), dan levert de aanroep CryptoErrc::kAuthTagNotValid[SWS_CRYPT_50207] op. Als de cryptocomponent tijdelijk bezet is, wordt dit gesignaleerd via CryptoErrc::kBusyResource[SWS_CRYPT_50207].
Voorwaarde voor het uitlezen van geïmporteerde sleutels is de succesvolle uitvoering van Import; anders reageren GetPrivateKey, GetPublicKey en GetSymmetricKey met CryptoErrc::kProcessingNotFinished[SWS_CRYPT_50209][SWS_CRYPT_50210][SWS_CRYPT_50211]. Komt het aangevraagde sleuteltype niet overeen met het daadwerkelijk uitgepakte object of is er nog geen object geïmporteerd, dan bevestigen de ophaalmethoden dit met CryptoErrc::kNoSuchValue[SWS_CRYPT_50208][SWS_CRYPT_50209][SWS_CRYPT_50210][SWS_CRYPT_50211]. Biedt de uitvoerbuffer bij GetResponse onvoldoende capaciteit, dan resulteert dit in CryptoErrc::kInsufficientCapacity[SWS_CRYPT_41020]. Ondersteunt de concrete implementatie een deelfunctie niet (bijv. bepaalde sleuteltypen of het resetten), dan wordt uniform CryptoErrc::kUnsupported geretourneerd [SWS_CRYPT_50205][SWS_CRYPT_50208][SWS_CRYPT_50212].
Deze klassenhandleiding is gebaseerd op de specificatie AUTOSAR Adaptive Platform Release R25-11.
The interface shall write the response of the CryptoProvider to the last invocation of Import into the provided output buffer. E.g., this interface could return M4/M5 of a SHE LoadKey operation.
virtual ara::core::Result< std::size_t > GetResponse (ReadWriteMem Region responseBuffer) const noexcept=0; DIRECTION NOT responseBuffer -- DEFINED
The interface shall unwrap the protected data provided, parse the content, and make the parsed content (key-material and meta-data) available for retrieval by the application. If optionally a Key Slot is specified, the unwrapped key material shall be directly serialized into the KeySlot.
The interface shall restore the context to its initial state by ensuring that no key-import-key is set and all previously imported data is deleted from the ProtectedKeyImportCtx’s internal buffers.
The interface shall return a shared pointer to the unwrapped PrivateKey.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 569ddfa8ee2aHerkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode GetPrivateKey van de klasse ara::crypto::cryp::ProtectedKeyImportCtx (beschikbaar gesteld via de header #include "ara/crypto/cryp/protected_key_import_ctx.h") dient om een shared pointer naar een vooraf geïmporteerde en uitgepakte privésleutel (PrivateKey::Sptr) op te halen ([SWS_CRYPT_50209]). De interface heeft geen invoerparameters en retourneert het resultaat synchroon als ara::core::Result<PrivateKey::Sptr> ([SWS_CRYPT_50209]).
Voor de uitvoering gelden bindende voorschriften betreffende volgorde, gelijktijdigheid en uitzonderingsveiligheid: De methode is gespecificeerd als thread-safe en exception safe en gedeclareerd met noexcept ([SWS_CRYPT_50209]). Een dwingende voorwaarde voor het succesvol ophalen is dat er vooraf binnen de context een importoperatie succesvol is uitgevoerd ([SWS_CRYPT_50209]).
Treedt er bij het beschikbaar stellen een fout op, dan geldt voor alle foutsituaties een rollback-semantiek ([SWS_CRYPT_50209]). De geretourneerde Result bevat in dat geval een van de volgende specifieke foutcodes:
ara::crypto::CryptoErrc::kProcessingNotFinished: De voorafgaande importstap is nog niet succesvol uitgevoerd ([SWS_CRYPT_50209]).
ara::crypto::CryptoErrc::kNoSuchValue: Het laatst geïmporteerde CryptoObject is geen privésleutel ([SWS_CRYPT_50209]).
ara::crypto::CryptoErrc::kUnsupported: De context ondersteunt de import van privésleutels principieel niet ([SWS_CRYPT_50209]).
Deze gebruiksinstructie is opgesteld door een AI op basis van de AUTOSAR-specificatie R25-11.
The interface shall return a shared pointer to the unwrapped PublicKey.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: b41e5e96382cHerkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode GetPublicKey van de klasse ara::crypto::cryp::ProtectedKeyImportCtx dient voor het synchroon ophalen van een pointer naar een eerder geïmporteerde, uitgepakte openbare sleutel ([SWS_CRYPT_50211]). De functie accepteert geen overdrachtsparameters en retourneert het resultaat typeveilig als ara::core::Result<PublicKey::Sptr> ([SWS_CRYPT_50211]).
Vóór de aanroep moet een importbewerking succesvol zijn voltooid; anders mislukt de aanroep en levert deze de foutcode ara::crypto::CryptoErrc::kProcessingNotFinished op ([SWS_CRYPT_50211]). Was het laatst geïmporteerde crypto-object geen openbare sleutel, dan resulteert dit in de fout ara::crypto::CryptoErrc::kNoSuchValue ([SWS_CRYPT_50211]). Voor zover de concrete importcontext het inbrengen van openbare sleutels principieel niet ondersteunt, wordt ara::crypto::CryptoErrc::kUnsupported gemeld ([SWS_CRYPT_50211]). Bij alle gespecificeerde fouten garandeert de interface rollback-semantiek ([SWS_CRYPT_50211]).
Wat betreft concurrency en foutbestendigheid is de methode gespecificeerd als thread-safe en exception-safe en werpt zij geen C++-uitzonderingen op (noexcept) ([SWS_CRYPT_50211]).
Functioneel onderscheidt dit importmechanisme zich van andere interfaces: terwijl hier een beveiligd object wordt uitgepakt, levert de gelijknamige functie op ara::crypto::cryp::PrivateKey ([SWS_CRYPT_22511]) de openbare sleutel van een bestaande privésleutel die bijvoorbeeld eerder met GeneratePrivateKey ([SWS_CRYPT_20722]) is gegenereerd.
Deze tekst is door een AI op basis van de specificatievoorschriften gegenereerd.
virtual ara::core::Result< std::size_t > GetResponse (ReadWriteMem Region responseBuffer) const noexcept=0; DIRECTION NOT responseBuffer -- DEFINED
The interface shall write the response of the CryptoProvider to the last invocation of Import into the provided output buffer. E.g., this interface could return M4/M5 of a SHE LoadKey operation.
The interface shall return a shared pointer to the unwrapped SymmetricKey.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: cefc876d47dbHerkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode GetSymmetricKey van de klasse ara::crypto::cryp::ProtectedKeyImportCtx retourneert een shared pointer naar een uitgepakte symmetrische sleutel (SymmetricKey::Sptr) [SWS_CRYPT_50210]. De aanroep vindt synchroon plaats, is gedeclareerd als const en noexcept en accepteert geen parameters [SWS_CRYPT_50210].
Voor het succesvol ophalen moet aan bepaalde voorwaarden en volgordes worden voldaan [SWS_CRYPT_50210]:
Vooraf moet een importproces succesvol zijn afgesloten; anders mislukt de aanroep met de foutcode ara::crypto::CryptoErrc::kProcessingNotFinished[SWS_CRYPT_50210].
Betreft het laatst geïmporteerde cryptografische object geen symmetrische sleutel, dan retourneert de methode ara::crypto::CryptoErrc::kNoSuchValue[SWS_CRYPT_50210].
Indien de gekozen importcontext het importeren van symmetrische sleutels in het algemeen niet ondersteunt, wordt de fout ara::crypto::CryptoErrc::kUnsupported gemeld [SWS_CRYPT_50210].
Wat betreft uitvoeringsveiligheid is de interface gespecificeerd als thread-safe en exception-safe [SWS_CRYPT_50210]. Alle gedefinieerde foutgevallen bieden een rollback-semantiek, zodat de toestand van de context bij fouten ongewijzigd blijft [SWS_CRYPT_50210].
Deze tekst is gegenereerd door een AI op basis van de specificatie AUTOSAR R25-11.
The interface shall unwrap the protected data provided, parse the content, and make the parsed content (key-material and meta-data) available for retrieval by the application. If optionally a Key Slot is specified, the unwrapped key material shall be directly serialized into the KeySlot.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 89f9277cd6aaHerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Gebruik
De synchrone methode Import van de klasse ara::crypto::cryp::ProtectedKeyImportCtx pakt beveiligde sleutelgegevens uit het geheugengebied serialized ([SWS_CRYPT_50207]) uit. Deze analyseert de gegevensinhoud en stelt het geëxtraheerde sleutelmateriaal evenals metagegevens beschikbaar voor het aansluitend ophalen. Wordt optioneel een WriteableKeySlot doorgegeven, dan wordt het sleutelmateriaal direct in dit slot geserialiseerd ([SWS_CRYPT_50207]). Interpretatie: wordt er geen keySlot doorgegeven, dan blijft het sleutelmateriaal vermoedelijk uitsluitend in de status van de importcontext. Vraag Q-130f11475af1bb33 (open)
Foutafhandeling
De functie levert een ara::core::Result<void> op. Faalt de operatie, dan geldt voor alle foutcodes een rollback-semantiek ([SWS_CRYPT_50207]):
ara::crypto::CryptoErrc::kInvalidInputSize: De invoergrootte van serialized is onverwacht ([SWS_CRYPT_50207]).
ara::crypto::CryptoErrc::kInvalidArgument: De geserialiseerde gegevens voldoen niet aan het verwachte formaat ([SWS_CRYPT_50207]).
ara::crypto::CryptoErrc::kAuthTagNotValid: Authenticatiecontrole (MAC of handtekening) mislukt ([SWS_CRYPT_50207]).
ara::crypto::CryptoErrc::kBusyResource: De bewerking kan tijdelijk niet worden uitgevoerd ([SWS_CRYPT_50207]).
Gelijktijdigheid en wisselwerking
De methode is thread-safe en exception-safe (noexcept) ([SWS_CRYPT_50207]). Na een succesvolle aanroep kan het uitgepakte sleutelobject via GetPrivateKey ([SWS_CRYPT_50209]), GetSymmetricKey ([SWS_CRYPT_50210]) of GetPublicKey ([SWS_CRYPT_50211]) uit de context worden opgehaald. Vereist het onderliggende protocol een terugkoppeling naar de zender, dan stelt GetResponse ([SWS_CRYPT_41020]) het antwoord van de crypto-provider beschikbaar. Voor onbeveiligde sleutelformaten dienen alternatief de methoden ImportPublicKey ([SWS_CRYPT_20732]), ImportSymmetricKey ([SWS_CRYPT_50014]) en ImportPrivateKey ([SWS_CRYPT_50132]) van de factoryklasse CryptoProvider.
Deze tekst is gegenereerd door een AI op basis van de specificatie AUTOSAR R25-11.
The interface shall restore the context to its initial state by ensuring that no key-import-key is set and all previously imported data is deleted from the ProtectedKeyImportCtx’s internal buffers.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 21bf97fcdbf3Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode Reset zet de instantie van ara::crypto::cryp::ProtectedKeyImportCtx terug naar haar begintoestand [SWS_CRYPT_50212]. Daarbij waarborgt de interface dat er geen Key-Import-Key (KIK) meer is ingesteld en dat alle eerder geïmporteerde data volledig uit de interne buffers van de context worden gewist [SWS_CRYPT_50212].
De aanroep vindt synchroon plaats en is volgens de specificatie geclassificeerd als thread-safe en exception safe[SWS_CRYPT_50212]. De methode declareert de signatuur virtual ara::core::Result<void> Reset() const noexcept = 0; en vereist het insluiten van de header ara/crypto/cryp/protected_key_import_ctx.h[SWS_CRYPT_50212].
Foutafhandeling
Het resultaat wordt geretourneerd via ara::core::Result<void>[SWS_CRYPT_50212]. Mislukt de bewerking, dan levert de interface een foutcode op:
ara::crypto::CryptoErrc::kUnsupported: Treedt op wanneer de specifieke context het resetten van zijn toestand niet ondersteunt (rollback-semantiek) [SWS_CRYPT_50212].
Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de specificatie SWS_CRYPT_50212.
The interface shall configure the context to use the provided symmetric key as transport key.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: bb7a4eb711eaHerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode SetKey van de klasse ara::crypto::cryp::ProtectedKeyImportCtx configureert de context zodanig dat het doorgegeven symmetrische sleutelobject key (SymmetricKey::Sptr) als transportsleutel wordt gebruikt [SWS_CRYPT_50205]. De aanroep verloopt synchroon en retourneert een ara::core::Result<void>[SWS_CRYPT_50205].
Foutafhandeling
Als er bij de configuratie een fout optreedt, wordt deze met rollback-semantiek gemeld, zodat de vorige status van de context ongewijzigd blijft [SWS_CRYPT_50205]. De volgende foutcodes zijn gedefinieerd:
ara::crypto::CryptoErrc::kUnsupported: Wordt geretourneerd indien de context uitsluitend de toewijzing van een KeySlot ondersteunt [SWS_CRYPT_50205].
ara::crypto::CryptoErrc::kIncompatibleObject: Het verstrekte sleutelobject kan niet als transportsleutel worden gebruikt [SWS_CRYPT_50205].
ara::crypto::CryptoErrc::kUsageViolation: De gebruiksvlaggen van de sleutel bevatten niet de vereiste machtiging kAllowKeyUnwrapping[SWS_CRYPT_50205].
Gelijktijdigheid en wisselwerking
De operatie is gespecificeerd als thread-safe (thread-safe) en exception-safe (exception safe) en genereert geen excepties (noexcept) [SWS_CRYPT_50205]. Terwijl contexten zoals SymmetricKeyWrapperCtx een sleutel binden voor beveiliging resp. wrapping [SWS_CRYPT_24018], dient de sleutel hier voor de import van beveiligde sleutels. De foutvoorwaarde kUnsupported verwijst bovendien naar architecturen waarin contexten alternatief via een KeySlot worden geconfigureerd [SWS_CRYPT_50034]. Interpretatie: de toewijzing van de transportsleutel moet vermoedelijk verplicht zijn voltooid vóór daaropvolgende importoperaties. Vraag Q-f1f3eab5ab896b1b (open)
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatie R25-11.
The interface shall configure the context to use the key stored in the provided KeySlot at the time the import operation is started as the transport key.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e6e7bd1f753cHerkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Gebruik
De methode SetKey configureert de context [SWS_CRYPT_50206] (ara::crypto::cryp::ProtectedKeyImportCtx) zodanig dat de in het doorgegeven KeySlot::Sptr keySlot opgeslagen symmetrische sleutel op het starttijdstip van het importproces als transportsleutel wordt gebruikt. De aanroep verloopt synchroon en levert een ara::core::Result<void> op.
Foutafhandeling
Als er bij de configuratie een fout optreedt, geldt een rollback-semantiek [SWS_CRYPT_50206]. Specifieke foutcodes omvatten:
ara::crypto::CryptoErrc::kUnsupported: Wanneer de context uitsluitend het instellen van een direct SymmetricKey-object ondersteunt [SWS_CRYPT_50206].
ara::crypto::CryptoErrc::kIncompatibleObject: Wanneer de in het slot aanwezige sleutel niet als transportsleutel kan worden gebruikt [SWS_CRYPT_50206].
ara::crypto::CryptoErrc::kUsageViolation: Wanneer de toegestane gebruiksvlaggen van de sleutel in het KeySlot niet de vlag kAllowKeyUnwrapping bevatten [SWS_CRYPT_50206].
Gelijktijdigheid en wisselwerking
De functie is gespecificeerd als exception-safe (exception safe) en thread-safe (thread-safe) [SWS_CRYPT_50206]. De sleutel wordt pas bij de start van de volgende import vanuit het slot geëvalueerd [SWS_CRYPT_50206]. Terwijl andere cryptografische contexten zoals SymmetricKeyWrapperCtx[SWS_CRYPT_50034] of KeyDerivationFunctionCtx[SWS_CRYPT_50010] eveneens slots als sleutelbron kunnen inbinden, vereist ProtectedKeyImportCtx::SetKey expliciet de machtiging voor het uitpakken van sleutels.
Deze tekst is gegenereerd door een AI-ondersteund documentatieprogramma en vervangt niet het raadplegen van de officiële AUTOSAR-specificaties.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel