DEENESPTFRRUARHIKOZHNL

class ara::crypto::x509::X509Provider

[SWS_CRYPT_40600] Upstream: RS_CRYPTO_02306

class X509Provider {...};

X.509 Provider interface.

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

User GuideAI-GENERATED

Provides interfaces for creating, parsing, persistently storing, and validating X.509 security certificates.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 8351921f4f2a Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Provides interfaces for creating, parsing, persistently storing, and validating X.509 security certificates.

The interface enables applications to create, parse, and manage X.509 certificates, certificate revocation lists, and validation contexts within the Adaptive Platform ([SWS_CRYPT_40614]). In addition to verifying certificate chains, it controls the creation of signing requests and OCSP queries in cooperation with the crypto subsystem. It also encapsulates persistent storage in individual certificate slots as well as in certificate groups via standardized instance specifiers ([SWS_CRYPT_40621]). All operations are designed to be thread-safe and, to prevent multiple instantiations, strictly require referencing via smart pointers without copy or move permissions.

Context

In the AUTOSAR Adaptive Platform, the class ara::crypto::x509::X509Provider forms the central abstraction and management interface for artifacts of a public key infrastructure (PKI) according to the X.509 standard. It decouples applying processes from vendor-specific implementation details of cryptographic drivers and provides uniform mechanisms for parsing, creating, and persistently storing certificates and certificate revocation lists (CRLs).

The interface interacts primarily with three functional areas:

X509ProviderKontext Applikation Applikation X509Provider X509Provider Applikation->X509Provider nutzt API Persistenz Persistenter Speicher X509Provider->Persistenz verwaltet Zertifikate via InstanceSpecifier KryptoSubsystem Krypto-Subsystem (cryp) X509Provider->KryptoSubsystem nutzt Signierkontext

Context diagram: System environment and interaction partners of X509Provider. Sources: [SWS_CRYPT_40621], [SWS_CRYPT_40640], [SWS_CRYPT_50125]

Lifecycle

The interface X509Provider is defined as an abstract class. Instances are referenced and managed at the application level via the standardized smart pointer Sptr (alias for std::shared_ptr<X509Provider>) ([SWS_CRYPT_40601]). The actual instantiation of a platform-specific implementation is likely to occur via higher-level entry points of the crypto module (Interpretation). Question Q-5ab7a7f5d30f48eb (open)

To prevent multiple instantiations and uncontrolled copy or move operations, the copy constructor ([SWS_CRYPT_41013]), the move constructor ([SWS_CRYPT_41014]), and the corresponding assignment operators ([SWS_CRYPT_30226], [SWS_CRYPT_30227]) are explicitly deleted (=delete). The lifecycle ends with destruction via the virtual destructor ~X509Provider() ([SWS_CRYPT_40604]).

With regard to concurrency, all member functions of the class are specified as thread-safe (thread-safe) and exception-safe (exception safe) (including [SWS_CRYPT_40614], [SWS_CRYPT_40621], [SWS_CRYPT_50125]). Multiple threads can thus use the same provider instance in parallel without manual synchronization mechanisms.

Usage Path

A typical sequence for registering, storing, and subsequently checking certificates comprises the following steps:

  1. Parsing: A binary or textually serialized X.509v3 certificate is read in via ParseCert, passing the memory region and format identifier, and converted into a transient certificate object ([SWS_CRYPT_40614]). For certificate chains, ParseCertChain is equivalently available ([SWS_CRYPT_40616]).
  2. Persistent storage: The certificate object is persistently stored via ImportCertificate in a slot addressed by an instance specifier ([SWS_CRYPT_40621]) or assigned to a certificate group via ImportCertificateInGroup ([SWS_CRYPT_50127]). Already stored certificates can be loaded via LoadCertificate ([SWS_CRYPT_40641]) or LoadCertificateGroup ([SWS_CRYPT_50126]) as needed.
  3. Create validation context: To check certificates, a context object is created via CreateCertificateValidationCtx ([SWS_CRYPT_50125]).
  4. Manage revocation information: To ensure revocation status, CRLs can be imported via ImportCrl ([SWS_CRYPT_50183]), or OCSP requests can be generated via CreateOcspRequest ([SWS_CRYPT_40626]) and their responses evaluated with ParseOcspResponse ([SWS_CRYPT_50185]).
Typical sequence for certificate management and validation preparationApplikationX509ProviderPersistenter SpeicherParseCert(certMem, formatId)Certificate::SptrcImportCertificate(slotSpecifier, cert)Zertifikat in Slot speichernStorage confirmedResult<void>CreateCertificateValidationCtx()CertificateValidationCtx::Sptr

Sequence diagram: Flow for parsing, storing, and preparing certificate validation. Sources: [SWS_CRYPT_40614], [SWS_CRYPT_40621], [SWS_CRYPT_50125]

Error Scenarios

The interface signals errors via ara::core::Result without the use of C++ exceptions. Error handling is divided into functional crypto error codes and process-related configuration violations.

The functional error codes (ara::crypto::CryptoErrc) include:

At the architectural level, manifest and permission conflicts are differentiated:

This guide was prepared by an AI assistant based on the AUTOSAR specification R25-11.

Member map

Class diagram

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

G nara__crypto__x509__X509Provider937 X509Provider + X509Provider() + operator=() + ~X509Provider() + ClearCertificateSlot() + CreateCertSignRequest() + CreateCertificateValidationCtx() + CreateDn() + CreateOcspRequest() + DeleteCrl() + ImportCertificate() + ImportCertificateInGroup() + ImportCrl() + ParseCert() + ParseCertChain() + ParseOcspResponse() + RemoveCertificateFromGroup() … 2 weitere

Detail view

Select an entry in the outline.

Constructors and destructor

X509Provider function 2

Copy-Constructor.

Overloads X509Provider 2
X509Provider (const X509Provider &)=delete; SWS_CRYPT_41013
X509Provider (X509Provider &&)=delete; SWS_CRYPT_41014
~X509Provider function

Destructor.

virtual ~X509Provider () noexcept=default;

Methods

Clear the certificate slot identified by the passed instance specifier.

virtual ara::core::Result< bool > ClearCertificateSlot (const ara::core::InstanceSpecifier &instanceSpecifier) noexcept=0;

Create a certificate validation context.

Create certificate signing request according to RFC 2986.

virtual ara::core::Result< CertSignRequest::Sptrc > CreateCertSign Request (cryp::SignerPrivateCtx::Sptr signerCtx, X509DN::Sptrc subject Dn, cryp::PublicKey::Sptr publicKey, ara::core::Optional< ReadOnlyMem Region > attributes) const noexcept=0;
CreateDn function 2

Create DN from string representation.

Overloads CreateDn 2
virtual ara::core::Result< X509DN::Sptrc > CreateDn (ara::core::String View dnString) const noexcept=0; SWS_CRYPT_50186
virtual ara::core::Result< X509DN::Sptrc > CreateDn (ReadOnlyMemRegion dn, FormatId formatId) const noexcept=0; SWS_CRYPT_50187

Create OCSP request for specified certificate according to RFC 6960.

Overloads CreateOcspRequest 2
virtual ara::core::Result< ara::core::Vector< std::uint8_t > > Create OcspRequest (Certificate::Sptrc cert, Certificate::Sptrc issuerCert, ara::core::Optional< cryp::SignerPrivateCtx::Sptr > signerCtx) noexcept=0; SWS_CRYPT_40626
virtual ara::core::Result< ara::core::Vector< std::uint8_t > > Create OcspRequest (const ara::core::Span< Certificate::Sptrc > certList, const ara::core::Span< Certificate::Sptrc > issuerCertList, ara::core::Optional< cryp::SignerPrivateCtx::Sptr > signerCtx) noexcept=0; SWS_CRYPT_40627
DeleteCrl function

