DEENESPTFRRUARHIKOZHNL

namespace ara::crypto::cryp

User GuideKI-GENERIERT

Definiert Schnittstellen für kryptografische Berechnungen, Schlüsselobjekte und deren Speicherverwaltung.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f15c72def571 Herkunft Offene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Definiert Schnittstellen für kryptografische Berechnungen, Schlüsselobjekte und deren Speicherverwaltung.

Der Namespace ara::crypto::cryp stellt die zentralen Schnittstellen für kryptografische Operationen, Schlüsselobjekte und Schlüsselspeicher in der AUTOSAR-Adaptive-Plattform bereit. Über die zentrale Fabrik CryptoProvider werden Schlüssel aus Instanzen von KeySlot bezogen und spezialisierte, von CryptoContext abgeleitete Ausführungskontexte für Verschlüsselung, Signaturen oder Hashing instanziiert. Die kryptografischen Operationen werden nach Konfiguration des zustandsbehafteten Kontexts mit den Eingabedaten ausgeführt. Eine wesentliche Randbedingung liegt nach vorliegender Interpretation in der strikten Kapselung des Schlüsselmaterials über CryptoObject sowie der Differenzierung von Schreibrechten über WriteableKeySlot.

Kontext und Aufgabenbereich

Der Namespace ara::crypto::cryp bildet den funktionalen Kern des AUTOSAR-Adaptive-Kryptografiemoduls und stellt Schnittstellen für kryptografische Primitive, Objektmodelle und Schlüsselverwaltungsstrukturen bereit. Im Mittelpunkt der Architektur steht die Schnittstelle CryptoProvider, welche als Implementierungsinstanz und Fabrik für kryptografische Algorithmen sowie für den Zugriff auf Schlüsselspeicher dient. Grundlegende Datenstrukturen und Schlüssel werden über die gemeinsame Schnittstelle CryptoObject repräsentiert, von der konkrete Schlüsseltypen wie SymmetricKey, PublicKey und PrivateKey abstammen. Speicherorte für Schlüsselmaterial werden durch KeySlot sowie dessen schreibbare Spezialisierung WriteableKeySlot abgebildet.

CrypKontext CryptoProvider CryptoProvider KeySlot KeySlot CryptoProvider->KeySlot verwaltet CryptoContext CryptoContext CryptoProvider->CryptoContext erzeugt CryptoObject CryptoObject KeySlot->CryptoObject haelt CryptoContext->CryptoObject nutzt SymmetricKey SymmetricKey CryptoObject->SymmetricKey spezialisiert PublicKey PublicKey CryptoObject->PublicKey spezialisiert PrivateKey PrivateKey CryptoObject->PrivateKey spezialisiert WriteableKeySlot WriteableKeySlot WriteableKeySlot->KeySlot erweitert

Kontextdiagramm: Zusammenspiel von CryptoProvider, Schlüsselspeicher und kryptografischen Kontexten. Quellen: Keine im Payload angegeben.

Für die Ausführung kryptografischer Transformationen stellt der Namespace eine Familie spezialisierter Schnittstellen bereit, die auf dem veränderlichen Basiskontext CryptoContext aufbauen. Zu diesen Ausführungskontexten gehören symmetrische Chiffrierer (SymmetricCipherCtx, AuthCipherCtx), asymmetrische Verschlüsselung und Entschlüsselung (EncryptorPublicCtx, DecryptorPrivateCtx) sowie Mechanismen zur Signaturerzeugung und -prüfung (SignerPrivateCtx, VerifierPublicCtx). Ergänzt wird dieses Spektrum durch Kontexte für Hashfunktionen (HashFunctionCtx), nachrichtenbasierte Authentifizierungscodes (MessageAuthnCodeCtx), Schlüsselableitung (KeyDerivationFunctionCtx), Schlüsselvereinbarung (KeyAgreementPrivateCtx), Schlüsselkapselung (KeyEncapsulatorPublicCtx, KeyDecapsulatorPrivateCtx), Schlüsselkapselung mit symmetrischem Wrapping (SymmetricKeyWrapperCtx), Zufallszahlengenerierung (RandomGeneratorCtx) sowie den sicheren Schlüsselimport (ProtectedKeyImportCtx).

Lebenszyklus und Zustandshaltung

