DEENESPTFRRUARHIKOZHNL

class ara::crypto::x509::Certificate

[SWS_CRYPT_50180] Upstream: RS_CRYPTO_02306

class Certificate :            public ara::crypto::Serializable {...};

X.509 Certificate interface.

Header-Datei#include "ara/crypto/x509/certificate.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::x509
Basisklasse(n)ara::crypto::Serializable

User GuideAI-GENERATED

Represents a serializable X.509 certificate for safe use via immutable smart pointers.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 4491553b5df1 Provenance Open questions (3)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Represents a serializable X.509 certificate for safe use via immutable smart pointers.

The interface ara::crypto::x509::Certificate represents X.509 certificates in the AUTOSAR Adaptive Platform and enables their serialization via the base class ara::crypto::Serializable. For standardized management and passing, the class defines the smart pointer type alias Sptrc as std::shared_ptr<const Certificate> [SWS_CRYPT_40202]. Instances are typically created by crypto providers and subsequently used concurrently as immutable objects by multiple components. Question (open) The lifetime is managed automatically and safely via reference counting of the shared pointer according to [SWS_CRYPT_40202].

Context

The C++ class ara::crypto::x509::Certificate forms the central interface for representing and handling X.509 certificates within module crypto of the AUTOSAR Adaptive Platform. As an abstract interface, it defines the fundamental abstraction for digital certificates, which are used in safety-relevant vehicle applications for authenticating communication partners, verifying signatures, and within public key infrastructures (PKI). The interface is provided via header ara/crypto/x509/certificate.h and declares the standardized smart pointer type alias Sptrc [SWS_CRYPT_40202] for use by applications and platform services.

According to class syntax, Certificate publicly inherits from the base interface ara::crypto::Serializable. This architecturally establishes that every certificate object is serializable and must provide standardized interface methods for serialization. Interpretation: Derivation from ara::crypto::Serializable is likely intended to allow instances of the certificate interface to be converted into standardized storage or transmission formats (such as ASN.1 DER or PEM encodings) or reconstructed from such data streams to ensure interoperability with downstream crypto services, communication stacks, and persistent storage. Question Q-e1cd76f3904df94a (open)

Lifecycle

The lifecycle of instances of interface ara::crypto::x509::Certificate is predominantly governed by the typed smart pointer Certificate::Sptrc, which is defined as std::shared_ptr<const Certificate> [SWS_CRYPT_40202]. Providing this alias achieves shared, reference-counted ownership throughout the software system. Since the class itself is declared as a pure interface, concrete certificate objects are typically instantiated by underlying factory methods, certificate providers, or dedicated loading routines of the crypto module and made available directly to using software components as Sptrc. Question Q-8faf1e0eae0cf613 (open)

The explicit definition of the pointer to a const base type (const Certificate) according to [SWS_CRYPT_40202] is a central architectural design feature for lifecycle management. The use of const is likely intended to ensure that a certificate, once loaded, parsed, or validated, remains completely immutable during ongoing system operation. Question Q-f4406ec44e46f9c4 (open) Consumers can thus share the certificate concurrently and thread-safely across multiple threads and software components without having to fear costly mutex locks, race conditions, or accidental state modifications. Destruction and memory reclamation of the underlying object occur completely automatically and deterministically via the reference counting of std::shared_ptr as soon as the last active Sptrc instance in the system exits its scope and is destroyed.

Usage Path

The typical usage path for adaptive applications and platform modules is based on the exchange, passing, and evaluation of Certificate::Sptrc instances [SWS_CRYPT_40202]. Application or platform services that perform cryptographic verifications, validate signatures, or establish secure TLS connections receive or hold references to the respective certificate exclusively via this smart pointer. This minimizes computationally intensive copy operations of large data structures and prevents error-prone manual memory management when passing across software boundaries.

Via the inherited base interface ara::crypto::Serializable, a certificate can be serialized when needed to export its raw cryptographic data content or make it available for diagnostic, configuration, and logging purposes. Components pass Sptrc [SWS_CRYPT_40202] to the respective crypto routines, which extract the certificate's public key or verify complete certificate chains against configured trust anchors. After completing all cryptographic operations, the smart pointer is simply discarded or retained in a certificate store for subsequent communication sessions.

This class guide is based on the AUTOSAR Adaptive specification for Release R25-11 and describes the interface requirements for X.509 certificates.

UML class diagram

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

G nara__crypto__x509__Certificate240 Certificate nara__crypto__Serializable855 Serializable nara__crypto__x509__Certificate240->nara__crypto__Serializable855

Type aliases

Sptrc type alias

Smart pointer of the interface.

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

Type alias documentation

type alias Sptrc [SWS_CRYPT_40202] Upstream: RS_CRYPTO_02306

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

Smart pointer of the interface.

Header-Datei#include "ara/crypto/x509/certificate.h"
Scopeclass ara::crypto::x509::Certificate
SymbolSptrc

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40202
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40202@rel:R25-11#1b3465f6
Content hash
1b3465f6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40202
Status: valid/unmigrated Version: rel:R25-11#c5e0fec3 Versionshistorie & Revisions (1 transition, 8 revision)
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_40202@rel:R25-11#c5e0fec3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#1b3465f62026-09-30
  • R19-11rel:R19-11#5f231f612026-10-14
  • R20-11rel:R20-11#105261b92026-10-14
  • R21-11rel:R21-11#105261b92026-10-14
  • R22-11rel:R22-11#af7cf3fb2026-10-14
  • R23-11rel:R23-11#c31a109b2026-10-14
  • R24-11rel:R24-11#c31a109b2026-10-14
  • R25-11rel:R25-11#c5e0fec32026-10-14 active
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