Delete a stored CRL identified by the passed instance specifier.

virtual ara::core::Result< void > DeleteCrl (ara::core::Instance Specifier crlInstanceSpecifier) noexcept=0;

Persistently store a certificate in a certificate slot.

virtual ara::core::Result< void > ImportCertificate (const ara::core::InstanceSpecifier &instanceSpecifier, Certificate::Sptrc certificate) noexcept=0;

Persistently store a certificate in a certificate group.

virtual ara::core::Result< void > ImportCertificateInGroup (const ara::core::InstanceSpecifier &instanceSpecifier, Certificate::Sptrc certificate) noexcept=0;
ImportCrl function

Parse and persist a Certificate Revocation List (CRL) or Delta CRL which is issued by the CA certificate identified by the passed ara::core::InstanceSpecifier.

virtual ara::core::Result< CertificateValidationStatus > ImportCrl (ara::core::InstanceSpecifier crlInstanceSpecifier, ReadOnlyMemRegion crl, FormatId formatId) noexcept=0;

Load a certificate from the persistent certificate storage.

virtual ara::core::Result< Certificate::Sptrc > LoadCertificate (const ara::core::InstanceSpecifier &instanceSpecifier) noexcept=0;

Load a group of certificates from the persistent certificate storage.

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > LoadCertificateGroup (const ara::core::InstanceSpecifier &instance Specifier) noexcept=0;
ParseCert function

Parse a serialized representation of an X.509v3 certificate and create a certificate object.

virtual ara::core::Result< Certificate::Sptrc > ParseCert (ReadOnlyMem Region cert, FormatId formatId) noexcept=0;

Parse a serialized representation of a certificate chain, creating a new Certificate instance for each parsed certificate. Certificates in the returned vector will be placed in the same order as provided in certChain.

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > ParseCertChain (ReadOnlyMemRegion certChain, FormatId formatId) noexcept=0;

Parse serialized OCSP response.

virtual ara::core::Result< OcspResponse::Sptrc > ParseOcspResponse (ReadOnlyMemRegion response, FormatId formatId) const noexcept=0;

Remove a certificate from a certificate group.

virtual ara::core::Result< void > RemoveCertificateFromGroup (const ara::core::InstanceSpecifier &instanceSpecifier, Certificate::Sptrc certificate) noexcept=0;

Operators

operator= function 2

Copy-assign another X509Provider to this instance.

Overloads = 2
X509Provider & operator= (const X509Provider &other)=delete; SWS_CRYPT_30226
X509Provider & operator= (X509Provider &&other)=delete; SWS_CRYPT_30227

Type aliases

Sptr type alias

Smart pointer of the interface.

Method documentation

function ClearCertificateSlot [SWS_CRYPT_40622] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< bool > ClearCertificateSlot (const ara::core::InstanceSpecifier &instanceSpecifier) noexcept=0;

Clear the certificate slot identified by the passed instance specifier.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 99a52bea08ed Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The synchronous method ClearCertificateSlot of class ara::crypto::x509::X509Provider clears the certificate slot specified via parameter instanceSpecifier [SWS_CRYPT_40622]. It returns a ara::core::Result<bool>: The return value is true if an existing certificate was successfully deleted, and false if the slot was already unoccupied [SWS_CRYPT_40622].

Error Handling and Restrictions

If the operation cannot be executed temporarily, the function returns error code ara::crypto::CryptoErrc::kBusyResource with rollback semantics [SWS_CRYPT_40622]. In addition, specific modeling and access prerequisites are defined:

  • ProcessMappingViolation: Occurs when InstanceSpecifier does not point to a PortPrototype modeled for the current process with interface CryptoCertificateInterface [SWS_CRYPT_40622].
  • InsufficientPermissionsViolation: Occurs when the current process lacks write permissions, i.e. CryptoCertificateToPortPrototypeMapping.writeAccess != True is set [SWS_CRYPT_40622].

Concurrency

The interface is designated as noexcept, specified as exception-safe (exception safe), and specified as thread-safe (thread-safe) for concurrent calls [SWS_CRYPT_40622].

This usage note was generated automatically on the basis of specification data.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateInterface modeled for the current process. InsufficientPer- In case the current process does not have write permissions, i.e., missionsViolation CryptoCertificateToPortPrototypeMapping.writeAccess != True

Parameter (in)

ParameterBeschreibung
instanceSpecifierAn instance specifier identifying a storage location of a certificate.

Rückgabewert

TypBeschreibung
ara::core::Result< bool >true if the slot contained a certificate which has been successfully removed false if the slot contained no certificate.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40622
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40622@rel:R25-11#4acf5aaa
Content hash
4acf5aaa
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40622
Status: valid/unmigrated Version: rel:R25-11#c87d5644 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_40622@rel:R25-11#c87d5644
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4acf5aaa2026-09-30
  • R19-11rel:R19-11#9a648bef2026-10-14
  • R20-11rel:R20-11#9816a1ad2026-10-14
  • R21-11rel:R21-11#be9e5a522026-10-14
  • R22-11rel:R22-11#a6750b412026-10-14
  • R23-11rel:R23-11#c52c6c322026-10-14
  • R24-11rel:R24-11#a2473ff72026-10-14
  • R25-11rel:R25-11#c87d56442026-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

function CreateCertSignRequest [SWS_CRYPT_40640] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< CertSignRequest::Sptrc > CreateCertSign Request (cryp::SignerPrivateCtx::Sptr signerCtx, X509DN::Sptrc subject Dn, cryp::PublicKey::Sptr publicKey, ara::core::Optional< ReadOnlyMem Region > attributes) const noexcept=0;

Create certificate signing request according to RFC 2986.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: dc6f7ceeea9e Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The synchronous method CreateCertSignRequest of interface ara::crypto::x509::X509Provider from header ara/crypto/x509/x509_provider.h creates a certificate signing request (CSR) according to the RFC 2986 standard [SWS_CRYPT_40640]. As parameters, the function expects a fully configured signing context signerCtx, the distinguished name of the subject subjectDn, the associated public key publicKey, and optional DER-encoded attributes attributes [SWS_CRYPT_40640]. The passed public key must strictly correspond to the private key configured in the signing context. In case of success, a smart pointer to the created CSR (CertSignRequest::Sptrc) packaged in a ara::core::Result is returned [SWS_CRYPT_40640].

Error handling

In case of an error, the method returns a ara::core::Result with a corresponding error code according to rollback semantics [SWS_CRYPT_40640]:

  • ara::crypto::CryptoErrc::kInvalidArgument: If the passed attribute data is invalid or the public key does not match the private key of the signing context.
  • ara::crypto::CryptoErrc::kUninitializedContext: If the signing context was not initialized with a key value.
  • ara::crypto::CryptoErrc::kEmptyKeySlot: If a configured KeySlot is currently empty.
  • ara::crypto::CryptoErrc::kUsageViolation: When the permitted key usage does not include signature generation (kAllowSigGeneration).
  • ara::crypto::CryptoErrc::kBusyResource: If a resource required for the operation is busy.

Concurrency and Limitations

The method is specified as const, noexcept, exception-safe (exception safe), and thread-safe (thread-safe) [SWS_CRYPT_40640]. Parallel calls via the same provider instance are likely permitted as long as the passed context and key objects are not concurrently modified by other threads. Question Q-aef8777dce55a033 (open)

