AUTOSAR_AP_EXP_PlatformDesign
FIG-64d91bb6ae52a86d
932 × 441 px
5 Release(s)
Figure 15.2: CKI Key Management Interactions
SHA-256 Inhalts-Fingerabdruck:
64d91bb6ae52a86db147ff1bac44cab5216114392d7eff99183477cb30e48274
✦
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: Architektur- und Interaktionsdiagramm mit Darstellung von Sicherheits-/Vertrauensdomänen (Trust Boundaries), Software-Schichten und Kontroll-/Datenflüssen.
- Technischer Zweck: Spezifikation der Schlüsselverwaltungs- und Zugriffskontroll-Architektur (Cryptographic Key Interface, CKI /
ara::crypto) in der AUTOSAR Adaptive Platform (AP). - Funktionale Einordnung: Trennung zwischen unprivilegiertem Anwendungsraum (Adaptive Applications), isolierter Kontroll- und Ausführungsebene (Isolated & Trusted Environment) sowie persistenter/hardwaregestützter Schlüsselspeicherebene (File System or HSM) zur Durchsetzung von Least-Privilege- und Zero-Plaintext-Exposure-Prinzipien.
2. Komponenten, Entitäten & Schnittstellen
Das Diagramm unterteilt das System über vertikale Vertrauensgrenzen in drei Domänen:
- Domäne 1: Adaptive Applications (Unprivilegierter User Space)
Adaptive Application(unter Kontrolle desExecution ManageralsExec App.): Nutzt Krypto-Dienste.Application Manifest: Modellierungsartefakt, definiert Identität und Ressourcenrechte der Applikation.CryptoAPI Library: Applikationsseitige API-Bibliothek (ara::crypto::keys,ara::crypto::cryp).Security services (IKE / UCM / PER): Plattformdienste (Internet Key Exchange, Update and Configuration Management, Persistency) mit Bedarf an Krypto-Provider-Funktionalität.
- Domäne 2: Isolated & Trusted Environment (Privilegierter Daemon- / TEE-Kontext)
Execution Manager: Verifiziert beim Prozessstart dasApplication Manifestund stellt dieApplication IDbereit.Identity and Access Management (IAM): Sicherheitsgrenze, enthält:Key Storage Provider(ara::crypto::keys::KeyStorageProvider): Zentrale Instanz zur Verwaltung von Key-Slots.Rights table: Autorisierungsmatrix, dynamisch oder statisch aus derCapabilities DBgespeist.
Crypto Provider Backend: Führt die tatsächlichen kryptographischen Operationen in einer geschützten Umgebung aus.
- Domäne 3: File System or HSM (Persistenz- und Hardware-Ebene)
Key Storage Manifest: Beschreibt Speicherorte, Slot-Konfigurationen und Zugriffspolicies der Schlüssel.Protected Key Storage: Verschlüsselter/integritätsgeschützter Dateispeicher für persistente Schlüssel.HSM(Hardware Security Module / Secure Element): Kryptographischer Hardware-Vertrauensanker.
- Schnittstellen & Kanäle:
openEmpty(slotID),openExisting(slotID),clean(slotID): IPC-Aufrufe vonCryptoAPI LibraryanKey Storage Provider.Opaque "container" hnd.: Opakes Handle (ara::crypto::keys::KeySlot), das der Applikation als Schlüsselreferenz zurückgegeben wird.loadKey("container" hnd.),saveKey("container" hnd.): IPC-Schnittstelle vonCryptoAPI LibraryzumCrypto Provider Backend.Trusted channel (Container access API): Dedizierter Kanal zwischenKey Storage ProviderundCrypto Provider Backendzur Auflösung der Container-Referenzen.Encrypted channel: Abgesicherter Transportkanal zwischenKey Storage ProviderundProtected Key Storage.Control channel: Direkte Anbindung desCrypto Provider Backendan dasHSM.
3. Dynamisches Verhalten & Sequenzablauf
- Authentifizierung & Autorisierungsabgleich (IAM-Pfad):
- Der
Execution Managerstartet die Applikation, liest dasApplication Manifestaus und übergibt die validierteApplication IDan denKey Storage Provider. - Die
Capabilities DBinitialisiert bzw. aktualisiert dieRights tableinnerhalb des IAM-Bereichs.
- Der
- Slot-Allokation / Öffnen eines Schlüssels (Synchroner IPC-Pfad):
- Die Applikation fordert über die
CryptoAPI Libraryeinen Schlüssel an (openExisting(slotID)) oder alloziert einen leeren Slot (openEmpty(slotID)). - Der
Key Storage Providergleicht dieApplication IDgegen dieRights tableab. - Bei erfolgreicher Autorisierung ruft der
Key Storage Providerdie verschlüsselten Schlüsseldaten über denEncrypted channelaus demProtected Key Storage(konfiguriert viaKey Storage Manifest) ab. - Der
Key Storage Providerliefert ausschließlich ein opakes Handle (Opaque "container" hnd.) an dieCryptoAPI Libraryzurück. Das Klartext-Schlüsselmaterial gelangt zu keinem Zeitpunkt in den Adressraum der Applikation.
- Die Applikation fordert über die
- Kryptographische Verarbeitung (Backend-/HSM-Pfad):
- Die Applikation übergibt das Handle via
loadKey("container" hnd.)an dasCrypto Provider Backend. - Das
Crypto Provider Backendvalidiert und referenziert den Container über denTrusted channelbeimKey Storage Provider. - Berechnungen (z. B. Signaturerzeugung, Ver-/Entschlüsselung) werden im Backend oder hardwarebeschleunigt über den
Control channeldirekt imHSMausgeführt.
- Die Applikation übergibt das Handle via
- Persistierung & Bereinigung:
- Modifizierte Schlüssel werden mittels
saveKey("container" hnd.)über das Backend und den Storage Provider zurück in denProtected Key Storagegeschrieben. clean(slotID)löscht den Inhalt des Ziel-Slots und synchronisiert den Zustand mit dem Speicher/HSM.
- Modifizierte Schlüssel werden mittels
4. Normative Relevanz & Entwickler-Hinweise
- Zero-Plaintext-Exposure: Anwendungs- und Middleware-Entwickler dürfen weder symmetrisches Schlüsselmaterial noch private asymmetrische Schlüssel im Applikationsspeicher halten. Alle Interaktionen basieren strikt auf
ara::crypto::CryptoObjectbzw.KeySlot-Handles. - Manifest-Abhängigkeit: Jeder Zugriff auf einen
slotIDschlägt zur Laufzeit fehl (ara::crypto::SecurityError), wenn die Bindung zwischenApplication Manifest(Process/ IAM-Grant),Capabilities DBundKey Storage Manifestinkonsistent ist. - Transparente HSM-Integration: Die Trennung von
Key Storage ProviderundCrypto Provider Backendermöglicht Architekturen, bei denen der Schlüssel rein hardwarekapselt im HSM verbleibt, während die Applikation identische API-Aufrufe nutzt. - IPC-Overhead berücksichtigen: Aufrufe wie
openExistingundloadKeypassieren Prozess-/Domänengrenzen und binden IAM-Checks ein. Schlüssel-Handles müssen daher im Lebenszyklus der Applikation gecacht und dürfen nicht in latenzkritischen Regelschleifen zyklisch neu geöffnet werden.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.