AUTOSAR_CP_SWS_KeyManager
FIG-ed18e40c4904dcd6
932 × 532 px
1 Release(s)
Figure 7.4: Certificate status and possible state transitions.
SHA-256 Inhalts-Fingerabdruck:
ed18e40c4904dcd68bc1c84119e3007c994ff950f50df284163ae9488b7477de
✦
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-Zustandsdiagramm (State Machine Diagram) zur Modellierung des Lebenszyklus und der Validierungsphasen eines X.509- / C-ITS-Zertifikats.
- Technischer Zweck: Spezifikation des Zustandsautomaten für
KeyM_CertificateStatusTypeinnerhalb des AUTOSAR Classic Crypto Stacks (Service Layer: Key Manager,KeyM). - Funktionale Einordnung: Dient der formalen Steuerung von Zertifikatsablage, syntaktischer Dekodierung (Parsing) und kryptografischer/semantischer Validierung (Trust Chain, Signatur, Gültigkeitsdauer, CRL/OCSP-Widerruf) vor der Freigabe von Schlüsseln und Zertifikatsattributen an übergeordnete Module (z. B. SecOC, TLS, DoIP oder SWCs via RTE).
2. Komponenten, Entitäten & Schnittstellen
- Zustandsentitäten (
KeyM_CertificateStatusType):- Nominale Betriebszustände:
KEYM_CERTIFICATE_NOT_AVAILABLE: Initialzustand; kein Zertifikat im Speicher hinterlegt oder Zertifikat explizit gelöscht (len = 0).KEYM_CERTIFICATE_NOT_PARSED(<<transient>>): Zertifikatsdaten liegen im RAM/NVM-Puffer vor, wurden aber noch nicht syntaktisch geparst/dekodiert.KEYM_CERTIFICATE_PARSED_NOT_VALIDATED: ASN.1/DER-Parsing erfolgreich; Integrität, Signatur und Vertrauenskette sind noch ungeprüft.KEYM_CERTIFICATE_VALID: Zertifikat erfolgreich verifiziert und einsatzbereit.
- Fehlerzustände (Parsing-Fehler):
KEYM_E_CERTIFICATE_INVALID_FORMAT: ASN.1-/DER-Strukturfehler oder Beschädigung des Datenblocks.KEYM_E_CERTIFICATE_INVALID_TYPE: Unerwarteter oder nicht unterstützter Zertifikatstyp.
- Fehlerzustände (Validierungs-Fehler):
KEYM_E_CERTIFICATE_INVALID_CHAIN_OF_TRUST: Zertifikatskette zum Root-CA-Zertifikat kann nicht geschlossen werden.KEYM_E_CERTIFICATE_SIGNATURE_FAIL: Kryptografische Signaturprüfung mit dem Public Key des Ausstellers schlägt fehl.KEYM_E_CERTIFICATE_REVOKED: Zertifikat ist laut CRL/OCSP widerrufen.KEYM_E_CERTIFICATE_VALIDITY_PERIOD_FAIL: Zeitstempel liegt außerhalb der Gültigkeit (notBefore/notAfter).KEYM_E_CERTIFICATE_INVALID_CONTENT: Ungültige Extensions, Attribute oder Key Usage Constraints.
- Nominale Betriebszustände:
- Schnittstellen & Trigger:
KeyM_Init(): Initialisiert den Zustand aufKEYM_CERTIFICATE_NOT_AVAILABLE.KeyM_SetCertificate(CertId, CertDataPtr, CertDataLength):- Übergabe mit
len == 0: Rückkehr nachKEYM_CERTIFICATE_NOT_AVAILABLE. - Übergabe mit
len > 0: Transition nachKEYM_CERTIFICATE_NOT_PARSED.
- Übergabe mit
KeyM_ServiceCertificate(): Wartungs-/Aktualisierungsdienst zum Neuladen hinterlegter Zertifikate.KeyM_VerifyCertificate()/KeyM_VerifyCertificateChain(): Löst die Transition<<verify certificate>>aus.
3. Dynamisches Verhalten & Sequenzablauf
- Initialisierung / Reset:
- Aufruf von
KeyM_Init()oderKeyM_SetCertificate(len=0)versetzt das Zertifikatsobjekt deterministisch inKEYM_CERTIFICATE_NOT_AVAILABLE.
- Aufruf von
- Laden / Bereitstellen (
NOT_AVAILABLE→NOT_PARSED):- Ausgelöst durch Boot-Laden (NVM-Startup),
KeyM_SetCertificate(len>0)oderKeyM_ServiceCertificate(). - Der Zustand
KEYM_CERTIFICATE_NOT_PARSEDist transient.
- Ausgelöst durch Boot-Laden (NVM-Startup),
- Syntaktische Analyse (Parsing-Phase):
- Schlägt die Dekodierung fehl, erfolgt der direkte Übergang in die Fehlerzustände
KEYM_E_CERTIFICATE_INVALID_FORMATbzw.KEYM_E_CERTIFICATE_INVALID_TYPE. - Bei fehlerfreier Syntax wechselt der Status synchron/asynchron in
KEYM_CERTIFICATE_PARSED_NOT_VALIDATED.
- Schlägt die Dekodierung fehl, erfolgt der direkte Übergang in die Fehlerzustände
- Kryptografische & Semantische Verifikation (
<<verify certificate>>):- Aufruf von
KeyM_VerifyCertificate()/KeyM_VerifyCertificateChain()delegiert an den Crypto Service Manager (CSM) bzw. Crypto Interface (CryIf) / Crypto Driver (Crypto). - Abbruchpfade (Fehlerübergänge): Bei Fehlerbefund Übergang in die spezifischen Fehlerzustände (
INVALID_CHAIN_OF_TRUST,SIGNATURE_FAIL,REVOKED,VALIDITY_PERIOD_FAILoderINVALID_CONTENT). - Erfolgspfad: Sind alle Prüfkriterien erfüllt, erreicht das Zertifikat
KEYM_CERTIFICATE_VALID.
- Aufruf von
4. Normative Relevanz & Entwickler-Hinweise
- API-Vertrag & Statusabfrage:
- Vor Verwendung eines öffentlichen Schlüssels aus einem Zertifikat (z. B. via
KeyM_GetCertificateStatus()oder CSM-Jobverknüpfung) muss die Applikation zwingend prüfen, obKEYM_CERTIFICATE_VALIDvorliegt.
- Vor Verwendung eines öffentlichen Schlüssels aus einem Zertifikat (z. B. via
- Asynchrone Abarbeitung & Zykluszeit:
- Die kryptografische Verifikation (
<<verify certificate>>) bindet rechenintensive asymmetrische Operationen (RSA/ECC). Bei asynchroner CSM-Konfiguration verbleibt das Zertifikat während der Ausführung inKEYM_CERTIFICATE_PARSED_NOT_VALIDATED, bis das Callback/Polling das finale Ergebnis meldet.
- Die kryptografische Verifikation (
- Fehlerbehandlung:
- Fehlerzustände sind terminal für den Validierungsvorgang. Ein Zertifikat in einem
KEYM_E_*-Zustand kann erst nach erneutem Bereitstellen (KeyM_SetCertificate) oder Beheben der Ursache (z. B. Zeitabgleich via StbM beiVALIDITY_PERIOD_FAIL) neu verifiziert werden.
- Fehlerzustände sind terminal für den Validierungsvorgang. Ein Zertifikat in einem
- Konfigurationsaspekte:
- Über
KeyMCertificatemuss konfiguriert werden, ob Prüfungen gegen Trust Chains, CRLs oder Gültigkeitszeiträume obligatorisch sind (KeyMVerify...-Parameter). Fehlt eine Echtzeituhr (z. B. keine StbM-Anbindung), muss die Zeitprüfung deaktiviert oder über gesicherte Zeitstempel parametriert werden.
- Über
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.