AUTOSAR_AP_SWS_Cryptography
FIG-0b89c2611fb97b10
825 × 530 px
1 Release(s)
Figure 7.7: Key deployment
SHA-256 Inhalts-Fingerabdruck:
0b89c2611fb97b109ff0d2aeeb1f703035316793845fc063217f8ca100ec12f2
✦
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: AUTOSAR M2-Metamodell (UML-Klassendiagramm) zur Spezifikation von Software-Architektur und Zielkonfiguration (ARXML).
- Technischer Zweck & Einordnung: Spezifikation des Bereitstellungsmechanismus (Key Deployment) innerhalb des Functional Clusters Cryptography der AUTOSAR Adaptive Platform (AP, Release R24-11). Es definiert die strukturelle Entkopplung zwischen prozessunabhängigem Schnittstellenentwurf (
Application Design) und zielsystemspezifischer Konfiguration (Target-Configuration). Über typisierte und nun generalisierte Mapping-Klassen wird festgelegt, wie kryptografische Schlüssel-Slots (CryptoKeySlot) und Treiber-Instanzen (CryptoProvider) auf Betriebssystem-Prozesse (Process) und Anwendungs-Ports (RPortPrototype) abgebildet werden.
2. Komponenten, Entitäten & Schnittstellen
Paket Application Design (Prozess- und plattformunabhängige Entwurfsebene)
PortInterface(«ARElement»,«AtpBlueprint»,«AtpBlueprintable»,«AtpType»): Abstrakte Basisklasse aller Schnittstellen.CryptoInterface: SpezialisiertPortInterface; abstrakter Anker für kryptografische Schnittstellen.AbstractCryptoKeySlotInterface: Abstrakte Basisklasse für Schlüsselspeicher-Schnittstellen; spezialisiertCryptoInterface. Definiert die allgemeinen Konfigurationsattribute:allocateShadowCopy: Boolean [0..1]: Flag zur Allokation eines Schattenpuffers (ermöglicht atomare Updates / Rollbacks).cryptoAlgId: String [0..1]: Algorithmen-Identifikator, an den der Slot gebunden ist.cryptoObjectType: CryptoObjectTypeEnum [0..1]: Typ des Objekts (z. B. symmetrischer/asymmetrischer Schlüssel, Zertifikat).slotCapacity: PositiveInteger [0..1]: Maximale Nutzlastkapazität in Bytes.slotType: CryptoKeySlotTypeEnum [0..1]: Persistenzcharakteristik (z. B. flüchtig/RAM, nicht-flüchtig/NVM).
CryptoKeySlotInterface: Konkrete Schnittstelle für Schlüssel-Slots; spezialisiertAbstractCryptoKeySlotInterfaceund erbt dessen Attribute.CryptoProviderInterface: SpezialisiertCryptoInterface. Schnittstelle für allgemeine kryptografische Operationen eines Providers.RPortPrototype(«AbstractRequiredPortPrototype»): Client-Port der Applikation.- Assoziation
+requiredInterface(0..1, Stereotyp«isOfType», Constraint{redefines atpType}) referenziertPortInterface.
- Assoziation
Paket Target-Configuration (Instanziierungs- und Ausführungskontext, Execution/Service-Manifest)
Process(«AbstractExecutionContext»): Repräsentiert den OS-Prozesskontext mit AttributenfunctionClusterAffiliation: String [0..1],numberOfRestartAttempts: PositiveInteger [0..1],preMapping: Boolean [0..1].CryptoProvider(«Identifiable»): Repräsentiert die konkrete Implementierung/Instanz des Krypto-Stacks (z. B. HSM-Treiber, Software-Krypto-Engine).- Assoziation
+cryptoProviderDocumentation(0..1) zuDocumentation(«ARElement»,«UploadableDesignElement»).
- Assoziation
CryptoKeySlot(«Identifiable»): Konkrete physische/logische Speicherressource auf dem Zielsystem mit AttributenallocateShadowCopy,cryptoAlgId,cryptoObjectType,slotCapacity,slotType.- Komposition:
CryptoProviderbesitzt0..*CryptoKeySlot(+keySlot, Stereotyp«atpSplitable»für die dateiübergreifende ARXML-Definition).
- Komposition:
AbstractCryptoKeySlotToPortPrototypeMapping(«UploadableDeploymentElement»): Abstrakte Basisklasse für Port-Mappings von Krypto-Slots.- Referenz
+process(0..1): Zielprozess. - Referenz
+keySlot(0..1): ZugeordneterCryptoKeySlot. - Instanz-Referenz
+portPrototype(«instanceRef»,0..1): VerknüpfterRPortPrototypeim Anwendungsmodell.
- Referenz
CryptoKeySlotToPortPrototypeMapping: Konkretes Mapping-Element; spezialisiertAbstractCryptoKeySlotToPortPrototypeMappingund erbt dessen Assoziationen.CryptoProviderToPortPrototypeMapping(«UploadableDeploymentElement»): Bindeglied für Krypto-Treiber.- Referenz
+process(0..1): Zielprozess. - Referenz
+cryptoProvider(0..1): ZugeordneterCryptoProvider. - Instanz-Referenz
+portPrototype(«instanceRef»,0..1): VerknüpfterRPortPrototypeim Anwendungsmodell.
- Referenz
3. Dynamisches Verhalten & Sequenzablauf
Das Diagramm modelliert primär statische Manifest-Strukturen. Das resultierende dynamische Auflösungsverhalten zur Systemlaufzeit gestaltet sich wie folgt:
- Manifest-Resolution beim Prozess-Start:
Der Execution Management / Crypto Daemon parst das Execution- und Service-Instance-Manifest. Anhand von
CryptoKeySlotToPortPrototypeMappingwird ermittelt, welcher physischeCryptoKeySlotfür den jeweiligen OS-Prozesskontext reserviert ist. - Port-to-Slot-Binding (SWS_CRYPT_10000):
Wenn eine Applikation (
AdaptiveApplicationSwComponentType) über ihrenRPortPrototype(typisiert durchCryptoKeySlotInterface) auf Krypto-Funktionen zugreift, wird dieser Port transparent auf die gemappteCryptoKeySlot-Instanz im Host-System bzw. HSM aufgelöst. - Provider-Lookup über Key-Slot (SWS_CRYPT_10003):
Ruft die Applikation die API-Funktion zur Ermittlung des zugehörigen Providers auf (
MyProvider), traversiert der Crypto-Stack die Kompositionsbeziehung vomCryptoKeySlotzu dessen aggregierendemCryptoProvider. Die Zuordnung des Providers erfolgt implizit über den Key-Slot, ohne dass die Applikation hardwarenahe Provider-Instanznamen kennen muss.
4. Normative Relevanz & Entwickler-Hinweise
- Refaktorisierung der Metamodell-Struktur (R24-11): Die Einführung von
AbstractCryptoKeySlotInterfaceundAbstractCryptoKeySlotToPortPrototypeMappingmodularisiert das Metamodell. Die Attribute des Krypto-Slots und die Mapping-Assoziationen sind nun in den abstrakten Basisklassen verankert, wodurch zukünftige spezialisierte Schnittstellen und Mappings von einer einheitlichen Basis ableiten können. - Paketumbenennung zu
Target-Configuration: Das vormals alsDeploymentbezeichnete Paket heißt nunTarget-Configuration. Dies schärft den semantischen Kontext im Manifest von allgemeinen Deployment-Artefakten hin zu zielplattformspezifischen Konfigurationsmodellen. - Vererbung und Abwärtskompatibilität: Für Anwendungsmodelle bleibt die Verwendung von
CryptoKeySlotInterfaceundCryptoKeySlotToPortPrototypeMappingnach außen hin kompatibel, da diese Klassen transparent von den neu eingezogenen Abstraktionen erben.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.