This usage note was generated automatically on the basis of the specification of AUTOSAR Adaptive Release R25-11.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
signerCtxthe fully configured SignerPrivateCtx to be used for signing this certificate request
subjectDnthe DN to be used in the CSR
publicKeythe public key to be used in the CSR. Must correspond to the private key configured in the signerCtx.
attributesthe DER-encoded attributes that should be included to the certificate signing request

Rückgabewert

TypBeschreibung
ara::core::Result< CertSignRequest::Sptrc >Smart pointer to created certificate signing request

Fehler

FehlercodeBeschreibung
InvalidArgumentif the attributes parameter contains invalid data
ara::crypto::CryptoErrc::kUninitializedContextrollback_semantics if the context was not initialized by a key value
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowSig Generation
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if the publicKey does not correspond to the private key configured at the signerCtx

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40640
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40640@rel:R25-11#6c6194a7
Content hash
6c6194a7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40640
Status: valid/unmigrated Version: rel:R25-11#ac494cfd Versionshistorie & Revisions (1 transition, 7 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_40640@rel:R25-11#ac494cfd
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#6c6194a72026-09-30
  • R20-11rel:R20-11#e83871e52026-10-14
  • R21-11rel:R21-11#6eff8cfd2026-10-14
  • R22-11rel:R22-11#87637b592026-10-14
  • R23-11rel:R23-11#39e766542026-10-14
  • R24-11rel:R24-11#978b01462026-10-14
  • R25-11rel:R25-11#ac494cfd2026-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

function CreateCertificateValidationCtx [SWS_CRYPT_50125] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< CertificateValidationCtx::Sptr > Create CertificateValidationCtx () noexcept=0;

Create a certificate validation context.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 29344148ca27 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method CreateCertificateValidationCtx is a functional interface of class ara::crypto::x509::X509Provider and, according to [SWS_CRYPT_50125], serves to create a certificate validation context. It is declared in the header #include "ara/crypto/x509/x509_provider.h" and defined as a parameterless, pure virtual function [SWS_CRYPT_50125].

The synchronous call returns the type ara::core::Result<CertificateValidationCtx::Sptr> as return value, which provides a smart pointer to the created context in case of success [SWS_CRYPT_50125]. No standardized error codes are defined in the specification for this function [SWS_CRYPT_50125]. However, since the return occurs via the result type ara::core::Result, any provider-specific errors during context creation are expected to be represented via the error component of this Result object. Question Q-f81f52d8e3d73bcf (open)

Regarding the calling context and concurrency, the method is explicitly specified as thread-safe (thread-safe) and declared as exception safe (exception safe) and noexcept [SWS_CRYPT_50125]. Callers can therefore execute the function safely and concurrently from multiple threads without having to provide additional synchronization for the creation process [SWS_CRYPT_50125].

This usage note is based on the AUTOSAR Adaptive R25-11 specification.

Implementer's Guide to follow (complexity I1)

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

Rückgabewert

TypBeschreibung
ara::core::Result<CertificateValidationCtx::Sptr >Smart pointer to the created context

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_50125
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50125@rel:R25-11#7943aae2
Content hash
7943aae2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50125
Status: valid/unmigrated Version: rel:R25-11#7943aae2 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_50125@rel:R25-11#7943aae2
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 CreateDn [SWS_CRYPT_50186] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< X509DN::Sptrc > CreateDn (ara::core::String View dnString) const noexcept=0;

Create DN from string representation.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 085f2fe97f25 Provenance Open questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The pure virtual method CreateDn is provided via the interface ara::crypto::x509::X509Provider from the header file ara/crypto/x509/x509_provider.h [SWS_CRYPT_50186]. It serves to instantiate an X.509 distinguished name object (X509DN::Sptrc) based on a string representation [SWS_CRYPT_50186]. As an input parameter, it expects dnString of type ara::core::StringView, which must represent a distinguished name according to RFC 4514 [SWS_CRYPT_50186]. Interpretation: Since the function is declared as const noexcept and directly returns a ara::core::Result, the call is likely to occur in a synchronous, blocking manner without any state change of the provider. Question Q-c7e3ab6b4f34ad0f (open)

Error handling

If the passed string cannot be processed successfully because it does not represent a valid DN according to RFC 4514, the function returns a ara::core::Result with the error code ara::crypto::CryptoErrc::kInvalidArgument [SWS_CRYPT_50186]. Rollback semantics are specified for this error case [SWS_CRYPT_50186].

Concurrency and Limitations

The method is explicitly specified as exception safe (exception safe) and thread-safe (thread-safe) [SWS_CRYPT_50186]. It can therefore be called from concurrent threads without additional external synchronization.

Interaction

As an alternative to string-based creation, ara::crypto::x509::X509Provider provides another overload of CreateDn [SWS_CRYPT_50187]. This allows the construction of a X509DN from a serialized buffer (ReadOnlyMemRegion) specifying a format specifier (FormatId) [SWS_CRYPT_50187].

This usage note was generated by an AI based on the specification.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
dnStringstring representing a DN according to RFC 4514

Rückgabewert

TypBeschreibung
ara::core::Result< X509DN::Sptrc >a result containing a X509DN or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if the provided DN string is invalid.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50186
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50186@rel:R25-11#1156623b
Content hash
1156623b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50186
Status: valid/unmigrated Version: rel:R25-11#1156623b 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_50186@rel:R25-11#1156623b
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 CreateDn [SWS_CRYPT_50187] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< X509DN::Sptrc > CreateDn (ReadOnlyMemRegion dn, FormatId formatId) const noexcept=0;

Create DN from a serialized buffer.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 9e16d7d285e3 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method CreateDn according to [SWS_CRYPT_50187] serves to create a Distinguished Name (DN) from a serialized buffer. It is called synchronously on an instance of ara::crypto::x509::X509Provider. As inputs, the function expects a memory region dn of type ReadOnlyMemRegion containing the serialized data, as well as a format identifier formatId of type FormatId. Upon successful execution, the method returns a ara::core::Result<X509DN::Sptrc>, which provides a shared pointer to the created X509DN object.

Error handling

If the creation fails, the method returns a corresponding error code within the ara::core::Result ([SWS_CRYPT_50187]):

  • ara::crypto::CryptoErrc::kInvalidArgument: Occurs with rollback semantics if the passed buffer dn is invalid.
  • ara::crypto::CryptoErrc::kUnsupportedFormat: Reported with rollback semantics if the specified formatId is unknown or not supported.

Concurrency and Interaction

The interface is specified as thread-safe as well as exception safe and declared with noexcept ([SWS_CRYPT_50187]). It can therefore safely be called in parallel from multiple execution contexts.

In contrast to the alternative overload [SWS_CRYPT_50186], which creates a DN from a character string (ara::core::StringView) according to RFC 4514, this function processes serialized binary data. The concrete characteristics for FormatId are expected to be defined elsewhere across the module. Question Q-dd7cbf35ba6fa7d1 (open)

This text was generated by an AI based on the AUTOSAR R25-11 specification.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
dna DN serialized according to the provided format
formatIdinput format identifier

Rückgabewert

TypBeschreibung
ara::core::Result< X509DN::Sptrc >a result containing a X509DN or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if the provided dn buffer is invalid.
ara::crypto::CryptoErrc::kUnsupportedFormatrollback_semantics if the specified FormatId is unknown or not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50187
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50187@rel:R25-11#0812b274
Content hash
0812b274
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50187
Status: valid/unmigrated Version: rel:R25-11#0812b274 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_50187@rel:R25-11#0812b274
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 CreateOcspRequest [SWS_CRYPT_40626] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< ara::core::Vector< std::uint8_t > > Create OcspRequest (Certificate::Sptrc cert, Certificate::Sptrc issuerCert, ara::core::Optional< cryp::SignerPrivateCtx::Sptr > signerCtx) noexcept=0;

