DEENESPTFRRUARHIKOZHNL

класс ara::crypto::x509::CertificateValidationResult

[SWS_CRYPT_50179] Upstream: RS_CRYPTO_02306

class CertificateValidationResult {...};

X.509 Certificate Validation Result.

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

Руководство пользователяСОЗДАНО ИИ

Предоставляет результаты проверок сертификатов X.509 со статусом, найденной цепочкой сертификатов и вызвавшим ошибку сертификатом.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 1ece3477b66c Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Предоставляет результаты проверок сертификатов X.509 со статусом, найденной цепочкой сертификатов и вызвавшим ошибку сертификатом.

Интерфейс ara::crypto::x509::CertificateValidationResult предоставляет результат валидации сертификата X.509 и обычно управляется как неизменяемый Sptrc [SWS_CRYPT_50093]. Через его методы приложение запрашивает общий статус, определяет полную цепочку сертификатов с конечным сертификатом в позиции 0 или изолирует сертификат, вызвавший сбой. Если проверка прошла успешно, вызов для определения ошибочного сертификата завершается сбоем с кодом ошибки ara::crypto::CryptoErrc::kNoSuchValue [SWS_CRYPT_50095]. При этом все методы интерфейса спроектированы как потокобезопасные и исключение-безопасные.

Контекст

Интерфейс ara::crypto::x509::CertificateValidationResult инкапсулирует результат операции валидации сертификата X.509 в рамках модуля Adaptive crypto. Его основная обязанность заключается в предоставлении вызывающим приложениям структурированного и согласованного результата проверки. Он охватывает как агрегированный статус валидации пути сертификации, так и доступ к задействованным объектам сертификатов. Выступая посредником между внутренними механизмами криптографической верификации и критически важными для безопасности приложениями, класс обеспечивает дифференцированный анализ иерархий сертификатов. В число его ключевых партнеров по взаимодействию входят экземпляры Certificate::Sptrc, которые либо формируются в виде полной цепочки сертификатов, либо в случае ошибки указываются в качестве причины сбоя.

Жизненный цикл

Будучи чисто виртуальным интерфейсом, CertificateValidationResult не определяет собственных открытых конструкторов. Время жизни и отношения владения в значительной степени управляются типизированным умным указателем Sptrc, который определен как std::shared_ptr<const CertificateValidationResult> [SWS_CRYPT_50093]. Этот константный указатель реализует разделяемую неизменяемую модель владения: после завершения валидации сертификата результирующий объект предоставляется в виде немодифицируемого снимка состояния. Создание и инициализация конкретных экземпляров, по всей видимости, осуществляются внутри высокоуровневыми функциями валидации бэкенда платформы. Вопрос Q-a5580dcf443b0905 (открытый) Поскольку все функции-члены объявлены как const, а также noexcept и явно специфицированы как потокобезопасные и исключение-безопасные ([SWS_CRYPT_50094], [SWS_CRYPT_50095], [SWS_CRYPT_50096]), несколько потоков могут обращаться к одному и тому же экземпляру параллельно и без дополнительных мер синхронизации до тех пор, пока не будет освобождена последняя ссылка.

Путь использования

Типичный сценарий использования начинается после получения экземпляра CertificateValidationResult::Sptrc из предшествующей проверки сертификата. Вызывающие компоненты выполняют оценку в стандартизированной последовательности:

  • Сначала приложение вызывает GetValidationStatus(), чтобы запросить базовый результат валидации сертификата в виде CertificateValidationStatus [SWS_CRYPT_50094].
  • Если валидация прошла успешно, клиент вызывает GetCertificateChain() для получения цепочки сертификатов, найденной в процессе проверки, в виде ara::core::Vector<Certificate::Sptrc> [SWS_CRYPT_50096]. Согласно спецификации, эта цепочка на позиции индекса 0 всегда начинается с конечного сертификата (Leaf Certificate) [SWS_CRYPT_50096].
  • Если же валидация пути завершилась сбоем, вызывающий компонент вызывает GetFailedCertificate() для целенаправленного определения того сертификата, который вызвал ошибку валидации [SWS_CRYPT_50095].
