DEENESPTFRRUARHIKOZHNL

class ara::crypto::x509::CertificateValidationResult

[SWS_CRYPT_50179] Upstream: RS_CRYPTO_02306

class CertificateValidationResult {...};

X.509 Certificate Validation Result.

Header-Datei#include "ara/crypto/x509/certificate_validation_result.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::x509

User GuideKI-GENERIERT

Stellt Ergebnisse von X.509-Zertifikatsprüfungen mit Status, gefundener Zertifikatkette und Fehlerzertifikat bereit.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 1ece3477b66c Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Stellt Ergebnisse von X.509-Zertifikatsprüfungen mit Status, gefundener Zertifikatkette und Fehlerzertifikat bereit.

Die Schnittstelle ara::crypto::x509::CertificateValidationResult stellt das Ergebnis einer X.509-Zertifikatsvalidierung bereit und wird typischerweise als unveränderlicher Sptrc verwaltet [SWS_CRYPT_50093]. Über ihre Methoden fragt die Anwendung den Gesamtstatus ab, ermittelt die vollständige Zertifikatkette mit dem Blattzertifikat an Position 0 oder isoliert das fehlgeschlagene Zertifikat. War die Prüfung erfolgreich, schlägt der Aufruf zur Ermittlung des fehlerhaften Zertifikats mit dem Fehlercode ara::crypto::CryptoErrc::kNoSuchValue fehl [SWS_CRYPT_50095]. Sämtliche Schnittstellenmethoden sind dabei threadsicher und exceptionsicher ausgelegt.

Kontext

Die Schnittstelle ara::crypto::x509::CertificateValidationResult kapselt das Ergebnis eines X.509-Zertifikatsvalidierungsvorgangs innerhalb des Adaptive-Moduls crypto. Ihre primäre Verantwortung besteht darin, aufrufenden Anwendungen ein strukturiertes und konsistentes Prüfergebnis zur Verfügung zu stellen. Dieses umfasst sowohl den aggregierten Validierungsstatus des Zertifikatspfads als auch den Zugriff auf die beteiligten Zertifikatsobjekte. Als Vermittler zwischen den internen kryptografischen Verifikationsmechanismen und sicherheitskritischen Anwendungen ermöglicht die Klasse eine differenzierte Auswertung von Zertifikatshierarchien. Zu ihren zentralen Interaktionspartnern zählen Instanzen von Certificate::Sptrc, die entweder als vollständige Zertifikatkette zusammengestellt oder im Fehlerfall als Verursacher des Fehlschlags ausgewiesen werden.

Lebenszyklus

Als rein virtuelle Schnittstelle definiert CertificateValidationResult keine eigenen öffentlichen Konstruktoren. Die Lebensdauer und Besitzverhältnisse werden maßgeblich durch den typisierten Smart Pointer Sptrc gesteuert, der als std::shared_ptr<const CertificateValidationResult> definiert ist [SWS_CRYPT_50093]. Dieser konstante Zeiger etabliert ein geteiltes, unveränderliches Besitzmodell: Nach Abschluss einer Zertifikatsvalidierung wird das Ergebnisobjekt als unmodifizierbare Momentaufnahme bereitgestellt. Die Erzeugung und Initialisierung konkreter Instanzen dürfte dabei intern durch übergeordnete Validierungsfunktionen des Plattform-Backends erfolgen. Frage Q-a5580dcf443b0905 (offen) Da sämtliche Elementfunktionen als const sowie noexcept deklariert und explizit als thread-safe und exception-safe spezifiziert sind ([SWS_CRYPT_50094], [SWS_CRYPT_50095], [SWS_CRYPT_50096]), können mehrere Threads nebenläufig und ohne zusätzliche Synchronisationsmaßnahmen auf dieselbe Instanz zugreifen, bis die letzte Referenz freigegeben wird.

Nutzungspfad

