DEENESPTFRRUARHIKOZHNL

klasse ara::crypto::cryp::SymmetricKeyWrapperCtx

[SWS_CRYPT_24000] Upstream: RS_CRYPTO_02104, RS_CRYPTO_02208

class SymmetricKeyWrapperCtx :               public CryptoContext {...};

Context of a symmetric key wrap algorithm.

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::cryp
Basisklasse(n)CryptoContext

User GuideAI-GEGENEREERD

Maakt het veilig inpakken en uitpakken van sleutels door middel van symmetrische sleutelversleuteling mogelijk.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 16126e8d9692 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Maakt het veilig inpakken en uitpakken van sleutels door middel van symmetrische sleutelversleuteling mogelijk.

De context SymmetricKeyWrapperCtx dient voor het cryptografisch inpakken en uitpakken van sleutels door middel van symmetrische algoritmen. Vóór de uitvoering van Wrap of UnwrapSymmetricKey moet de context via SetKey worden geconfigureerd met een compatibele sleutelversleutelingssleutel (KEK) [SWS_CRYPT_24018]. Alle bewerkingen vereisen de bijbehorende gebruiksrechten van de betrokken sleutelobjecten en melden fouten via ara::core::Result met rollback-semantiek [SWS_CRYPT_24014]. De interface is uitzonderingsveilig en gespecificeerd als thread-safe voor gelijktijdig gebruik.

Context

De klasse SymmetricKeyWrapperCtx definieert de gestandaardiseerde interface voor symmetrische sleutelwikkelingsalgoritmen (Key Wrapping) binnen het AUTOSAR Adaptive Platform. Haar centrale verantwoordelijkheid bestaat uit de cryptografische bescherming van sleutels bij export en bij het herstellen van ingepakte sleutels voor intern gebruik. Hierbij interageert de klasse primair met sleutelversleutelingssleutels (Key Encryption Keys, KEK), die hetzij als vluchtig sleutelobject van het type SymmetricKey hetzij persistent via een KeySlot beschikbaar worden gesteld [SWS_CRYPT_24018], [SWS_CRYPT_50034]. Bij het inpakken ontvangt de context een generiek CryptoObject [SWS_CRYPT_24014], terwijl de uitpakbewerking een nieuw, inzetbaar SymmetricKey-object genereert en teruglevert [SWS_CRYPT_24016].

Levenscyclus

Instanties van SymmetricKeyWrapperCtx worden beheerd via de getypeerde smart pointer Sptr (een alias voor std::shared_ptr<SymmetricKeyWrapperCtx>) [SWS_CRYPT_24001]. Het daadwerkelijke aanmaken van objecten zal vermoedelijk plaatsvinden via een bevoegde provider-factory, aangezien de klasse een abstracte interface met zuiver virtuele methoden vormt. Vraag Q-7b9a1007da43ddcd (open) Alle elementfuncties van de interface zijn gespecificeerd als uitzonderingsveilig (exception safe) en thread-safe, wat een veilig gebruik in gelijktijdige softwarecomponenten mogelijk maakt [SWS_CRYPT_24014], [SWS_CRYPT_24016].

In de levenscyclus doorloopt de context twee essentiële fasen: direct na de instantiëring bevindt deze zich in een niet-geïnitialiseerde toestand. In deze fase mislukken cryptografische bewerkingen en bufferberekeningen met de fout kUninitializedContext [SWS_CRYPT_50035], [SWS_CRYPT_24014]. Pas door de succesvolle aanroep van SetKey met een compatibele KEK of KeySlot gaat de context over naar de bedrijfsklare toestand, waarin sleutels veilig kunnen worden ingepakt of uitgepakt [SWS_CRYPT_24018], [SWS_CRYPT_50034].

Gebruikspad

Het reguliere verloop voor het inpakken van een sleutel vereist een gecoördineerde opeenvolging van configuratie, buffercontrole en uitvoering. Eerst configureert de applicatie de context via SetKey met het gewenste KEK-object [SWS_CRYPT_24018] of koppelt een corresponderende KeySlot aan [SWS_CRYPT_50034]. In de tweede stap bepaalt de applicatie via GetRequiredWrappedKeyBufferSize de maximaal benodigde uitvoerbuffergrootte voor het in te pakken doelobject [SWS_CRYPT_50035]. Nadat een passend gedimensioneerd geheugenbereik (ReadWriteMemRegion) beschikbaar is gesteld, volgt de aanroep van Wrap, die de geserialiseerde en versleutelde sleutelgegevens naar de buffer schrijft en het exacte aantal bytes retourneert [SWS_CRYPT_24014].