Create OCSP request for specified certificate according to RFC 6960.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 0ede64b86ad6 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method CreateOcspRequest of the class ara::crypto::x509::X509Provider synchronously generates an OCSP (Online Certificate Status Protocol) check request for a single certificate according to RFC 6960 [SWS_CRYPT_40626]. The certificate to be checked cert and its issuer certificate issuerCert are each passed as parameters as Certificate::Sptrc [SWS_CRYPT_40626]. A pointer to a signing context can be provided via the optional parameter signerCtx if the request is to be cryptographically signed [SWS_CRYPT_40626]. The function returns a ara::core::Result with a ara::core::Vector<std::uint8_t>; the contained raw data likely corresponds to the DER-encoded request structure according to RFC 6960 [SWS_CRYPT_40626]. Question Q-c43cf023ee5eddd9 (open)

Error handling

If an error occurs during creation, the ara::core::Result returns specific error codes with rollback semantics [SWS_CRYPT_40626]:

  • ara::crypto::CryptoErrc::kUninitializedContext: Occurs if the passed signing context is not initialized with a key [SWS_CRYPT_40626].
  • ara::crypto::CryptoErrc::kBusyResource: Occurs if the operation cannot be performed due to temporarily busy resources [SWS_CRYPT_40626].

Concurrency and Interaction

The method is declared as noexcept, is considered exception safe, and is specified as thread-safe [SWS_CRYPT_40626]. For scenarios in which multiple certificates are to be bundled simultaneously in a shared OCSP request, the overloaded interface [SWS_CRYPT_40627] for certificate lists is available.

This text was generated by an AI and serves as guidance.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
certa certificate that should be verified
issuerCertthe issuer certificate of the certificate that should be verified
signerCtxan optional pointer to initialized signer context (if the request should be signed)

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::Vector<std::uint8_t > >Smart pointer to the created OCSP request

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kUninitializedContextrollback_semantics if the signer context is not initialized by a key
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40626
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40626@rel:R25-11#2ba524d7
Content hash
2ba524d7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40626
Status: valid/unmigrated Version: rel:R25-11#afe90920 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_40626@rel:R25-11#afe90920
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#2ba524d72026-09-30
  • R19-11rel:R19-11#8197a6182026-10-14
  • R20-11rel:R20-11#438e8ee12026-10-14
  • R21-11rel:R21-11#6413c43a2026-10-14
  • R22-11rel:R22-11#7df0940a2026-10-14
  • R23-11rel:R23-11#a8b4a3b12026-10-14
  • R24-11rel:R24-11#d6335c382026-10-14
  • R25-11rel:R25-11#afe909202026-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

function CreateOcspRequest [SWS_CRYPT_40627] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< ara::core::Vector< std::uint8_t > > Create OcspRequest (const ara::core::Span< Certificate::Sptrc > certList, const ara::core::Span< Certificate::Sptrc > issuerCertList, ara::core::Optional< cryp::SignerPrivateCtx::Sptr > signerCtx) noexcept=0;

Create OCSP request for specified list of certificates according to RFC 6960.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 045b7f496270 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method CreateOcspRequest of interface ara::crypto::x509::X509Provider ([SWS_CRYPT_40627]) serves to synchronously create an OCSP (Online Certificate Status Protocol) check request according to RFC 6960 for multiple certificates. The call is provided via header #include "ara/crypto/x509/x509_provider.h".

As input parameter, the function expects:

  • certList: A list of the certificates to be validated as ara::core::Span<Certificate::Sptrc>.
  • issuerCertList: A list of the associated issuer certificates as ara::core::Span<Certificate::Sptrc>. Interpretation: A pairwise assignment by index is likely assumed between the entries of both lists. Question Q-9132b017c2c4be75 (open)
  • signerCtx: An optional pointer to an initialized signing context (ara::core::Optional<cryp::SignerPrivateCtx::Sptr>) if the request is to be cryptographically signed.

As return value, the function returns a ara::core::Result, which provides the binary data of the OCSP request in a ara::core::Vector<std::uint8_t> upon successful creation ([SWS_CRYPT_40627]).

Error handling

In case of an error, ara::core::Result provides error codes with rollback semantics ([SWS_CRYPT_40627]):

  • ara::crypto::CryptoErrc::kUninitializedContext: Occurs when the passed signing context has not been initialized with a key.
  • ara::crypto::CryptoErrc::kBusyResource: Occurs when the operation temporarily cannot be executed due to temporarily busy resources.

Concurrency and Interaction

The method is specified as thread-safe and exception safe and declared with noexcept ([SWS_CRYPT_40627]). In contrast to [SWS_CRYPT_40626], where the OCSP request is generated for a single certificate, this interface allows bundling multiple certificates into a single request.

This usage note was generated automatically and is based on AUTOSAR specification R25-11.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
certLista list of certificates that should be verified
issuerCertLista list of issuer certificates of the certificates that should be verified
signerCtxan optional pointer to initialized signer context (if the request should be signed)

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::Vector<std::uint8_t > >Smart pointer to the created OCSP request

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kUninitializedContextrollback_semantics if the signer context is not initialized by a key
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40627
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40627@rel:R25-11#35c80f53
Content hash
35c80f53
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40627
Status: valid/unmigrated Version: rel:R25-11#28f7db2c 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_40627@rel:R25-11#28f7db2c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#35c80f532026-09-30
  • R19-11rel:R19-11#ddd2c1962026-10-14
  • R20-11rel:R20-11#745575b22026-10-14
  • R21-11rel:R21-11#e962488d2026-10-14
  • R22-11rel:R22-11#255821312026-10-14
  • R23-11rel:R23-11#e4d2938a2026-10-14
  • R24-11rel:R24-11#293b816f2026-10-14
  • R25-11rel:R25-11#28f7db2c2026-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

function DeleteCrl [SWS_CRYPT_50184] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< void > DeleteCrl (ara::core::Instance Specifier crlInstanceSpecifier) noexcept=0;

Delete a stored CRL identified by the passed instance specifier.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 0e40ef1af7c7 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The DeleteCrl method of interface ara::crypto::x509::X509Provider serves to delete a persistently stored certificate revocation list (CRL) [SWS_CRYPT_50184]. The crlInstanceSpecifier is passed as a parameter, referencing a RPortPrototype of a CryptoCertificateInterface that identifies the associated certificate [SWS_CRYPT_50184]. The function operates synchronously and returns a ara::core::Result<void>; this is empty if the CRL was deleted successfully or if no CRL was stored beforehand [SWS_CRYPT_50184].

Error Handling and Concurrency

If a temporary resource conflict occurs during execution, the function reports error ara::crypto::CryptoErrc::kBusyResource with rollback semantics [SWS_CRYPT_50184]. The method is declared as noexcept and specified as exception safe and thread-safe [SWS_CRYPT_50184].

Restrictions and configuration conditions

The following configuration and permission prerequisites apply to the call [SWS_CRYPT_50184]:

  • ProcessMappingViolation: Occurs when InstanceSpecifier does not point to a PortPrototype modeled for the current process that is typed by a CryptoCertificateInterface [SWS_CRYPT_50184].
  • InsufficientPermissionsViolation: Occurs when the current process does not have write permissions, that is, CryptoCertificateToPortPrototypeMapping.writeAccess != True [SWS_CRYPT_50184].

This usage note was generated automatically by an AI based on the AUTOSAR specification.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateInterface modeled for the current process. InsufficientPer- In case the current process does not have write permissions, i.e., missionsViolation CryptoCertificateToPortPrototypeMapping.writeAccess != True