Ein typischer Nutzungspfad startet nach dem Empfang einer CertificateValidationResult::Sptrc-Instanz aus einer vorangegangenen Zertifikatsprüfung. Aufrufer vollziehen die Auswertung in einer standardisierten Abfolge:

  • Zunächst ruft die Anwendung GetValidationStatus() auf, um das grundlegende Ergebnis der Zertifikatsvalidierung als CertificateValidationStatus abzufragen [SWS_CRYPT_50094].
  • War die Validierung erfolgreich, ruft der Client GetCertificateChain() auf, um die während des Prüfvorgangs gefundene Zertifikatkette als ara::core::Vector<Certificate::Sptrc> abzurufen [SWS_CRYPT_50096]. Gemäß Spezifikation beginnt diese Kette an Indexposition 0 stets mit dem Blattzertifikat (Leaf Certificate) [SWS_CRYPT_50096].
  • Ist die Pfadvalidierung hingegen fehlgeschlagen, ruft der Aufrufer GetFailedCertificate() auf, um gezielt dasjenige Zertifikat zu ermitteln, welches den Validierungsfehler ausgelöst hat [SWS_CRYPT_50095].
Abfrage des ValidierungsergebnissesAnwendungCertificateValidationResultGetValidationStatus()Result<CertificateValidationStatus>altValidierung erfolgreich (kValid)GetCertificateChain()Result<Vector<Certificate::Sptrc>>Validierung fehlgeschlagenGetFailedCertificate()Result<Certificate::Sptrc>

Sequenzdiagramm: Typischer Ablauf zur Abfrage von Validierungsstatus, Zertifikatkette und Fehlerursache. Quellen: [SWS_CRYPT_50094], [SWS_CRYPT_50095], [SWS_CRYPT_50096]

Fehlerszenarien

Das Fehlermanagement der Schnittstelle stützt sich auf ara::core::Result, wobei alle Aufrufe die noexcept-Garantie einhalten und exceptionsicher sind:

  • Erfolgreiche Validierung und GetFailedCertificate(): Wenn die Prüfung erfolgreich abgeschlossen wurde (Rückgabewert kValid), hat kein Zertifikat ein Fehlschlagen verursacht. In diesem Zustand schlägt der Aufruf von GetFailedCertificate() mit dem Fehlercode ara::crypto::CryptoErrc::kNoSuchValue fehl [SWS_CRYPT_50095]. Anwendungen müssen diesen Fehler als logische Bestätigung einer fehlerfreien Kette interpretieren oder den Aufruf an einen negativen Status koppeln.
  • Implementationsspezifische Statusfehler: Für GetValidationStatus() sind keine standardisierten Fehlercodes definiert, implementationsspezifische Fehler werden jedoch im zurückgegebenen ara::core::Result gekapselt [SWS_CRYPT_50094].
  • Zertifikatskettenabfrage: Auch GetCertificateChain() spezifiziert keine standardisierten Fehlercodes [SWS_CRYPT_50096]; allfällige interne Fehlerzustände werden über das resultierende ara::core::Result signalisiert.

Dieser Leitfaden basiert ausschließlich auf der AUTOSAR-Adaptive-Spezifikation für das Modul crypto im Release R25-11.

Mitgliederkarte

Klassendiagramm

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__crypto__x509__CertificateValidationResult372 CertificateValidationResult + GetCertificateChain() + GetFailedCertificate() + GetValidationStatus()

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Methoden

Get the certificate chain found during certificate validation.

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > GetCertificateChain () const noexcept=0;

Get the certificate that caused the certificate path validation to fail.

virtual ara::core::Result< Certificate::Sptrc > GetFailedCertificate () const noexcept=0;

Get the result of the certificate validation.

virtual ara::core::Result< CertificateValidationStatus > GetValidation Status () const noexcept=0;

Typaliase

Sptrc type alias

Smart pointer of the interface.

Dokumentation der Methoden

function GetCertificateChain [SWS_CRYPT_50096] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > GetCertificateChain () const noexcept=0;

Get the certificate chain found during certificate validation.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: dd73a4abf162 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Methode GetCertificateChain der Klasse ara::crypto::x509::CertificateValidationResult wird über den Header #include "ara/crypto/x509/certificate_validation_result.h" bereitgestellt [SWS_CRYPT_50096]. Sie dient dazu, die im Verlauf einer Zertifikatsvalidierung gefundene Zertifikatskette synchron abzurufen [SWS_CRYPT_50096].