Die Verwaltung und Lebensdauer kryptografischer Artefakte ist eng an das Zusammenspiel zwischen CryptoProvider, Schlüsselobjekten und Kontexten gekoppelt. Der Lebenszyklus kryptografischer Kontexte und Objekte wird nach vorliegender Interpretation primär über die Fabrik- und Verwaltungsmethoden von CryptoProvider gesteuert, welcher als zentraler Einstiegspunkt für die Instanziierung fungiert. Objekte, die von CryptoObject abgeleitet sind, repräsentieren unveränderliche oder verwaltete kryptografische Entitäten, während CryptoContext explizit als zustandsbehafteter, veränderlicher Kontext definiert ist. Dies erfordert, dass Konfigurationen, Zwischenzustände und algorithmische Parameter innerhalb der jeweiligen Kontextinstanz gepflegt werden.

Für die persistente oder temporäre Ablage von Schlüsselmaterial differenziert der Namespace zwischen KeySlot und WriteableKeySlot. Die Trennung zwischen KeySlot und WriteableKeySlot dürfte nach sachgerechter Interpretation lesende Zugriffe von schreibenden Schlüsselmodifikationen trennen, sodass unveränderliche oder schreibgeschützte Schlüsselbereiche vor versehentlichem Überschreiben geschützt werden können. Frage Q-e1b708ca976f7e99 (offen) Zustandstransformationen von Schlüsseln und Kontexten finden somit unter der Kontrolle des zugehörigen Providers statt, welcher die Gültigkeit der Schlüsselobjekte über deren Lebenszyklus hinweg sicherstellt.

Nutzungspfad kryptografischer Operationen

Kryptografische Operationen folgen typischerweise der Sequenz aus Provider-Abfrage, Schlüsselbereitstellung über Key-Slots und Initialisierung des zustandsbehafteten Kontexts. In einem ersten Schritt greift eine Anwendungskomponente auf den zuständigen CryptoProvider zu. Über diesen Provider wird das erforderliche Schlüsselmaterial entweder aus einem KeySlot bzw. WriteableKeySlot geladen oder als konkretes CryptoObject (beispielsweise als SymmetricKey, PrivateKey oder PublicKey) bezogen. Parallel oder nachfolgend erzeugt der Provider die passende Instanz von CryptoContext, etwa einen SymmetricCipherCtx für Verschlüsselungen oder einen SignerPrivateCtx für digitale Signaturen.

Ablauf einer kryptografischen OperationAnwendungCryptoProviderKeySlotCryptoContextSchlüssel anfordernSchlüsselobjekt ladenCryptoObject bereitstellenCryptoObject zurückgebenCryptoContext anfordernKontext instanziierenCryptoContext zurückgebenOperation ausführenErgebnis liefern

Sequenzdiagramm: Typische Aufrufreihenfolge bei der Durchführung kryptografischer Operationen. Quellen: Keine im Payload angegeben.

Im anschließenden Ausführungsschritt wird der erzeugte Kontext mit dem geladenen Schlüssel konfiguriert und mit den zu verarbeitenden Nutzdaten versorgt. Aufgrund der zustandsbehafteten Natur von CryptoContext können Streaming-Operationen oder mehrstufige Transformationen schrittweise durchgeführt werden, bevor das abschließende kryptografische Ergebnis (wie Chiffrat, Signatur oder Hashwert) an die Anwendung zurückgeliefert wird. Nach Abschluss der Verarbeitung obliegt die Freigabe flüchtiger Zustände der Konvention des ausführenden Kontexts und Providers.

Dieser Text wurde durch eine künstliche Intelligenz auf Basis der Metadaten des Releases R25-11 generiert.

Themenkarte

KI-gestützte Gruppierung auf Basis der Records und Spezifikationsauszüge; keine Gliederung aus der AUTOSAR-Spezifikation.

Klassendiagramm

Abgerundete Rahmen = Namespace- bzw. Klassen-Scopes; hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); graue Boxen = namespace-fremde bzw. externe Basisklassen. Klicken öffnet die jeweilige Klassen- bzw. cppreference-Seite.