Parameter (in)

ParameterBeschreibung
crlInstanceSpecifierinstance specifier to the RPortPrototype of a CryptoCertificate Interface that identifies the certificate for which the CRL shall be deleted

Rückgabewert

TypBeschreibung
ara::core::Result< void >an empty result if no CRL was stored or if the CRL was successfully deleted, or a result containing an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50184
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50184@rel:R25-11#925229b1
Content hash
925229b1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50184
Status: valid/unmigrated Version: rel:R25-11#925229b1 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_50184@rel:R25-11#925229b1
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 ImportCertificate [SWS_CRYPT_40621] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< void > ImportCertificate (const ara::core::InstanceSpecifier &instanceSpecifier, Certificate::Sptrc certificate) noexcept=0;

Persistently store a certificate in a certificate slot.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: f23066eba231 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The ImportCertificate method of the ara::crypto::x509::X509Provider interface (declared in ara/crypto/x509/x509_provider.h) serves to persistently store an X.509 certificate in a defined certificate slot [SWS_CRYPT_40621]. The target slot is addressed via instanceSpecifier (type ara::core::InstanceSpecifier), while the certificate to be imported is passed via the argument certificate (type Certificate::Sptrc) [SWS_CRYPT_40621]. Interpretation: Execution is likely to be synchronous, as the interface directly returns a ara::core::Result<void> [SWS_CRYPT_40621]. Question Q-514863e9a90f1c72 (open)

Error Handling and Modeling Rules

In case of an error, an erroneous ara::core::Result is returned. If the operation temporarily cannot be executed, the method returns ara::crypto::CryptoErrc::kBusyResource with rollback semantics [SWS_CRYPT_40621]. In addition, configuration and modeling requirements must be satisfied, as runtime violations are reported otherwise [SWS_CRYPT_40621]:

  • ProcessMappingViolation: Is triggered if the instanceSpecifier does not point to a PortPrototype modeled for the current process that is typed by a CryptoCertificateInterface [SWS_CRYPT_40621].
  • InsufficientPermissionsViolation: Occurs when write permission is not present for the current process (CryptoCertificateToPortPrototypeMapping.writeAccess != True) [SWS_CRYPT_40621].

Concurrency and Execution Context

The operation is specified as thread-safe and exception safe (noexcept=0), whereby concurrent calls are safeguarded without external locks [SWS_CRYPT_40621].

This text was generated by an AI and serves as guidance for the AUTOSAR specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateInterface modeled for the current process. InsufficientPer- In case the current process does not have write permissions, i.e., missionsViolation CryptoCertificateToPortPrototypeMapping.writeAccess != True

Parameter (in)

ParameterBeschreibung
instanceSpecifieran InstanceSpecifier identifying a certificate slot
certificatea certificate that should be imported

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40621
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40621@rel:R25-11#c60e824f
Content hash
c60e824f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40621
Status: valid/unmigrated Version: rel:R25-11#512b6299 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_40621@rel:R25-11#512b6299
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#c60e824f2026-09-30
  • R19-11rel:R19-11#66df9bb02026-10-14
  • R20-11rel:R20-11#e902d4782026-10-14
  • R21-11rel:R21-11#ed0fa6be2026-10-14
  • R22-11rel:R22-11#f860cec72026-10-14
  • R23-11rel:R23-11#55f297932026-10-14
  • R24-11rel:R24-11#f3490f622026-10-14
  • R25-11rel:R25-11#512b62992026-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

function ImportCertificateInGroup [SWS_CRYPT_50127] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< void > ImportCertificateInGroup (const ara::core::InstanceSpecifier &instanceSpecifier, Certificate::Sptrc certificate) noexcept=0;

Persistently store a certificate in a certificate group.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 2cbd935cbbae Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method ImportCertificateInGroup of class ara::crypto::x509::X509Provider persistently stores a provided certificate in a certificate group identified via instanceSpecifier [SWS_CRYPT_50127]. A reference to the ara::core::InstanceSpecifier of the target group and a smart pointer to the certificate (Certificate::Sptrc certificate) are passed as parameters [SWS_CRYPT_50127]. The call is declared via the header ara/crypto/x509/x509_provider.h and synchronously returns a ara::core::Result<void>, which signals successful import or encapsulates an error status [SWS_CRYPT_50127].

Error Handling and Violations

In the regular error case, the operation provides rollback semantics and returns specific error codes in the Result object [SWS_CRYPT_50127]:

  • ara::crypto::CryptoErrc::kInsufficientCapacity: The capacity of the addressed certificate group is insufficient to accommodate the certificate [SWS_CRYPT_50127].
  • ara::crypto::CryptoErrc::kBusyResource: The operation cannot be performed temporarily because the required resource is busy [SWS_CRYPT_50127].

Furthermore, mandatory modeling and permission requirements are defined, non-compliance with which is classified as violations [SWS_CRYPT_50127]:

  • ProcessMappingViolation: Occurs when the InstanceSpecifier does not point to a PortPrototype modeled for the current process that is typed by a CryptoCertificateGroupInterface [SWS_CRYPT_50127].
  • InsufficientPermissionsViolation: Occurs when the calling process does not possess write permission, which is characterized by CryptoCertificateGroupToPortPrototypeMapping.writeAccess != True [SWS_CRYPT_50127].

Concurrency and Execution Context

The interface is specified as thread-safe (thread-safe) as well as exception-safe (exception safe) and declared with noexcept [SWS_CRYPT_50127].

This usage note was generated by an AI based on the AUTOSAR R25-11 specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateGroupInterface modeled for the current process. InsufficientPer- In case the current process does not have write permissions, i.e., missionsViolation CryptoCertificateGroupToPortPrototypeMapping.writeAccess != True

Parameter (in)

ParameterBeschreibung
instanceSpecifieran InstanceSpecifier identifying a certificate group
certificatea certificate that should be imported

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInsufficientCapacityrollback_semantics if the capacity of the certificate group is not sufficient to store the certificate
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50127
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50127@rel:R25-11#b5718b48
Content hash
b5718b48
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50127
Status: valid/unmigrated Version: rel:R25-11#b5718b48 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_50127@rel:R25-11#b5718b48
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 ImportCrl [SWS_CRYPT_50183] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< CertificateValidationStatus > ImportCrl (ara::core::InstanceSpecifier crlInstanceSpecifier, ReadOnlyMemRegion crl, FormatId formatId) noexcept=0;

Parse and persist a Certificate Revocation List (CRL) or Delta CRL which is issued by the CA certificate identified by the passed ara::core::InstanceSpecifier.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: b949726f73e5 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method ImportCrl of class ara::crypto::x509::X509Provider parses and persists a Certificate Revocation List (CRL) or Delta CRL issued by the CA certificate identified via crlInstanceSpecifier [SWS_CRYPT_50183]. Execution is expected to occur synchronously, as a ara::core::Result is returned immediately. Question Q-648a00ec967c7524 (open)

Upon invocation, the following parameters are passed [SWS_CRYPT_50183]:

  • crlInstanceSpecifier: ara::core::InstanceSpecifier to the RPortPrototype of a CryptoCertificateInterface identifying the certificate.
  • crl: ReadOnlyMemRegion containing the serialized CRL or Delta CRL data.
  • formatId: Format of the serialized CRL.

The operation is specified as thread-safe as well as exception safe [SWS_CRYPT_50183]. In case of success, it returns a ara::core::Result with the status CertificateValidationStatus::kValid or the validation result of the CRL [SWS_CRYPT_50183].