Die Schnittstelle erwartet keine Parameter und liefert synchron ein ara::core::Result<ara::core::Vector<Certificate::Sptrc>> zurück [SWS_CRYPT_50096]. Der resultierende Vektor enthält Smart-Pointer auf die Zertifikate der validierten Kette, beginnend mit dem Blattzertifikat an Indexposition 0 [SWS_CRYPT_50096].

Fehlerbehandlung

Für diese Funktion sind keine standardisierten Fehler spezifiziert [SWS_CRYPT_50096]. Interpretation: Da der Rückgabewert dennoch als ara::core::Result typisiert ist, dürften auftretende Fehlerfälle ausschließlich auf herstellerspezifische Implementierungsdetails zurückgehen. Frage Q-967fe725a5505c11 (offen)

Nebenläufigkeit und Einschränkungen

Die Methode ist als reine virtuelle Funktion deklariert, als const sowie noexcept ausgewiesen und explizit als thread-safe sowie exception safe spezifiziert [SWS_CRYPT_50096]. Parallele Aufrufe auf derselben Instanz sind damit ohne externe Synchronisation sicher möglich.

Zusammenspiel

Die Funktion erfüllt die übergeordnete Anforderung [RS_CRYPTO_02306] im Modul crypt der Adaptive Platform [SWS_CRYPT_50096].

Dieser Text wurde durch ein KI-System auf Basis der Spezifikation von AUTOSAR R25-11 generiert.

Implementer's Guide folgt (Komplexität I1)

Header-Datei#include "ara/crypto/x509/certificate_validation_result.h"
Scopeclass ara::crypto::x509::CertificateValidationResult
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::Vector<Certificate::Sptrc > >A vector containing the found certificate chain, beginning with the leaf certificate at position 0.

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_50096
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50096@rel:R25-11#f119a26e
Content hash
f119a26e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50096
Status: valid/unmigrated Version: rel:R25-11#f119a26e Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_50096@rel:R25-11#f119a26e
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function GetFailedCertificate [SWS_CRYPT_50095] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< Certificate::Sptrc > GetFailedCertificate () const noexcept=0;

Get the certificate that caused the certificate path validation to fail.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 416a503d8d3e Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die synchrone Schnittstellenmethode GetFailedCertificate der Klasse ara::crypto::x509::CertificateValidationResult dient dem gezielten Abruf desjenigen Zertifikats, welches das Fehlschlagen einer Zertifikatspfad-Validierung verursacht hat [SWS_CRYPT_50095]. Die Funktion ist über die Header-Datei ara/crypto/x509/certificate_validation_result.h verfügbar und wird ohne Übergabeparameter aufgerufen [SWS_CRYPT_50095]. Als Rückgabewert stellt sie ein Result-Objekt vom Typ ara::core::Result<Certificate::Sptrc> bereit, welches im Erfolgsfall einen Smart-Pointer auf das fehlerverursachende Zertifikat kapselt [SWS_CRYPT_50095].

Fehlerbehandlung

War die vorangegangene Validierung des Zertifikatspfads hingegen erfolgreich (Ergebnis kValid), hat folglich kein Zertifikat zu einem Validierungsfehler geführt [SWS_CRYPT_50095]. In dieser Konstellation meldet GetFailedCertificate einen Fehler und liefert im Result-Objekt den spezifischen Fehlercode ara::crypto::CryptoErrc::kNoSuchValue mit dokumentierter Rollback-Semantik [SWS_CRYPT_50095]. Aufrufende Komponenten müssen daher vor dem Zugriff auf den Pointer des Zertifikats zwingend prüfen, ob das ara::core::Result einen Fehlercode enthält, um fehlerhafte Zugriffe zu verhindern.

Nebenläufigkeit und Einschränkungen