Symmetrischer Key-Wrapping-AblaufAnwendungSymmetricKeyWrapperCtxSetKey(kek)ara::core::Result<void>GetRequiredWrappedKeyBufferSize(key)ara::core::Result<std::size_t>Wrap(key, wrappedKey)ara::core::Result<std::size_t>

Sequentiediagram: typische aanroepvolgorde voor symmetrische sleutelverpakking. Bronnen: [SWS_CRYPT_24018], [SWS_CRYPT_50035], [SWS_CRYPT_24014]

Voor het complementaire uitpakproces draagt de applicatie na de configuratie door middel van SetKey de invoerbuffer met de gewikkelde gegevens over aan UnwrapSymmetricKey [SWS_CRYPT_24016]. Daarbij moeten de doelalgoritme-identificatie (targetAlgId) en de toegestane gebruiksvlaggen (allowedUsage) voor de nieuw te genereren symmetrische sleutel expliciet worden vastgelegd [SWS_CRYPT_24016].

Foutscenario's

Methoden van de klasse signaleren fouten via het retourtype ara::core::Result met rollback-semantiek. Tot de centrale foutscenario's behoren:

  • Ontbrekende initialisatie: worden GetRequiredWrappedKeyBufferSize, Wrap of UnwrapSymmetricKey aangeroepen vóór een succesvolle sleuteltoewijzing, dan leveren zij ara::crypto::CryptoErrc::kUninitializedContext [SWS_CRYPT_50035], [SWS_CRYPT_24014], [SWS_CRYPT_24016].
  • Schending van gebruiksrechten: bij het instellen van de KEK moet deze ten minste de machtiging kAllowKeyWrapping of kAllowKeyUnwrapping bezitten, anders mislukt SetKey met ara::crypto::CryptoErrc::kUsageViolation [SWS_CRYPT_24018]. Bij Wrap leidt het ontbreken van kAllowKeyWrapping op de KEK of het ontbreken van kAllowSecuredExport op het in te pakken object eveneens tot kUsageViolation [SWS_CRYPT_24014]. Bij het uitpakken wordt gecontroleerd of de KEK kAllowKeyUnwrapping toestaat [SWS_CRYPT_24016].
  • Incompatibiliteiten en bufferfouten: als de doelbuffer voor Wrap te klein is, wordt ara::crypto::CryptoErrc::kInsufficientCapacity gemeld [SWS_CRYPT_24014]. Foutieve sleutelformaten of incompatibele typen leiden tot ara::crypto::CryptoErrc::kInvalidArgument [SWS_CRYPT_24014], [SWS_CRYPT_24016]. Ondersteunt de context alleen slots respectievelijk alleen sleutelobjecten, dan meldt SetKey de fout kUnsupported [SWS_CRYPT_24018], [SWS_CRYPT_50034].
  • Resourceconflicten en lege slots: grijpt de bewerking aan op een bezette resource, dan wordt ara::crypto::CryptoErrc::kBusyResource geretourneerd; is het gerefereerde KeySlot leeg, dan resulteert dit in ara::crypto::CryptoErrc::kEmptyKeySlot [SWS_CRYPT_24014], [SWS_CRYPT_24016].

Deze handleiding is opgesteld door een AI en baseert zich uitsluitend op de AUTOSAR-specificatie.

Ledenkaart

Klassendiagram

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__crypto__cryp__SymmetricKeyWrapperCtx465 SymmetricKeyWrapperCtx + GetRequiredWrappedKeyBufferSize() + SetKey() + UnwrapSymmetricKey() + Wrap() nara__crypto__cryp__CryptoContext85 CryptoContext nara__crypto__cryp__SymmetricKeyWrapperCtx465->nara__crypto__cryp__CryptoContext85

Detailweergave

Kies een item in de inhoudsopgave.

Methoden

Calculate the maximum required size of the wrapped key output buffer depending on the key to be wrapped.

virtual ara::core::Result< std::size_t > GetRequiredWrappedKeyBuffer Size (const CryptoObject &key) const noexcept;
SetKey functie 2

Configure the context to use the provided key as key encryption key.

Overloads SetKey 2
virtual ara::core::Result< void > SetKey (SymmetricKey::Sptr key) noexcept=0; SWS_CRYPT_24018
virtual ara::core::Result< void > SetKey (KeySlot::Sptr keySlot) noexcept=0; SWS_CRYPT_50034

