DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_SWS_Persistency FIG-564ced8f50907089 839 × 465 px 1 Release(s)

Figure 10.6: Persistency CryptoKeySlot Configuration

SHA-256 Inhalts-Fingerabdruck: 564ced8f509070897e12efd621bdf819722c4f19320210298f6f89dd58c515c0
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07

1. Diagrammtyp & Architektur-Kontext

  • Klassifikation: AUTOSAR Adaptive Parameter Definition Metamodel (APMC / UML-Klassendiagramm der Konfigurationsstruktur).
  • Funktionaler Kontext: Konfigurationsmetamodell des Funktionsclusters Persistency (ara::per) der AUTOSAR Adaptive Platform zur kryptografischen Absicherung (Vertraulichkeit und Integrität) von persistenten Datenstrukturen.
  • Architektur-Einbindung: Definiert die Bindung zwischen Speicherobjekten der Persistenz (PersistencyFile, PersistencyKeyValuePair bzw. globalen Einstellungen via PersistencyCommon) und den kryptografischen Schlüsselspeichern des Crypto-Stacks (ara::crypto::keys::CryptoKeySlot).

2. Komponenten, Entitäten & Schnittstellen

Übergeordnete Container (Elternelemente)
  • PersistencyCommon (ApmcParamConfContainerDef, [1..1]): Zentraler Konfigurationscontainer für persistenzweite Standardeinstellungen. Aggregiert optional PersistencyCryptoKeySlotProps (+container, [0..1]).
  • PersistencyFile (ApmcParamConfContainerDef, [0..*]): Repräsentiert eine persistente Datei innerhalb des File-Storage. Ermöglicht dateispezifische Kryptokonfiguration via Aggregation von PersistencyCryptoKeySlotProps (+container, [0..1]).
  • PersistencyKeyValuePair (ApmcParamConfContainerDef, [0..*]): Repräsentiert ein einzelnes Schlüssel-Wert-Paar im Key-Value-Storage. Ermöglicht schlüsselspezifische Kryptokonfiguration via Aggregation von PersistencyCryptoKeySlotProps (+container, [0..1]).
Zentraler Krypto-Konfigurationscontainer
  • PersistencyCryptoKeySlotProps (ApmcParamConfContainerDef, [0..1]): Aggregiert die konkreten kryptografischen Eigenschaften und Referenzen für das jeweilige Persistenzobjekt.
Parameter & Referenzen (Kindelemente via +element)
  • CryptoAlgorithm (ApmcStringParamDef, [1..1]): Bezeichner des kryptografischen Algorithmus (z. B. AES-128-CBC, AES-256-GCM).
  • CryptoKeySlotUsage (ApmcEnumerationParamDef, [1..1]): Verwendungszweck des Schlüsselslots. Aggregiert über +literal:
    • ENCRYPTION (ApmcEnumerationLiteralDef): Schlüssel dient der Ver- und Entschlüsselung (Vertraulichkeit).
    • VERIFICATION (ApmcEnumerationLiteralDef): Schlüssel dient der Integritätsprüfung/Signatur-/MAC-Validierung.
  • CryptoVerificationHash (ApmcStringParamDef, [0..1]): Bezeichner des Hash-Verfahrens (z. B. SHA-256), erforderlich bzw. relevant bei Integritätsprüfungen oder HMAC-/Signaturalgorithmen.
  • ForeignCryptoKeySlotRef (ApmcForeignReferenceDef, [1..1]):
    • Attribut: destinationType = CRYPTO-KEY-SLOT.
    • Verweist direkt auf eine Instanz von CryptoKeySlot (abgeleitet von Identifiable), bereitgestellt durch das Manifest des Crypto-Stacks (ara::crypto).