G cluster_ns ara::crypto::cryp nara__crypto__cryp__AuthCipherCtx AuthCipherCtx nara__crypto__cryp__CryptoContext CryptoContext nara__crypto__cryp__AuthCipherCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__CryptoObject CryptoObject next_ara__crypto__Serializable ara::crypto::Serializable nara__crypto__cryp__CryptoObject->next_ara__crypto__Serializable nara__crypto__cryp__CryptoProvider CryptoProvider nara__crypto__cryp__DecryptorPrivateCtx DecryptorPrivateCtx nara__crypto__cryp__DecryptorPrivateCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__EncryptorPublicCtx EncryptorPublicCtx nara__crypto__cryp__EncryptorPublicCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__HashFunctionCtx HashFunctionCtx nara__crypto__cryp__HashFunctionCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__KeyAgreementPrivateCtx KeyAgreementPrivateCtx nara__crypto__cryp__KeyAgreementPrivateCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__KeyDecapsulatorPrivateCtx KeyDecapsulatorPrivateCtx nara__crypto__cryp__KeyDecapsulatorPrivateCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__KeyDerivationFunctionCtx KeyDerivationFunctionCtx nara__crypto__cryp__KeyDerivationFunctionCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__KeyEncapsulatorPublicCtx KeyEncapsulatorPublicCtx nara__crypto__cryp__KeyEncapsulatorPublicCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__KeySlot KeySlot nara__crypto__cryp__MessageAuthnCodeCtx MessageAuthnCodeCtx nara__crypto__cryp__MessageAuthnCodeCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__PrivateKey PrivateKey nara__crypto__cryp__PrivateKey->nara__crypto__cryp__CryptoObject nara__crypto__cryp__ProtectedKeyImportCtx ProtectedKeyImportCtx nara__crypto__cryp__ProtectedKeyImportCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__PublicKey PublicKey nara__crypto__cryp__PublicKey->nara__crypto__cryp__CryptoObject nara__crypto__cryp__RandomGeneratorCtx RandomGeneratorCtx nara__crypto__cryp__RandomGeneratorCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__SignerPrivateCtx SignerPrivateCtx nara__crypto__cryp__SignerPrivateCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__SymmetricCipherCtx SymmetricCipherCtx nara__crypto__cryp__SymmetricCipherCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__SymmetricKey SymmetricKey nara__crypto__cryp__SymmetricKey->nara__crypto__cryp__CryptoObject nara__crypto__cryp__SymmetricKeyWrapperCtx SymmetricKeyWrapperCtx nara__crypto__cryp__SymmetricKeyWrapperCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__VerifierPublicCtx VerifierPublicCtx nara__crypto__cryp__VerifierPublicCtx->nara__crypto__cryp__CryptoContext nara__crypto__cryp__WriteableKeySlot WriteableKeySlot nara__crypto__cryp__WriteableKeySlot->nara__crypto__cryp__KeySlot

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Verschlüsselung

Authenticated Cipher Context interface.

erbt von CryptoContext

Interface for asymmetric decryption.

erbt von CryptoContext

Interface for asymmetric encryption.

erbt von CryptoContext

Interface for Symmetric Cipher Operations.

erbt von CryptoContext

Signatur und MAC

Hash function interface.

erbt von CryptoContext

Keyed Message Authentication Code Context interface definition.

erbt von CryptoContext

Signature Private key Context interface.

erbt von CryptoContext

Signature Verification Public key Context interface.

erbt von CryptoContext

Schlüsselmaterial

Key Agreement Private key Context interface.

erbt von CryptoContext

Asymmetric Key Encapsulation Mechanism (KEM) Private key Context interface.

erbt von CryptoContext

Key Derivation Function interface.

erbt von CryptoContext

Asymmetric Key Encapsulation Mechanism (KEM) Public key Context interface.

erbt von CryptoContext

A contexts for importing secured data such as secret key-material.

erbt von CryptoContext

Context of a symmetric key wrap algorithm.

erbt von CryptoContext

Schlüsselobjekte

A common interface for all cryptographic objects recognizable by the Crypto Provider.

erbt von ara::crypto::Serializable

Basis für PrivateKey, PublicKey, SymmetricKey

Generalized Asymmetric Private Key interface.

erbt von CryptoObject

PublicKey class

General Asymmetric Public Key interface.

erbt von CryptoObject

Symmetric Key interface.

erbt von CryptoObject

Schlüsselspeicher

KeySlot class

KeySlot interface representing a storage location for a key in a CryptoProvider.

Basis für WriteableKeySlot

WriteableKeySlot interface representing a writeable storage location for a key in a Crypto Provider.

erbt von KeySlot

Kontextbasis

CryptoProviderInterface representing one implementation of a set of cryptographic primitives with a key storage.

Interface of Random Number Generator Context.

erbt von CryptoContext