Unwrap a wrapped key using the previously set key encryption key and return an SymmetricKey.

virtual ara::core::Result< SymmetricKey::Sptr > UnwrapSymmetricKey (ReadOnlyMemRegion wrappedKey, AlgId targetAlgId, AllowedUsageFlags allowedUsage) const noexcept=0;
Wrap functie

Wrap the provided key using the previously set key encryption key.

virtual ara::core::Result< std::size_t > Wrap (CryptoObject::Sptr key, ReadWriteMemRegion wrappedKey) const noexcept=0;

Type-aliassen

Sptr typealias

Smart pointer of the interface.

Documentatie van de methoden

functie GetRequiredWrappedKeyBufferSize [SWS_CRYPT_50035] Upstream: RS_CRYPTO_02302

virtual ara::core::Result< std::size_t > GetRequiredWrappedKeyBuffer Size (const CryptoObject &key) const noexcept;

Calculate the maximum required size of the wrapped key output buffer depending on the key to be wrapped.

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Scopeclass ara::crypto::cryp::SymmetricKeyWrapperCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
keykey to be wrapped

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >a result containing the required capacity of the output buffer in bytes or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kUninitializedContextrollback_semantics if the context was not initialized by deploying a key

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50035
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50035@rel:R25-11#33f31631
Content hash
33f31631
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50035
Status: valid/unmigrated Version: rel:R25-11#79bcf3cd Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_50035@rel:R25-11#79bcf3cd
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie SetKey [SWS_CRYPT_24018] Upstream: RS_CRYPTO_02001, RS_CRYPTO_02003

virtual ara::core::Result< void > SetKey (SymmetricKey::Sptr key) noexcept=0;

Configure the context to use the provided key as key encryption key.

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

Gebruik en semantiek

De synchrone lidfunctie SetKey configureert een instantie van ara::crypto::cryp::SymmetricKeyWrapperCtx zodanig dat het doorgegeven object SymmetricKey::Sptr als Key Encryption Key (KEK) voor opeenvolgende sleutelbewerkingen wordt gebruikt [SWS_CRYPT_24018]. De functie is gespecificeerd als pure virtuele methode met noexcept en retourneert een lege ara::core::Result<void>, mits de toewijzing succesvol was [SWS_CRYPT_24018].

Foutafhandeling en rollback

Treedt bij de configuratie een fout op, dan geldt een bindende rollback-semantiek, zodat de toestand van de context ongewijzigd blijft [SWS_CRYPT_24018]. Mogelijke foutoorzaken worden via foutcodes uit ara::crypto::CryptoErrc weergegeven:

  • kIncompatibleObject: Het doorgegeven sleutelobject is incompatibel met de symmetrische context [SWS_CRYPT_24018].
  • kUsageViolation: Het toegestane gebruik van de sleutel omvat noch kAllowKeyWrapping noch kAllowKeyUnwrapping [SWS_CRYPT_24018].
  • kUnsupported: De contextimplementatie ondersteunt uitsluitend het instellen van een sleutel via een KeySlot [SWS_CRYPT_24018].

Gelijktijdigheid en wisselwerking

De methode is gespecificeerd als thread-safe en uitzonderingsveilig (exception safe) [SWS_CRYPT_24018]. Indien sleutels via slots worden beheerd of de context uitsluitend KeySlots ondersteunt, bestaat voor dezelfde wrapper-context de alternatieve overbelasting SetKey met KeySlot::Sptr [SWS_CRYPT_50034]. Deze configureert de context zodanig dat de in het slot opgeslagen sleutel op het uitvoeringstijdstip van de key-wrapping wordt geladen [SWS_CRYPT_50034].

Deze gebruiksinstructie is gebaseerd op de specificatie AUTOSAR Adaptive Platform Release R25-11.