Die Elementfunktion ist als reine Abfrageoperation mit den Modifikatoren const sowie noexcept deklariert [SWS_CRYPT_50095]. Gemäß den Spezifikationsvorgaben ist sie vollständig ausnahmesicher (exception safe) und threadsicher (thread-safe) implementiert [SWS_CRYPT_50095]. Daher kann die Methode sicher und ohne zusätzliche Synchronisationsmaßnahmen nebenläufig aus mehreren Threads aufgerufen werden.

Dieser Text wurde durch eine KI erstellt und basiert auf der Spezifikation AUTOSAR R25-11.

Implementer's Guide folgt (Komplexität I1)

Header-Datei#include "ara/crypto/x509/certificate_validation_result.h"
Scopeclass ara::crypto::x509::CertificateValidationResult
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<Certificate::Sptrc >A result containing the certificate that caused the certificate path validation to fail

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kNoSuchValuerollback_semantics if the certificate validation returned kValid, i.e., no certificate caused the validation to fail.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_50095
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50095@rel:R25-11#a460c4b9
Content hash
a460c4b9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50095
Status: valid/unmigrated Version: rel:R25-11#a460c4b9 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_50095@rel:R25-11#a460c4b9
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function GetValidationStatus [SWS_CRYPT_50094] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< CertificateValidationStatus > GetValidation Status () const noexcept=0;

Get the result of the certificate validation.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 6c769a28da81 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Methode GetValidationStatus dient dem synchronen Abrufen des Validierungsergebnisses einer Zertifikatsprüfung [SWS_CRYPT_50094]. Sie ist als rein virtuelle, konstante Memberfunktion der Schnittstelle ara::crypto::x509::CertificateValidationResult deklariert und über den Header ara/crypto/x509/certificate_validation_result.h eingebunden [SWS_CRYPT_50094]. Die Funktion nimmt keine Übergabeparameter entgegen und liefert ein ara::core::Result<CertificateValidationStatus> zurück, welches im Erfolgsfall den Status der Zertifikatsvalidierung kapselt [SWS_CRYPT_50094].

Fehlerbehandlung

Für GetValidationStatus sind keine standardisierten Fehlercodes vorgegeben [SWS_CRYPT_50094]. Schlägt die Auswertung oder Ermittlung des Status fehl, enthält das zurückgegebene ara::core::Result stattdessen einen implementationsspezifischen Fehlercode [SWS_CRYPT_50094]. Aufrufer müssen daher das Result-Objekt stets auf Fehlerzustände prüfen, bevor sie auf den eigentlichen Statuswert zugreifen.

Nebenläufigkeit und Einschränkungen

Die Operation ist als noexcept sowie explizit als threadsicher (thread-safe) und ausnahmesicher (exception safe) spezifiziert [SWS_CRYPT_50094]. Sie kann somit gefahrlos nebenläufig aus unterschiedlichen Threads auf derselben Instanz aufgerufen werden, ohne dass zusätzliche Synchronisationsmechanismen erforderlich sind.

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation von AUTOSAR Adaptive R25-11 generiert.

Implementer's Guide folgt (Komplexität I2)

Header-Datei#include "ara/crypto/x509/certificate_validation_result.h"
Scopeclass ara::crypto::x509::CertificateValidationResult
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<CertificateValidationStatus >The result of the certificate validation, or an implementation specific error.

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_50094
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50094@rel:R25-11#e76328ae
Content hash
e76328ae
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50094
Status: valid/unmigrated Version: rel:R25-11#e76328ae Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_50094@rel:R25-11#e76328ae
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Dokumentation der Typaliase

type alias Sptrc [SWS_CRYPT_50093] Upstream: RS_CRYPTO_02306

using Sptrc = std::shared_ptr<const CertificateValidationResult>;

Smart pointer of the interface.

Header-Datei#include "ara/crypto/x509/certificate_validation_result.h"
Scopeclass ara::crypto::x509::CertificateValidationResult
SymbolSptrc

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_50093
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50093@rel:R25-11#0adf21c8
Content hash
0adf21c8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50093
Status: valid/unmigrated Version: rel:R25-11#0adf21c8 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_50093@rel:R25-11#0adf21c8
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill