DEENESPTFRRUARHIKOZHNL

class ara::crypto::cryp::SymmetricKey

[SWS_CRYPT_23800] Upstream: RS_CRYPTO_02001, RS_CRYPTO_02403

class SymmetricKey :          public CryptoObject {...};

Symmetric Key interface.

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

User GuideKI-GENERIERT

Kapselt symmetrische kryptografische Schlüssel und steuert deren Lebensdauer über geteilte Smart Pointer.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f71a58d7ce35 Herkunft Offene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Kapselt symmetrische kryptografische Schlüssel und steuert deren Lebensdauer über geteilte Smart Pointer.

Die Schnittstelle ara::crypto::cryp::SymmetricKey dient in AUTOSAR Adaptive als Abstraktion für symmetrische kryptografische Schlüssel und erbt grundlegende Eigenschaften von CryptoObject. Anwendungen und Krypto-Kontexte verwalten Schlüsselinstanzen primär über den standardisierten Smart-Pointer-Typ Sptr (std::shared_ptr<SymmetricKey>) gemäß Header ara/crypto/cryp/cryobj/symmetric_key.h [SWS_CRYPT_23801]. Interpretation: Die Instanziierung dürfte über dedizierte Erzeugungsroutinen der Schlüsselverwaltung erfolgen, wobei der Schlüssel zur Konfiguration von Chiffren oder MACs übergeben wird. Frage Q-f76fecc360d2d3a5 (offen) Als maßgebliche Randbedingung bestimmt die Referenzzählung des Shared Pointers die Lebensdauer, sodass das gekapselte Schlüsselobjekt erst nach Freigabe der letzten Referenz zerstört wird [SWS_CRYPT_23801].

Kontext

Die Klasse ara::crypto::cryp::SymmetricKey bildet in der AUTOSAR Adaptive Platform (Release R25-11, Modul crypto) die zentrale Schnittstelle zur Repräsentation symmetrischer kryptografischer Schlüssel. Als elementarer Bestandteil des Kryptografie-Subsystems kapselt das Interface alle Eigenschaften, die für symmetrische kryptografische Verfahren erforderlich sind. Die Klasse ist direkt von CryptoObject abgeleitet (class SymmetricKey : public CryptoObject) und ordnet sich damit in die einheitliche Objekthierarchie für kryptografische Entitäten der Adaptive Platform ein. Deklariert wird die Schnittstelle in der Header-Datei ara/crypto/cryp/cryobj/symmetric_key.h [SWS_CRYPT_23801].

Als Interaktionspartner treten typischerweise kryptografische Ausführungskontexte sowie Schlüsselverwaltungsinstanzen auf. Das Interface fungiert als Bindeglied zwischen der Erzeugung oder Bereitstellung von Schlüsselmaterial und dessen operativer Anwendung. Interpretation: Symmetrische Schlüssel dürften in erster Linie in symmetrischen Chiffrierverfahren (etwa Block- oder Stromchiffren) sowie in Message Authentication Codes (MAC) zum Einsatz kommen, um Vertraulichkeit und Datenintegrität auf Fahrzeugebene abzusichern. Frage (offen) Durch die Kapselung als CryptoObject wird sichergestellt, dass das Schlüsselmaterial von der konkreten kryptografischen Transformation entkoppelt bleibt.

Lebenszyklus

Der Lebenszyklus von ara::crypto::cryp::SymmetricKey-Instanzen ist eng an moderne C++-Speicherverwaltungsmuster gekoppelt. Gemäß [SWS_CRYPT_23801] stellt die Klasse den Typ-Alias Sptr bereit, der als using Sptr = std::shared_ptr<SymmetricKey>; definiert ist. Über diesen geteilten Smart Pointer wird der Lebenszyklus des Schnittstellenobjekts referenzgezählt und deterministisch gesteuert.

Interpretation: Die eigentliche Erzeugung und Initialisierung von Instanzen dürfte in der Praxis über spezialisierte Schlüsselgeneratoren, Laderoutinen oder Schlüsselverwaltungskomponenten des Krypto-Stacks erfolgen, da die Schnittstellendefinition keine öffentlichen Standardkonstruktoren für direkte Rohschlüssel-Instanziierungen ausweist. Frage Q-51acf16b99d9ad1b (offen) Sobald eine Schlüsselinstanz als Sptr erzeugt wurde, kann sie von mehreren Software-Komponenten oder kryptografischen Kontexten nebenläufig und besitzteilend referenziert werden [SWS_CRYPT_23801].

Die Freigabe der zugrunde liegenden Ressourcen erfolgt automatisch, sobald der letzte aktive Sptr zerstört oder zurückgesetzt wird. Interpretation: Die Ableitung von CryptoObject lässt vermuten, dass sensibles Schlüsselmaterial im Speicher besonders geschützt und bei der Zerstörung des Objekts sicher bereinigt (Zeroization) wird, um ein Auslesen nach Ablauf der Lebensdauer zu verhindern. Frage (offen) Die Verwendung von std::shared_ptr garantiert zudem Thread-Sicherheit bei der Verwaltung der Referenzzähler, während der Zugriff auf das referenzierte Schlüsselobjekt selbst den üblichen Synchronisationsregeln für gemeinsam genutzte Ressourcen unterliegt.

Nutzungspfad

Die reguläre Verwendung von ara::crypto::cryp::SymmetricKey in einer Adaptive-Anwendung folgt einem strukturierten Ablauf, der sich auf den definierten Smart Pointer stützt [SWS_CRYPT_23801]:

  • Header-Einbindung: Zunächst bindet die nutzende Softwarekomponente den Header #include "ara/crypto/cryp/cryobj/symmetric_key.h" ein, um Zugriff auf die Typdefinition und den Alias Sptr zu erhalten [SWS_CRYPT_23801].
  • Schlüsselbezug: Die Anwendung bezieht die Schnittstelle in Form eines ara::crypto::cryp::SymmetricKey::Sptr [SWS_CRYPT_23801], beispielsweise aus einem vorgelagerten Schlüsselbereitstellungsprozess.
  • Gültigkeitsprüfung: Vor der operativen Verwendung verifiziert der Aufrufer, dass der erhaltene Sptr ungleich nullptr ist und auf ein intaktes CryptoObject verweist.
  • Zuweisung an Krypto-Kontexte: Der Schlüssel-Zeiger wird an den zuständigen kryptografischen Kontext übergeben, um diesen für anstehende Ver- oder Entschlüsselungsoperationen bzw. Integritätsprüfungen zu konfigurieren.
  • Freigabe: Nach Abschluss der Transformationen oder beim Beenden des Anwendungskontexts wird der Zeiger verworfen; die Zerstörung des Schlüssels erfolgt durch das automatische Löschen des letzten Sptr [SWS_CRYPT_23801].

Dieser Leitfaden basiert auf der Spezifikation AUTOSAR Adaptive Platform Release R25-11. Die Aussagen stützen sich auf die referenzierten Spezifikationselemente sowie als solche gekennzeichnete Interpretationen.

UML-Klassendiagramm

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

G nara__crypto__cryp__SymmetricKey111 SymmetricKey nara__crypto__cryp__CryptoObject679 CryptoObject nara__crypto__cryp__SymmetricKey111->nara__crypto__cryp__CryptoObject679 nara__crypto__Serializable855 Serializable nara__crypto__cryp__CryptoObject679->nara__crypto__Serializable855

Typaliase

Sptr type alias

Shared smart pointer of the interface.

Dokumentation der Typaliase

type alias Sptr [SWS_CRYPT_23801] Upstream: RS_CRYPTO_02201

using Sptr = std::shared_ptr<SymmetricKey>;

Shared smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/cryobj/symmetric_key.h"
Scopeclass ara::crypto::cryp::SymmetricKey
SymbolSptr

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

Record
AUTOSAR/AP/record/SWS_CRYPT_23801
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_23801@rel:R25-11#d033faab
Content hash
d033faab
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_23801
Status: valid/unmigrated Version: rel:R25-11#882653b8 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_23801@rel:R25-11#882653b8
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#d033faab2026-09-30
  • R19-11rel:R19-11#a0669f0d2026-10-14
  • R20-11rel:R20-11#c490e0a52026-10-14
  • R21-11rel:R21-11#c490e0a52026-10-14
  • R22-11rel:R22-11#b634ae6e2026-10-14
  • R23-11rel:R23-11#cb129b992026-10-14
  • R24-11rel:R24-11#cb129b992026-10-14
  • R25-11rel:R25-11#882653b82026-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