3. Dynamisches Verhalten & Sequenzablauf (Konfigurations- & Laufzeitabbildung)

  • Statischer Charakter: Das Diagramm beschreibt ein Konfigurationsmodell zur Generierungs- und Deploymentzeit (ARXML).
  • Laufzeitsemantik (ara::per → ara::crypto):
    1. Initialisierung/Öffnen: Beim Öffnen eines KeyValueStorage oder FileStorage instanziiert der Persistency-Stack den konfigurierten ForeignCryptoKeySlotRef über die Schnittstellen von ara::crypto (LoadKeySlot / OpenKeySlot).
    2. Persistierung (Schreibpfad): Vor dem physischen Schreiben auf das blockbasierte Medium / Dateisystem führt die Persistenz je nach CryptoKeySlotUsage eine Verschlüsselung (ENCRYPTION) oder Erzeugung eines Authentifizierungstags/MACs (VERIFICATION) via CryptoAlgorithm durch.
    3. Wiederherstellung (Lesepfad): Beim Auslesen werden die Daten entschlüsselt bzw. anhand des Hash-/Signaturwerts (CryptoVerificationHash) auf Integrität geprüft. Schlägt die Verifikation fehl, liefert die Persistency-API einen entsprechenden Fehlercode (ara::per::PerErrc::kIntegrityCorrupted / kValidationFailed).

4. Normative Relevanz & Entwickler-Hinweise

  • Hierarchische Konfigurationsauflösung:
    • Entwickler können Verschlüsselung global über PersistencyCommon vorschreiben oder feingranular pro Datei (PersistencyFile) bzw. pro Datenelement (PersistencyKeyValuePair) übersteuern/definieren.
    • Fehlt PersistencyCryptoKeySlotProps auf Feldebene, greift der Default aus PersistencyCommon; ist dort ebenfalls kein Krypto-Container definiert, erfolgt die Speicherung im Klartext.
  • Modell-Konsistenzprüfung:
    • Ist CryptoKeySlotUsage auf VERIFICATION gesetzt, muss typischerweise CryptoVerificationHash konsistent zum gewählten CryptoAlgorithm konfiguriert werden.
    • Der referenzierte CryptoKeySlot muss im Crypto-Manifest existieren und Zugriffsrechte (kAllowKeyExport, kAllowKeyUsage etc.) kompatibel zur ara::per-Ausführungseinheit aufweisen.
  • Entwickler-Restriktion:
    • Applikationen greifen rein abstrakt über die Standard-Methoden von ara::per auf Daten zu. Die kryptografische Ver- und Entschlüsselung sowie Schlüsselverwaltung erfolgt vollständig transparent durch den Persistenz-Stack in Kooperation mit der Crypto-Plattforminstanz.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

PersistencyFile: ApmcParamConfContainerDef | lowerMultiplicity = 0 upperMultiplicity = * | PersistencyCryptoKeySlotProps: | ApmcParamConfContainerDef | lowerMultiplicity = 0 upperMultiplicity = 1 | CryptoAlgorithm: ApmcStringParamDef | lowerMultiplicity = 1 upperMultiplicity = 1 | CryptoKeySlotUsage: ApmcEnumerationParamDef | lowerMultiplicity = 1 upperMultiplicity = 1 | CryptoVerificationHash: | ApmcStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | VERIFICATION: ApmcEnumerationLiteralDef | ENCRYPTION: ApmcEnumerationLiteralDef | ForeignCryptoKeySlotRef: ApmcForeignReferenceDef | destinationType = CRYPTO-KEY-SLOT lowerMultiplicity = 1 upperMultiplicity = 1 | Identifiable | CryptoKeySlot | PersistencyKeyValuePair: ApmcParamConfContainerDef | lowerMultiplicity = 0 upperMultiplicity = * | PersistencyCommon: ApmcParamConfContainerDef | lowerMultiplicity = 1 upperMultiplicity = 1 | +container | +element | +container | +container | +element | +literal | +literal | +element | +element

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_AP_SWS_Persistency S. 232 10.6 Figure 10.6: Persistency CryptoKeySlot Configuration