AUTOSAR_AP_SWS_Cryptography
FIG-7672b8a2221a5645
932 × 846 px
1 Release(s)
Figure 7.3: Concurrent access to a single Key Slot
SHA-256 Inhalts-Fingerabdruck:
7672b8a2221a56453974ca29eb163689df55468df07eec5a3432ff3ae13da243
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Komponentendiagramm / Architektur-Interaktionsmodell mit funktionalen Stereotypen (
<<use>>,<<update>>,<<add>>,<<notify>>). - Architektur-Kontext: AUTOSAR Adaptive Platform (AP), Spezifikation
ara::crypto, Sub-Packageara::crypto::keys(Key Storage & Lifecycle Management). - Technischer Zweck: Spezifikation der Nebenläufigkeit (Concurrency) und Entkopplung beim gleichzeitigen Zugriff auf denselben persistenten
KeySlotdurch getrennte funktionale Domänen (produktive Krypto-Dienste vs. Schlüsselverwaltung/Key-Lifecycle-Management) innerhalb einer Adaptive Application.
2. Komponenten, Entitäten & Schnittstellen
- Adaptive Application:
Business logic / Service-consumer: Anwendungsdomäne, die kryptografische Dienste über standardisierte oder gekapselte Schnittstellen konsumiert.3rd party library: Funktionsbibliothek für operative Sicherheitsdienste und Krypto-Jobs (z. B. TLS-/SecOC-Stack, Signaturprüfung, Ver-/Entschlüsselung).OEM library: Privilegierte OEM-spezifische Bibliothek für das Schlüsselmanagement (z. B. Backend-Provisioning, OTA-Key-Rollover, Zertifikatsaktualisierung).
- Key-Storage-Provider (
ara::crypto::keys::KeyStorageProvider):- Plattformseitiger Verwalter persistenter kryptografischer Speicherbereiche.
Key-slot(ara::crypto::keys::KeySlot): Persistenter Container zur Haltung eines versionierten kryptografischen Objekts / Schlüssels.+UpdatesObserver(ara::crypto::keys::UpdatesObserver): Callback- und Signalisierungsschnittstelle zur Registrierung von Konsumenten bei Slot-Zustandsänderungen (Observer-Pattern).
- Stereotypen & Relationen:
Business logic↔3rd party library: Bidirektionaler Aufrufkontext für Krypto-Anforderungen und -Ergebnisse.3rd party library–<<use>>→Key-slot: Lesender / instanziierender Zugriff auf den Schlüssel zur Ausführung von Krypto-Operationen.3rd party library–<<add>>→+UpdatesObserver: Registrierung eines Observers zur Überwachung von Inhaltsänderungen am Ziel-Key-Slot.+UpdatesObserver–<<notify>>→3rd party library: Asynchrone Signalisierung über einen durchgeführten Schreib-/Update-Vorgang.OEM library–<<update>>→Key-slot: Schreibender/modifizierender Zugriff (Key Injection, Rollover, Invalidation).
3. Dynamisches Verhalten & Sequenzablauf
- Observer-Registrierung (
<<add>>): Vor Beginn operativer Krypto-Jobs registriert die3rd party libraryüberKeyStorageProvider::RegisterObserver()bzw. amKeySloteinenUpdatesObserver. - Schlüsselverwendung (
<<use>>): Die Bibliothek öffnet den Slot (OpenKeySlot()) und lädt dasCryptoObjectin den flüchtigen Kontext (Instanziierung eines kurzlebigen Schlüssels oder Kontexts imCryptoProvider). - Schlüsselaktualisierung (
<<update>>): Parallel stößt dieOEM libraryeine Schlüsselaktualisierung an (z. B. Empfang eines neuen Schlüssels via Diagnose/OTA) und persistiert diesen atomar imKey-slotviaKeySlot::SaveCopy()/KeyStorageProvider. - Benachrichtigung (
<<notify>>): DerKey-Storage-Providerfeuert überUpdatesObserver::OnUpdate()ein Benachrichtigungs-Event an die registrierte3rd party library. - Konsistenz & Umschaltung: Bereits aus dem Slot geladene, aktive
CryptoObject-Handles bleiben im Arbeitsspeicher für laufende Transaktionen bis zu deren Freigabe (Release()) deterministisch gültig. Die3rd party libraryinitialisiert nach Empfang des<<notify>>nachfolgende Krypto-Jobs mit dem neu geladenen Slot-Inhalt.
4. Normative Relevanz & Entwickler-Hinweise
- Thread-Safety & Race Conditions: Entwickler von Krypto-Konsumenten dürfen geöffnete
KeySlot-Referenzen nicht statisch über unbegrenzte Zeiträume cachen, ohne denUpdatesObserverzu implementieren, da andernfalls veraltete Schlüsselmaterialien (Stale Keys) verwendet werden. - Transaktionale Konsistenz: Die
KeyStorageProvider-Implementierung des Stacks muss Updates auf Slots atomar ausführen. Teilschreibzugriffe dürfen für lesende Konsumenten zu keinem Zeitpunkt sichtbar sein. - Berechtigungsisolation (Execution Management & Manifest): OEM- und Drittanbieter-Bibliotheken benötigen differenzierte Zugriffsrechte im Crypto-Manifest. Schreibrechte (
kKeySlotUpdateAllowed) sind strikt auf den Key-Management-Pfad (OEM) zu beschränken, während operative Bibliotheken ausschließlich Leserechte (kKeySlotReadOnly) besitzen dürfen.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.