Implementer's Guide volgt (complexiteit I2)

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Scopeclass ara::crypto::cryp::SymmetricKeyWrapperCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
keythe the key encryption key (KEK) object

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kIncompatibleObjectrollback_semantics if the provided key object is incompatible with this symmetric key context
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowKey Wrapping or kAllowKeyUnwrapping
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the context only supports setting a KeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_24018
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_24018@rel:R25-11#f77d4661
Content hash
f77d4661
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_24018
Status: valid/unmigrated Version: rel:R25-11#5ba8abd5 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_24018@rel:R25-11#5ba8abd5
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#07e640252026-09-30
  • R20-11rel:R20-11#dc67c1dc2026-10-14
  • R21-11rel:R21-11#34c85a1a2026-10-14
  • R22-11rel:R22-11#4ead34ac2026-10-14
  • R23-11rel:R23-11#9ca31f482026-10-14
  • R24-11rel:R24-11#bb17e6102026-10-14
  • R25-11rel:R25-11#5ba8abd52026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie SetKey [SWS_CRYPT_50034] Upstream: RS_CRYPTO_02001, RS_CRYPTO_02003

virtual ara::core::Result< void > SetKey (KeySlot::Sptr keySlot) noexcept=0;

Configure the context to use the key stored in the provided KeySlot at the time the key wrapping is performed.

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

Gebruik

De virtuele methode SetKey configureert de context ara::crypto::cryp::SymmetricKeyWrapperCtx zodanig dat de in het beschikbaar gestelde KeySlot opgeslagen sleutel wordt gebruikt zodra de key wrapping wordt uitgevoerd [SWS_CRYPT_50034]. De aanroep verwacht als parameter keySlot een KeySlot::Sptr die een symmetrische sleutel bevat [SWS_CRYPT_50034]. De functie wordt synchroon aangeroepen, is gedeclareerd met noexcept en retourneert een ara::core::Result<void> [SWS_CRYPT_50034].

Foutafhandeling

In geval van een fout waarborgt de methode rollback-semantiek en retourneert een van de volgende foutresultaten [SWS_CRYPT_50034]:

  • ara::crypto::CryptoErrc::kIncompatibleObject: De doorgegeven keySlot is incompatibel met deze context [SWS_CRYPT_50034].
  • ara::crypto::CryptoErrc::kUnsupported: De context ondersteunt uitsluitend het instellen van een directe SymmetricKey [SWS_CRYPT_50034].

Concurrency

De bewerking is thread-veilig (thread-safe) en biedt gegarandeerde exception-veiligheid (exception safe) [SWS_CRYPT_50034].

Samenspel

De interface vormt binnen SymmetricKeyWrapperCtx de slotgebaseerde tegenhanger van de overbelasting SetKey met SymmetricKey::Sptr, die een sleutel direct bindt als Key Encryption Key (KEK) [SWS_CRYPT_24018]. Analoge slotgebaseerde configuratiefuncties worden ook gebruikt in verwante cryptografische contexten zoals KeyDerivationFunctionCtx [SWS_CRYPT_50010], KeyEncapsulatorPublicCtx [SWS_CRYPT_50012], VerifierPublicCtx [SWS_CRYPT_50018], MessageAuthnCodeCtx [SWS_CRYPT_50026] en SignerPrivateCtx [SWS_CRYPT_50036].

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

Implementer's Guide volgt (complexiteit I2)

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Scopeclass ara::crypto::cryp::SymmetricKeyWrapperCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
keySlota keyslot containing a symmetric key

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kIncompatibleObjectrollback_semantics if the provided keySlot is incompatible with this context
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the context only supports setting a SymmetricKey

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50034
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50034@rel:R25-11#1225208a
Content hash
1225208a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50034
Status: valid/unmigrated Version: rel:R25-11#c06f6729 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_50034@rel:R25-11#c06f6729
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie UnwrapSymmetricKey [SWS_CRYPT_24016] Upstream: RS_CRYPTO_02115

virtual ara::core::Result< SymmetricKey::Sptr > UnwrapSymmetricKey (ReadOnlyMemRegion wrappedKey, AlgId targetAlgId, AllowedUsageFlags allowedUsage) const noexcept=0;

Unwrap a wrapped key using the previously set key encryption key and return an SymmetricKey.

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

De methode UnwrapSymmetricKey van de interface ara::crypto::cryp::SymmetricKeyWrapperCtx ontsleutelt een verpakte sleutel met gebruikmaking van de vooraf ingestelde Key Encryption Key (KEK) en levert een nieuw SymmetricKey-object terug [SWS_CRYPT_24016]. Als parameters accepteert de synchrone functie de invoerbuffer met de beschermde sleutelgegevens (wrappedKey), de algoritme-identificatie voor de doelsleutel (targetAlgId) en bit-flags voor de toegestane transformatiesoorten daarvan (allowedUsage) [SWS_CRYPT_24016].