In case of error, the return values possess rollback semantics [SWS_CRYPT_50183]:

  • ara::crypto::CryptoErrc::kInvalidArgument: The CRL does not conform to the specified format.
  • ara::crypto::CryptoErrc::kUnsupportedFormat: The specified FormatId is unknown or not supported.
  • ara::crypto::CryptoErrc::kBusyResource: The operation cannot be executed temporarily.

Additionally, configuration preconditions must be adhered to [SWS_CRYPT_50183]: A ProcessMappingViolation occurs if the instance identifier does not refer to a port modeled for the current process, and a InsufficientPermissionsViolation if CryptoCertificateToPortPrototypeMapping.writeAccess != True is set.

This usage note was generated automatically and is based on the specifications of the AUTOSAR Adaptive Platform.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateInterface modeled for the current process. InsufficientPer- In case the current process does not have write permissions, i.e., missionsViolation CryptoCertificateToPortPrototypeMapping.writeAccess != True

Parameter (in)

ParameterBeschreibung
crlInstanceSpecifierara::core::InstanceSpecifier to the RPortPrototype of a CryptoCertificateInterface that identifies the certificate for which the CRL shall be imported
crlserialized CRL or Delta CRL
formatIdthe format of the serialized CRL

Rückgabewert

TypBeschreibung
ara::core::Result<CertificateValidationStatus >a result containing kValid if the CRL was added, or the result of the CRL validation, or an error otherwise.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if crl does not conform to the specified format
ara::crypto::CryptoErrc::kUnsupportedFormatrollback_semantics if the specified FormatId is unknown or not supported
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50183
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50183@rel:R25-11#8304d910
Content hash
8304d910
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50183
Status: valid/unmigrated Version: rel:R25-11#8304d910 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_50183@rel:R25-11#8304d910
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 LoadCertificate [SWS_CRYPT_40641] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< Certificate::Sptrc > LoadCertificate (const ara::core::InstanceSpecifier &instanceSpecifier) noexcept=0;

Load a certificate from the persistent certificate storage.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 84a69aeba7b5 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The LoadCertificate method of the ara::crypto::x509::X509Provider interface serves to load a certificate from persistent certificate storage [SWS_CRYPT_40641]. The call is executed synchronously (interpretation: direct return of ara::core::Result without an asynchronous future object such as ara::core::Future). Question Q-a2e3c23a02b4f8a1 (open) As an input parameter, the function expects an ara::core::InstanceSpecifier that identifies the specific storage location of the certificate [SWS_CRYPT_40641].

Upon successful execution, the return value encapsulates a smart pointer to the instantiated certificate (Certificate::Sptrc) in a ara::core::Result [SWS_CRYPT_40641]. If loading fails, the result contains an error code:

  • ara::crypto::CryptoErrc::kEmptyCertificateSlot: Occurs with rollback semantics if the CryptoCertificate identified by the specified instanceSpecifier does not contain a persisted certificate [SWS_CRYPT_40641].

With regard to concurrency and exception safety, LoadCertificate is specified as thread-safe as well as exception-safe and declared as noexcept [SWS_CRYPT_40641]. During configuration and process assignment, a modeling condition must be observed: If the passed instanceSpecifier does not refer to a PortPrototype modeled for the current process that is typed by a CryptoCertificateInterface, an ProcessMappingViolation is present [SWS_CRYPT_40641].

This text was generated by an AI; it does not replace studying the official AUTOSAR specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateInterface modeled for the current process.

Parameter (in)

ParameterBeschreibung
instanceSpecifierAn ara::core::InstanceSpecifier identifying a storage location of a certificate.

Rückgabewert

TypBeschreibung
ara::core::Result<Certificate::Sptrc >an Smart pointer to the instantiated certificate

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kEmptyCertificateSlotrollback_semantics The CryptoCertificate identified by the provided InstanceSpecifier does not contain a persisted Certificate

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40641
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40641@rel:R25-11#94627f00
Content hash
94627f00
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40641
Status: valid/unmigrated Version: rel:R25-11#3e5e929d Versionshistorie & Revisions (1 transition, 7 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_40641@rel:R25-11#3e5e929d
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#94627f002026-09-30
  • R20-11rel:R20-11#f6a245932026-10-14
  • R21-11rel:R21-11#08172d492026-10-14
  • R22-11rel:R22-11#ac029e1a2026-10-14
  • R23-11rel:R23-11#484d2a182026-10-14
  • R24-11rel:R24-11#38d686ab2026-10-14
  • R25-11rel:R25-11#3e5e929d2026-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

function LoadCertificateGroup [SWS_CRYPT_50126] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > LoadCertificateGroup (const ara::core::InstanceSpecifier &instance Specifier) noexcept=0;

Load a group of certificates from the persistent certificate storage.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: b9c11fbc2aed Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method ara::crypto::x509::X509Provider::LoadCertificateGroup serves to load a group of certificates from persistent certificate storage according to [SWS_CRYPT_50126].

Usage and Call Context

The call is made via an instance of X509Provider from the header ara/crypto/x509/x509_provider.h. As input parameter, the function expects an instanceSpecifier of type const ara::core::InstanceSpecifier&, which identifies the logical storage location of the desired certificate group [SWS_CRYPT_50126]. As a result, the interface returns a ara::core::Result<ara::core::Vector<Certificate::Sptrc>>, which in case of success provides a vector of smart pointers to the loaded certificates [SWS_CRYPT_50126]. In the absence of asynchronous return types such as ara::core::Future, access to persistent storage is expected to be synchronous blocking. Question Q-b743367ccc9904ab (open)

Error Handling and Modeling Constraints

In the specification, no standardized error codes are defined for the return value [SWS_CRYPT_50126]. However, a runtime check is prescribed: If the passed instanceSpecifier does not refer to a PortPrototype modeled for the current process that is typed by a CryptoCertificateGroupInterface, a ProcessMappingViolation is present [SWS_CRYPT_50126].

Concurrency and Exception Safety

The pure virtual method is annotated with noexcept and specified as exception safe (exception safe). In addition, the call is explicitly declared as thread-safe (thread-safe), so that concurrent read accesses from multiple threads are harmless [SWS_CRYPT_50126].

This text was created by an AI and is based on AUTOSAR R25-11.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateGroupInterface modeled for the current process.

Parameter (in)

ParameterBeschreibung
instanceSpecifierAn instance specifier identifying a storage location of a certificate group.

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::Vector<Certificate::Sptrc > >a vector containing the certificates stored in the certificate group.

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_50126
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50126@rel:R25-11#1708c4f4
Content hash
1708c4f4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50126
Status: valid/unmigrated Version: rel:R25-11#1708c4f4 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_50126@rel:R25-11#1708c4f4
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 ParseCert [SWS_CRYPT_40614] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< Certificate::Sptrc > ParseCert (ReadOnlyMem Region cert, FormatId formatId) noexcept=0;

Parse a serialized representation of an X.509v3 certificate and create a certificate object.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 6e6cff229e6f Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method ParseCert is part of class ara::crypto::x509::X509Provider (defined in header ara/crypto/x509/x509_provider.h) and serves to parse a serialized representation of an X.509v3 certificate and instantiate a corresponding certificate object [SWS_CRYPT_40614].

Call and parameters: The function is called synchronously and is specified as noexcept [SWS_CRYPT_40614]. It accepts two input parameters:

  • cert: A memory region of type ReadOnlyMemRegion that provides the certificate data encoded in the specified format [SWS_CRYPT_40614].
  • formatId: The identifier of the input format for determining the parsing procedure [SWS_CRYPT_40614].