Запрос результата валидацииПриложениеCertificateValidationResultGetValidationStatus()Result<CertificateValidationStatus>altValidierung erfolgreich (kValid)GetCertificateChain()Result<Vector<Certificate::Sptrc>>Validierung fehlgeschlagenGetFailedCertificate()Result<Certificate::Sptrc>

Диаграмма последовательности: типичный процесс запроса статуса валидации, цепочки сертификатов и причины ошибки. Источники: [SWS_CRYPT_50094], [SWS_CRYPT_50095], [SWS_CRYPT_50096]

Сценарии ошибок

Управление ошибками интерфейса опирается на ara::core::Result, при этом все вызовы соблюдают гарантию noexcept и являются исключение-безопасными:

  • Успешная валидация и GetFailedCertificate(): если проверка завершилась успешно (возвращаемое значение kValid), ни один сертификат не вызвал сбоя. В этом состоянии вызов GetFailedCertificate() завершается сбоем с кодом ошибки ara::crypto::CryptoErrc::kNoSuchValue [SWS_CRYPT_50095]. Приложения должны интерпретировать эту ошибку как логическое подтверждение безошибочной цепочки или привязывать вызов к отрицательному статусу.
  • Специфичные для реализации ошибки статуса: для GetValidationStatus() не определены стандартизированные коды ошибок, однако ошибки реализации инкапсулируются в возвращаемом ara::core::Result [SWS_CRYPT_50094].
  • Запрос цепочки сертификатов: GetCertificateChain() также не специфицирует стандартизированных кодов ошибок [SWS_CRYPT_50096]; возможные внутренние состояния ошибок сигнализируются через результирующий ara::core::Result.

Настоящее руководство основано исключительно на спецификации AUTOSAR Adaptive для модуля crypto в релизе R25-11.

Карта членов

Псевдонимы типов

1

Диаграмма классов

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

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

Подробный вид

Выберите элемент в оглавлении.

Методы

GetCertificateChain функция

Get the certificate chain found during certificate validation.

virtual ara::core::Result< ara::core::Vector< Certificate::Sptrc > > GetCertificateChain () const noexcept=0;
GetFailedCertificate функция

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

virtual ara::core::Result< Certificate::Sptrc > GetFailedCertificate () const noexcept=0;
GetValidationStatus функция

Get the result of the certificate validation.

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

Псевдонимы типов

Sptrc псевдоним типа

Smart pointer of the interface.

Документация методов

функция GetCertificateChain [SWS_CRYPT_50096] Upstream: RS_CRYPTO_02306

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

Get the certificate chain found during certificate validation.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: dd73a4abf162 Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Метод GetCertificateChain класса ara::crypto::x509::CertificateValidationResult предоставляется через заголовочный файл #include "ara/crypto/x509/certificate_validation_result.h" [SWS_CRYPT_50096]. Он служит для того, чтобы синхронно получить цепочку сертификатов, найденную в процессе валидации сертификата [SWS_CRYPT_50096].

Интерфейс не ожидает параметров и синхронно возвращает ara::core::Result<ara::core::Vector<Certificate::Sptrc>> [SWS_CRYPT_50096]. Результирующий вектор содержит умные указатели на сертификаты проверенной цепочки, начиная с конечного сертификата в позиции индекса 0 [SWS_CRYPT_50096].

Обработка ошибок

Для этой функции стандартизированные ошибки не специфицированы [SWS_CRYPT_50096]. Интерпретация: поскольку возвращаемое значение тем не менее типизировано как ara::core::Result, возникающие случаи ошибок, вероятно, связаны исключительно со специфичными для поставщика деталями реализации. Вопрос Q-967fe725a5505c11 (открытый)

Параллелизм и ограничения

Метод объявлен как чистая виртуальная функция, обозначен как const, а также noexcept и явно специфицирован как thread-safe и exception safe [SWS_CRYPT_50096]. Параллельные вызовы на одном и том же экземпляре тем самым безопасно возможны без внешней синхронизации.

Взаимодействие

Функция удовлетворяет вышестоящему требованию [RS_CRYPTO_02306] в модуле crypt Adaptive Platform [SWS_CRYPT_50096].