De retourwaarde ara::core::Result<SymmetricKey::Sptr> bevat bij succesvolle uitvoering een smart pointer naar de gegenereerde sleutel of signaleert een fout met rollback-semantiek [SWS_CRYPT_24016]. Mogelijke foutoorzaken zijn:

  • InvalidArgument: De overgedragen sleutelgegevens in wrappedKey kunnen niet worden uitgepakt, bijvoorbeeld vanwege een ongeldig formaat of een onjuiste buffergrootte [SWS_CRYPT_24016].
  • ara::crypto::CryptoErrc::kUninitializedContext: De wrapper-context is nog niet geïnitialiseerd met een passende KEK [SWS_CRYPT_24016].
  • ara::crypto::CryptoErrc::kUsageViolation: De gebruiksbeperkingen van de KEK verbieden het uitpakken (ontbreken van kAllowKeyUnwrapping) [SWS_CRYPT_24016].
  • ara::crypto::CryptoErrc::kUnknownIdentifier: De overgedragen waarde voor targetAlgId is niet bekend of wordt niet ondersteund [SWS_CRYPT_24016].
  • ara::crypto::CryptoErrc::kIncompatibleArguments: De opgegeven allowedUsage-flags zijn incompatibel met targetAlgId of het sleuteltype [SWS_CRYPT_24016].
  • ara::crypto::CryptoErrc::kBusyResource: Een voor de operatie benodigde systeemresource is momenteel bezet [SWS_CRYPT_24016].
  • ara::crypto::CryptoErrc::kEmptyKeySlot: Een voor de operatie geconfigureerde KeySlot is leeg [SWS_CRYPT_24016].

De methode is gedeclareerd als const en noexcept, garandeert exception-veiligheid en is volgens de specificatie thread-safe voor gelijktijdige aanroepen [SWS_CRYPT_24016].

Deze tekst is opgesteld door een AI en dient als richtlijn. Bepalend is de specificatie.

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Scopeclass ara::crypto::cryp::SymmetricKeyWrapperCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
wrappedKeyan input buffer that contains the wrapped key
targetAlgIdthe algId of the to be created unwrapped key
allowedUsagebit-flags that define a list of allowed transformations’ types in which the unwrapped key can be used

Rückgabewert

TypBeschreibung
ara::core::Result<SymmetricKey::Sptr >a result containing the unwrapped SymmetricKey object or an error

Fehler

FehlercodeBeschreibung
InvalidArgumentif the wrapped key data cannot be unwrapped (e.g., invalid format or size)
ara::crypto::CryptoErrc::kUninitializedContextrollback_semantics if the context was not initialized by a key value
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the KEK does not include kAllowKey Unwrapping
ara::crypto::CryptoErrc::kUnknownIdentifierrollback_semantics if targetAlgId has an unsupported value
ara::crypto::CryptoErrc::kIncompatibleArgumentsrollback_semantics if the allowedUsage is incompatible with the targetAlgId or the key type
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the KEK does not include kAllowKey Unwrapping

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

Record
AUTOSAR/AP/record/SWS_CRYPT_24016
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_24016@rel:R25-11#4d10483d
Content hash
4d10483d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_24016
Status: valid/unmigrated Version: rel:R25-11#7d151daa Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_24016@rel:R25-11#7d151daa
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#74bd38af2026-09-30
  • R19-11rel:R19-11#8ec5b1a02026-10-14
  • R20-11rel:R20-11#496f81ad2026-10-14
  • R21-11rel:R21-11#354b26632026-10-14
  • R22-11rel:R22-11#767017ac2026-10-14
  • R23-11rel:R23-11#624822262026-10-14
  • R24-11rel:R24-11#9c4b80db2026-10-14
  • R25-11rel:R25-11#7d151daa2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie Wrap [SWS_CRYPT_24014] Upstream: RS_CRYPTO_02201

virtual ara::core::Result< std::size_t > Wrap (CryptoObject::Sptr key, ReadWriteMemRegion wrappedKey) const noexcept=0;

Wrap the provided key using the previously set key encryption key.

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

Gebruik

De methode Wrap van de klasse ara::crypto::cryp::SymmetricKeyWrapperCtx (headerbestand ara/crypto/cryp/symmetric_key_wrapper_ctx.h) verpakt een beschikbaar gestelde sleutel met gebruikmaking van de vooraf ingestelde sleutelversleutelingssleutel (Key Encryption Key) [SWS_CRYPT_24014].