Return value and error handling: The result is returned as ara::core::Result<Certificate::Sptrc>, which in case of success contains a shared pointer to the created certificate object [SWS_CRYPT_40614]. If an error occurs, rollback semantics apply with the following specific error codes [SWS_CRYPT_40614]:

  • ara::crypto::CryptoErrc::kInvalidArgument: The argument cert cannot be parsed as a valid certificate [SWS_CRYPT_40614].
  • ara::crypto::CryptoErrc::kUnsupportedFormat: The specified formatId is unknown or not supported [SWS_CRYPT_40614].

Concurrency and implementation: The interface is explicitly specified as exception-safe (exception safe) and thread-safe (thread-safe) [SWS_CRYPT_40614]. Since ParseCert is declared pure virtual, the actual parsing logic is likely provided by a platform-specific crypto driver or provider [SWS_CRYPT_40614]. Question Q-d3239d62d2e7d831 (open)

This usage note was curated by an AI and is based on the AUTOSAR Adaptive R25-11 specification.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
certcertificate encoded in the given format
formatIdinput format identifier

Rückgabewert

TypBeschreibung
ara::core::Result<Certificate::Sptrc >A result containing either the parsed certificate or an error.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if the cert argument cannot be parsed
ara::crypto::CryptoErrc::kUnsupportedFormatrollback_semantics if the specified FormatId is unknown or not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40614
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40614@rel:R25-11#f8a4d6b9
Content hash
f8a4d6b9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40614
Status: valid/unmigrated Version: rel:R25-11#a0375fd1 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_40614@rel:R25-11#a0375fd1
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f8a4d6b92026-09-30
  • R19-11rel:R19-11#9e0555992026-10-14
  • R20-11rel:R20-11#6667ce072026-10-14
  • R21-11rel:R21-11#dbc78a3c2026-10-14
  • R22-11rel:R22-11#49d5e95f2026-10-14
  • R23-11rel:R23-11#246cb3d52026-10-14
  • R24-11rel:R24-11#1fdcfb692026-10-14
  • R25-11rel:R25-11#a0375fd12026-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

function ParseCertChain [SWS_CRYPT_40616] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > ParseCertChain (ReadOnlyMemRegion certChain, FormatId formatId) noexcept=0;

Parse a serialized representation of a certificate chain, creating a new Certificate instance for each parsed certificate. Certificates in the returned vector will be placed in the same order as provided in certChain.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: f7a9ecb9b926 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method ParseCertChain of interface ara::crypto::x509::X509Provider from header ara/crypto/x509/x509_provider.h parses a serialized representation of a certificate chain [SWS_CRYPT_40616]. As parameters, it accepts the memory region of the encoded certificate chain certChain as ReadOnlyMemRegion and the format identifier formatId of type FormatId [SWS_CRYPT_40616]. For each successfully parsed certificate, a new Certificate instance is created. In case of success, the synchronous function returns a ara::core::Result with a ara::core::Vector<Certificate::Sptrc>, in which the certificates are arranged in the same order as in the passed chain [SWS_CRYPT_40616].

Error handling

In case of an error, the returned ara::core::Result contains a specific error code with rollback semantics [SWS_CRYPT_40616]:

  • ara::crypto::CryptoErrc::kInvalidArgument: The argument certChain cannot be parsed [SWS_CRYPT_40616].
  • ara::crypto::CryptoErrc::kUnsupportedFormat: The specified identifier formatId is unknown or not supported [SWS_CRYPT_40616].

Concurrency and Constraints

The method is declared as noexcept, specified as thread-safe (thread-safe), and ensures exception safety (exception safe) [SWS_CRYPT_40616].

This usage note was created automatically based on the specification of AUTOSAR Adaptive R25-11.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
certChaincertificate chain encoded in the given format
formatIdinput format identifier

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::Vector<Certificate::Sptrc > >A result containing either the vector of certificates or an error.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if the certChain argument cannot be parsed
ara::crypto::CryptoErrc::kUnsupportedFormatrollback_semantics if the specified FormatId is unknown or not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40616
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40616@rel:R25-11#ec35b0c5
Content hash
ec35b0c5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40616
Status: valid/unmigrated Version: rel:R25-11#a4d81c6b 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_40616@rel:R25-11#a4d81c6b
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ec35b0c52026-09-30
  • R19-11rel:R19-11#5bda10c72026-10-14
  • R20-11rel:R20-11#b056b6bd2026-10-14
  • R21-11rel:R21-11#57527f702026-10-14
  • R22-11rel:R22-11#0f12bbca2026-10-14
  • R23-11rel:R23-11#f0b325b82026-10-14
  • R24-11rel:R24-11#88f50d562026-10-14
  • R25-11rel:R25-11#a4d81c6b2026-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

function ParseOcspResponse [SWS_CRYPT_50185] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< OcspResponse::Sptrc > ParseOcspResponse (ReadOnlyMemRegion response, FormatId formatId) const noexcept=0;

Parse serialized OCSP response.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 2f25210e0a2c Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Usage and Call Context

The synchronous method ParseOcspResponse is part of the interface ara::crypto::x509::X509Provider (defined in ara/crypto/x509/x509_provider.h) and serves for reading in and parsing serialized OCSP responses [SWS_CRYPT_50185]. The caller passes the raw data of the response as ReadOnlyMemRegion via the parameter response and the expected data format by means of formatId of type FormatId [SWS_CRYPT_50185]. Upon successful validation and processing, the function returns a ara::core::Result encapsulating a smart pointer OcspResponse::Sptrc to the newly created OCSP response object [SWS_CRYPT_50185].

Error handling

Error cases are signaled without throwing exceptions via the return type ara::core::Result with rollback semantics [SWS_CRYPT_50185]:

  • ara::crypto::CryptoErrc::kInvalidArgument: Occurs if the bytes provided in the buffer response cannot be parsed as a valid OCSP response [SWS_CRYPT_50185].
  • ara::crypto::CryptoErrc::kUnsupportedFormat: Reported if the passed identifier formatId is unknown or not supported by the provider [SWS_CRYPT_50185].

Concurrency and Thread Safety

The pure virtual method is declared as noexcept, classified as exception safe (exception safe), and explicitly specified as thread-safe (thread-safe) [SWS_CRYPT_50185]. Thanks to the const declaration, ParseOcspResponse can be called concurrently on the same provider instance in multithreading environments without modifying the internal state of the object [SWS_CRYPT_50185].

This text was generated by an AI based on the AUTOSAR specification R25-11.

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

Parameter (in)

ParameterBeschreibung
responsea serialized OCSP response
formatIdthe format of the serialized OCSP response

Rückgabewert

TypBeschreibung
ara::core::Result< OcspResponse::Sptrc >Smart pointer to the created OCSP response instance

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kInvalidArgumentrollback_semantics if the response argument cannot be parsed
ara::crypto::CryptoErrc::kUnsupportedFormatrollback_semantics if the specified FormatId is unknown or not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50185
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50185@rel:R25-11#a8464cf9
Content hash
a8464cf9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50185
Status: valid/unmigrated Version: rel:R25-11#a8464cf9 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_50185@rel:R25-11#a8464cf9
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 RemoveCertificateFromGroup [SWS_CRYPT_50128] Upstream: RS_CRYPTO_02306

virtual ara::core::Result< void > RemoveCertificateFromGroup (const ara::core::InstanceSpecifier &instanceSpecifier, Certificate::Sptrc certificate) noexcept=0;

Remove a certificate from a certificate group.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 6047b8eed140 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The synchronous interface method RemoveCertificateFromGroup from the scope ara::crypto::x509::X509Provider serves to specifically remove a certificate from an existing certificate group [SWS_CRYPT_50128]. The relevant certificate group is identified via the parameter instanceSpecifier, while certificate provides the certificate to be removed as a smart pointer (Certificate::Sptrc) [SWS_CRYPT_50128]. The call returns a ara::core::Result<void>, which acknowledges successful completion without a return value or encapsulates an error that occurred [SWS_CRYPT_50128].

Error handling

If an error occurs during execution, defined rollback semantics take effect so that the state of the certificate group remains unchanged [SWS_CRYPT_50128]. The following error codes are specified:

  • ara::crypto::CryptoErrc::kNoSuchValue: The specified certificate group does not contain the certificate to be removed [SWS_CRYPT_50128].
  • ara::crypto::CryptoErrc::kBusyResource: The operation cannot be performed temporarily because required resources are busy [SWS_CRYPT_50128].

Concurrency and Configuration Constraints

The method is specified as thread-safe and exception safe as well as declared with noexcept [SWS_CRYPT_50128]. Before the call, the following prerequisites must mandatorily be met for the process in the system model [SWS_CRYPT_50128]:

  • To avoid a ProcessMappingViolation, the passed InstanceSpecifier must point to a PortPrototype that is typed by a CryptoCertificateGroupInterface modeled for the current process [SWS_CRYPT_50128].
  • To avoid a InsufficientPermissionsViolation, the current process must have write permissions, which means that CryptoCertificateGroupToPortPrototypeMapping.writeAccess must be configured to True [SWS_CRYPT_50128].

This text was generated by an AI based on the AUTOSAR specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)ProcessMappingVio- In case InstanceSpecifier does not point to a PortPrototype typed lation by a CryptoCertificateGroupInterface modeled for the current process. InsufficientPer- In case the current process does not have write permissions, i.e., missionsViolation CryptoCertificateGroupToPortPrototypeMapping.writeAccess != True

Parameter (in)

ParameterBeschreibung
instanceSpecifieran InstanceSpecifier identifying a certificate group
certificatea certificate that should be removed from the certificate group

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kNoSuchValuerollback_semantics if the certificate group does not contain the certificate to be removed
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics if the operation temporarily cannot be performed

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50128
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50128@rel:R25-11#c929d5da
Content hash
c929d5da
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50128
Status: valid/unmigrated Version: rel:R25-11#c929d5da 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_50128@rel:R25-11#c929d5da
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 X509Provider [SWS_CRYPT_41013] Upstream: RS_CRYPTO_02004

X509Provider (const X509Provider &)=delete;

Copy-Constructor.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider

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

Record
AUTOSAR/AP/record/SWS_CRYPT_41013
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_41013@rel:R25-11#9c2705c6
Content hash
9c2705c6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_41013
Status: valid/unmigrated Version: rel:R25-11#a59769dd Versionshistorie & Revisions (1 transition, 4 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_41013@rel:R25-11#a59769dd
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#9c2705c62026-09-30
  • R23-11rel:R23-11#efcf94072026-10-14
  • R24-11rel:R24-11#a59769dd2026-10-14
  • R25-11rel:R25-11#a59769dd2026-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

function X509Provider [SWS_CRYPT_41014] Upstream: RS_CRYPTO_02004

X509Provider (X509Provider &&)=delete;

Move-Constructor.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider

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

Record
AUTOSAR/AP/record/SWS_CRYPT_41014
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_41014@rel:R25-11#fdd5b9a7
Content hash
fdd5b9a7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_41014
Status: valid/unmigrated Version: rel:R25-11#5b6536a0 Versionshistorie & Revisions (1 transition, 4 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_41014@rel:R25-11#5b6536a0
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#fdd5b9a72026-09-30
  • R23-11rel:R23-11#d7191e3b2026-10-14
  • R24-11rel:R24-11#5b6536a02026-10-14
  • R25-11rel:R25-11#5b6536a02026-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

function operator= [SWS_CRYPT_30226] Upstream: RS_CRYPTO_02004

X509Provider & operator= (const X509Provider &other)=delete;

Copy-assign another X509Provider to this instance.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider

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

Record
AUTOSAR/AP/record/SWS_CRYPT_30226
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_30226@rel:R25-11#aae6547a
Content hash
aae6547a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_30226
Status: valid/unmigrated Version: rel:R25-11#12d2e41d Versionshistorie & Revisions (1 transition, 7 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_30226@rel:R25-11#12d2e41d
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#aae6547a2026-09-30
  • R20-11rel:R20-11#563473892026-10-14
  • R21-11rel:R21-11#563473892026-10-14
  • R22-11rel:R22-11#12450a782026-10-14
  • R23-11rel:R23-11#f0fbd67b2026-10-14
  • R24-11rel:R24-11#12d2e41d2026-10-14
  • R25-11rel:R25-11#12d2e41d2026-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

function operator= [SWS_CRYPT_30227] Upstream: RS_CRYPTO_02004

X509Provider & operator= (X509Provider &&other)=delete;

Move-assign another X509Provider to this instance.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider

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

Record
AUTOSAR/AP/record/SWS_CRYPT_30227
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_30227@rel:R25-11#2b134e52
Content hash
2b134e52
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_30227
Status: valid/unmigrated Version: rel:R25-11#ff5ab280 Versionshistorie & Revisions (1 transition, 7 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_30227@rel:R25-11#ff5ab280
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#2b134e522026-09-30
  • R20-11rel:R20-11#dd07e2212026-10-14
  • R21-11rel:R21-11#dd07e2212026-10-14
  • R22-11rel:R22-11#b03c080d2026-10-14
  • R23-11rel:R23-11#64256a592026-10-14
  • R24-11rel:R24-11#ff5ab2802026-10-14
  • R25-11rel:R25-11#ff5ab2802026-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

function ~X509Provider [SWS_CRYPT_40604] Upstream: RS_CRYPTO_02306

virtual ~X509Provider () noexcept=default;

Destructor.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40604
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40604@rel:R25-11#1b8a4c3c
Content hash
1b8a4c3c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40604
Status: valid/unmigrated Version: rel:R25-11#c0e827a2 Versionshistorie & Revisions (1 transition, 7 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_40604@rel:R25-11#c0e827a2
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#1b8a4c3c2026-09-30
  • R20-11rel:R20-11#b5e2a64e2026-10-14
  • R21-11rel:R21-11#eda85ff32026-10-14
  • R22-11rel:R22-11#402ee9402026-10-14
  • R23-11rel:R23-11#d51406d72026-10-14
  • R24-11rel:R24-11#e1f88ed22026-10-14
  • R25-11rel:R25-11#c0e827a22026-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

Type alias documentation

type alias Sptr [SWS_CRYPT_40601] Upstream: RS_CRYPTO_02306

using Sptr = std::shared_ptr<X509Provider>;

Smart pointer of the interface.

Header-Datei#include "ara/crypto/x509/x509_provider.h"
Scopeclass ara::crypto::x509::X509Provider
SymbolSptr

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

Record
AUTOSAR/AP/record/SWS_CRYPT_40601
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_40601@rel:R25-11#f92a0a2d
Content hash
f92a0a2d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_40601
Status: valid/unmigrated Version: rel:R25-11#668083df 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_40601@rel:R25-11#668083df
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f92a0a2d2026-09-30
  • R19-11rel:R19-11#82ff42682026-10-14
  • R20-11rel:R20-11#4c14c58b2026-10-14
  • R21-11rel:R21-11#4c14c58b2026-10-14
  • R22-11rel:R22-11#e631eabf2026-10-14
  • R23-11rel:R23-11#ebbb281a2026-10-14
  • R24-11rel:R24-11#ebbb281a2026-10-14
  • R25-11rel:R25-11#668083df2026-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