Этот текст был сгенерирован системой ИИ на основе спецификации AUTOSAR R25-11.

Руководство разработчика реализации в подготовке (сложность I1)

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

Rückgabewert

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

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

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

функция GetFailedCertificate [SWS_CRYPT_50095] Upstream: RS_CRYPTO_02306

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

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

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 416a503d8d3e Происхождение
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Синхронный метод интерфейса GetFailedCertificate класса ara::crypto::x509::CertificateValidationResult служит для целенаправленного получения того сертификата, который вызвал сбой валидации пути сертификации [SWS_CRYPT_50095]. Функция доступна через заголовочный файл ara/crypto/x509/certificate_validation_result.h и вызывается без входных параметров [SWS_CRYPT_50095]. В качестве возвращаемого значения она предоставляет объект Result типа ara::core::Result<Certificate::Sptrc>, который в случае успеха инкапсулирует умный указатель на вызвавший ошибку сертификат [SWS_CRYPT_50095].

Обработка ошибок

Если же предшествующая валидация пути сертификации была успешной (результат kValid), следовательно, ни один сертификат не привел к ошибке валидации [SWS_CRYPT_50095]. В этой ситуации GetFailedCertificate сообщает об ошибке и возвращает в объекте Result специфический код ошибки ara::crypto::CryptoErrc::kNoSuchValue с задокументированной семантикой отката [SWS_CRYPT_50095]. Поэтому вызывающие компоненты перед обращением к указателю на сертификат обязательно должны проверять, содержит ли ara::core::Result код ошибки, чтобы предотвратить некорректный доступ.

Параллелизм и ограничения

Функция-член объявлена как чистая операция запроса с модификаторами const и noexcept [SWS_CRYPT_50095]. Согласно требованиям спецификации, она реализована полностью безисключительной (exception safe) и потокобезопасной (thread-safe) [SWS_CRYPT_50095]. Поэтому метод можно безопасно и без дополнительных мер синхронизации вызывать параллельно из нескольких потоков.

Этот текст был создан ИИ и основан на спецификации AUTOSAR R25-11.

Руководство разработчика реализации в подготовке (сложность I1)

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

Rückgabewert

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

Fehler

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

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

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

функция GetValidationStatus [SWS_CRYPT_50094] Upstream: RS_CRYPTO_02306

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

Get the result of the certificate validation.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 6c769a28da81 Происхождение
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Метод GetValidationStatus служит для синхронного получения результата валидации проверки сертификата [SWS_CRYPT_50094]. Он объявлен как чисто виртуальная константная функция-член интерфейса ara::crypto::x509::CertificateValidationResult и подключен через заголовочный файл ara/crypto/x509/certificate_validation_result.h [SWS_CRYPT_50094]. Функция не принимает входных параметров и возвращает ara::core::Result<CertificateValidationStatus>, инкапсулирующее в случае успеха статус валидации сертификата [SWS_CRYPT_50094].

Обработка ошибок

Для GetValidationStatus стандартизированные коды ошибок не предусмотрены [SWS_CRYPT_50094]. Если анализ или определение статуса завершается неудачно, возвращаемое ara::core::Result вместо этого содержит код ошибки, специфичный для реализации [SWS_CRYPT_50094]. Поэтому вызывающие компоненты всегда должны проверять объект Result на наличие состояний ошибки, прежде чем обращаться к фактическому значению статуса.

Параллелизм и ограничения

Операция специфицирована как noexcept, а также явно как потокобезопасная (thread-safe) и безисключительная (exception safe) [SWS_CRYPT_50094]. Таким образом, ее можно безопасно вызывать параллельно из разных потоков на одном и том же экземпляре без необходимости в дополнительных механизмах синхронизации.

Это указание по использованию было автоматически сгенерировано на основе спецификации AUTOSAR Adaptive R25-11.

Руководство разработчика реализации в подготовке (сложность I2)

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

Rückgabewert

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

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

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

Документация псевдонимов типов

псевдоним типа Sptrc [SWS_CRYPT_50093] Upstream: RS_CRYPTO_02306

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

Smart pointer of the interface.

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

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

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