De synchrone functie verwacht de volgende parameters [SWS_CRYPT_24014]:

  • key (CryptoObject::Sptr): De in te pakken sleutel.
  • wrappedKey (ReadWriteMemRegion): Een uitvoerbuffer waarin de verpakte sleutel wordt geschreven.

Als retourwaarde levert de operatie een ara::core::Result<std::size_t> op, die bij succes het aantal in de buffer geschreven bytes van de verpakte sleutel bevat [SWS_CRYPT_24014].

Foutafhandeling en semantiek

De methode is gedefinieerd als exception safe en implementeert voor foutgevallen een strikte rollback-semantiek [SWS_CRYPT_24014]. De volgende fouttoestanden kunnen worden gemeld [SWS_CRYPT_24014]:

  • InvalidArgument: Het sleutelobject kan niet worden verpakt (bijv. vanwege een ongeldige grootte of een onjuist type).
  • ara::crypto::CryptoErrc::kUninitializedContext: De context is nog niet geïnitialiseerd met een sleutelwaarde.
  • ara::crypto::CryptoErrc::kUsageViolation: Het toegestane gebruik van de KEK omvat niet kAllowKeyWrapping of dat van het object omvat niet kAllowSecuredExport.
  • ara::crypto::CryptoErrc::kInsufficientCapacity: De uitvoerbuffer wrappedKey is te klein.
  • ara::crypto::CryptoErrc::kBusyResource: Een benodigde resource is bezet.
  • ara::crypto::CryptoErrc::kEmptyKeySlot: Een geconfigureerde KeySlot is momenteel leeg.

Gelijktijdigheid en beperkingen

De interface is gespecificeerd als thread-safe [SWS_CRYPT_24014]. Voorwaarde voor de uitvoering is een vooraf geïnitialiseerde context alsmede passende gebruiksattributen van de betrokken sleutels [SWS_CRYPT_24014].

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

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Scopeclass ara::crypto::cryp::SymmetricKeyWrapperCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
keythe key to be wrapped

Parameter (out)

ParameterBeschreibung
wrappedKeyan output buffer that the wrapped key will be written to

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >a result containing either a the number of bytes of the wrapped key or an error

Fehler

FehlercodeBeschreibung
InvalidArgumentif the key object cannot be wrapped (e.g., invalid size or type)
ara::crypto::CryptoErrc::kUninitializedContextrollback_semantics if the context was not initialized by a key value
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the KEK does not include kAllowKey Wrapping or the allowed usage of the object does not include k AllowSecuredExport
ara::crypto::CryptoErrc::kInsufficientCapacityrollback_semantics if the output buffer is too small
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty

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

Record
AUTOSAR/AP/record/SWS_CRYPT_24014
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_24014@rel:R25-11#1dca4207
Content hash
1dca4207
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_24014
Status: valid/unmigrated Version: rel:R25-11#d59df6cf Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_24014@rel:R25-11#d59df6cf
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ac935a362026-09-30
  • R19-11rel:R19-11#b94a246e2026-10-14
  • R20-11rel:R20-11#999104362026-10-14
  • R21-11rel:R21-11#d51795ed2026-10-14
  • R22-11rel:R22-11#f7dabf992026-10-14
  • R23-11rel:R23-11#5c3c2d942026-10-14
  • R24-11rel:R24-11#90cde3442026-10-14
  • R25-11rel:R25-11#d59df6cf2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Documentatie van de typealiassen

typealias Sptr [SWS_CRYPT_24001] Upstream: RS_CRYPTO_02201

using Sptr = std::shared_ptr<SymmetricKeyWrapperCtx>;

Smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/symmetric_key_wrapper_ctx.h"
Scopeclass ara::crypto::cryp::SymmetricKeyWrapperCtx
SymbolSptr

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

Record
AUTOSAR/AP/record/SWS_CRYPT_24001
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_24001@rel:R25-11#3390a320
Content hash
3390a320
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_24001
Status: valid/unmigrated Version: rel:R25-11#aef6197c Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_24001@rel:R25-11#aef6197c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#10e154c52026-09-30
  • R19-11rel:R19-11#521f46bb2026-10-14
  • R20-11rel:R20-11#0ab69c592026-10-14
  • R21-11rel:R21-11#8d463cfa2026-10-14
  • R22-11rel:R22-11#7a7fa6972026-10-14
  • R23-11rel:R23-11#4b170d372026-10-14
  • R24-11rel:R24-11#4b170d372026-10-14
  • R25-11rel:R25-11#aef6197c2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill