DEENESPTFRRUARHIKOZHNL

класс ara::crypto::cryp::WriteableKeySlot

[SWS_CRYPT_50166] Upstream: RS_CRYPTO_02405

class WriteableKeySlot :             public KeySlot {...};

WriteableKeySlot interface representing a writeable storage location for a key in a Crypto Provider.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::cryp
Basisklasse(n)KeySlot

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

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

Служит доступным для записи интерфейсом для управления и безопасного удаления ключей в CryptoProvider.

Интерфейс ara::crypto::cryp::WriteableKeySlot служит в AUTOSAR Adaptive доступной для записи абстракцией для мест хранения ключей в CryptoProvider. Экземпляры не могут быть скопированы или перемещены ([SWS_CRYPT_50170], [SWS_CRYPT_50168]), а адресуются через тип умного указателя Sptr [SWS_CRYPT_50172]. С помощью потокобезопасного метода Clear() содержимое ключевого слота очищается, причем в случае таких ошибок, как kBusyResource или kUnsupported, применяется семантика отката [SWS_CRYPT_30405].

Контекст

Интерфейс ara::crypto::cryp::WriteableKeySlot определяет в AUTOSAR Adaptive Platform доступное для записи место хранения криптографических ключей в контексте CryptoProvider. Он напрямую наследуется от базового интерфейса KeySlot и представляет собой стандартизированную абстракцию для целенаправленной очистки управляемых ключевых слотов и контроля их жизненного цикла. В качестве ключевых участников взаимодействия выступают приложения криптографического стека в роли потребителей, а также конкретный CryptoProvider, управляющий привязкой к физическому или логическому хранилищу ключей. При этом создание конкретных экземпляров, вероятно, осуществляется с помощью вышестоящих фабричных методов или методов провайдера, поскольку интерфейс функционирует как чисто абстрактный базовый класс. Вопрос Q-5c3b13bb35c3ff53 (открытый)

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

Модель ресурсов и владения ara::crypto::cryp::WriteableKeySlot строго запрещает дублирование ссылок на ключи через семантику значений. С этой целью как конструктор копирования [SWS_CRYPT_50170], так и конструктор перемещения [SWS_CRYPT_50171] явно удалены (=delete). Точно так же удаленные объявления оператора присваивания копированием [SWS_CRYPT_50168] и оператора присваивания перемещением [SWS_CRYPT_50169] исключают любое последующее присваивание.

Передача по ссылке и совместное управление вместо этого осуществляются через определенный псевдоним типа умного указателя Sptr, выраженный как std::shared_ptr<WriteableKeySlot> [SWS_CRYPT_50172]. Уничтожение экземпляра защищено виртуальным деструктором по умолчанию, который специфицирован как безопасный относительно исключений (exception safe) и не генерирует исключений (noexcept=default) [SWS_CRYPT_50167]. Это обеспечивает безопасное полиморфное освобождение через указатели на интерфейс. С точки зрения состояния слот может быть занят или пуст. Заполнение слота, вероятно, происходит через отдельные интерфейсы CryptoProvider, тогда как очистка реализуется через потокобезопасный метод Clear() [SWS_CRYPT_30405]. Вопрос Q-72dfcb17eb3e2d25 (открытый)

keyslot_zustand Leer Leer Leer->Leer Clear() [уже пуст] Leer->Leer Clear() [kBusyResource / kUnsupported] Belegt Belegt Belegt->Leer Clear() [Erfolg] Belegt->Belegt Clear() [kBusyResource / kUnsupported]

Диаграмма состояний: переходы состояний содержимого ключа посредством Clear() и обработка ошибок. Источники: [SWS_CRYPT_30405]

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

Основной путь использования сосредоточен на контролируемом сбросе или удалении сохраненного ключевого материала:

  • Получение ссылки: вызывающая сторона обращается к экземпляру через общий указатель типа WriteableKeySlot::Sptr [SWS_CRYPT_50172].
  • Вызов удаления: путем вызова чисто виртуального метода Clear() запускается операция удаления для текущего содержимого ключевого слота [SWS_CRYPT_30405]. Поскольку метод является потокобезопасным, вызов может происходить и в параллельных контекстах [SWS_CRYPT_30405].
  • Проверка результата: операция возвращает ara::core::Result<void> [SWS_CRYPT_30405]. Если ключевой слот уже был пуст ранее или содержимое было удалено без ошибок, результат представляет успешное состояние с пустым значением [SWS_CRYPT_30405].

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

Метод Clear() объявлен как безопасный относительно исключений и noexcept; ошибочные ситуации передаются согласно модели ошибок AUTOSAR Adaptive через ara::core::Result [SWS_CRYPT_30405]. Возможные коды ошибок включают:

  • ara::crypto::CryptoErrc::kUnsupported: возникает, если конкретная реализация ключевого слота не поддерживает удаление [SWS_CRYPT_30405]. Для этого случая интерфейс гарантирует семантику отката, благодаря чему состояние остается неизменным [SWS_CRYPT_30405].
  • ara::crypto::CryptoErrc::kBusyResource: возвращается, если операция удаления временно не может быть выполнена [SWS_CRYPT_30405]. Обычно это вызывается конкурирующим доступом к аппаратно привязанным ресурсам памяти. Вопрос (открытый) В этом случае семантика отката также гарантирует отсутствие частичных изменений [SWS_CRYPT_30405].

Это руководство основано на спецификации AUTOSAR Adaptive R25-11 для модуля crypto и было сформировано автоматически.

Карта членов

Конструкторы и деструктор

2

Методы

1

Операторы

1

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

1

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

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

G nara__crypto__cryp__WriteableKeySlot529 WriteableKeySlot + WriteableKeySlot() + operator=() + ~WriteableKeySlot() + Clear() nara__crypto__cryp__KeySlot637 KeySlot nara__crypto__cryp__WriteableKeySlot529->nara__crypto__cryp__KeySlot637

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

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

Конструкторы и деструктор

WriteableKeySlot функция 2

Copy-Constructor.

Перегрузки WriteableKeySlot 2
WriteableKeySlot (const WriteableKeySlot &)=delete; SWS_CRYPT_50170
WriteableKeySlot (WriteableKeySlot &&)=delete; SWS_CRYPT_50171
~WriteableKeySlot функция

Destructor.

virtual ~WriteableKeySlot () noexcept=default;

Методы

Clear функция

The interface shall delete the current content of the KeySlot.

virtual ara::core::Result< void > Clear () const noexcept=0;

Операторы

operator= функция 2

Copy-assign another WriteableKeySlot to this instance.

Перегрузки = 2
WriteableKeySlot & operator= (const WriteableKeySlot &other)=delete; SWS_CRYPT_50168
WriteableKeySlot & operator= (WriteableKeySlot &&other)=delete; SWS_CRYPT_50169

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

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

Smart pointer of the interface.

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

функция Clear [SWS_CRYPT_30405] Upstream: RS_CRYPTO_02009

virtual ara::core::Result< void > Clear () const noexcept=0;

The interface shall delete the current content of the KeySlot.

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

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

Метод Clear() интерфейса ara::crypto::cryp::WriteableKeySlot служит для удаления текущего содержимого адресуемого хранилища ключей [SWS_CRYPT_30405]. Функция объявляется через заголовочный файл ara/crypto/cryp/writeable_keyslot.h и вызывается без параметров как константная операция [SWS_CRYPT_30405]. Она синхронно возвращает пустое ara::core::Result<void>, если KeySlot удалось успешно очистить или если он был пуст еще до вызова [SWS_CRYPT_30405].

Обработка ошибок и параллелизм

Интерфейс определен как noexcept и гарантирует как безопасность относительно исключений, так и потокобезопасность при параллельном вызове [SWS_CRYPT_30405]. В случае ошибки действует семантика отката, оставляющая состояние KeySlot без изменений [SWS_CRYPT_30405]. В результате могут возникать следующие коды ошибок [SWS_CRYPT_30405]:

  • ara::crypto::CryptoErrc::kUnsupported: возникает с семантикой отката, если конкретный KeySlot не поддерживает удаление [SWS_CRYPT_30405].
  • ara::crypto::CryptoErrc::kBusyResource: выдается, если операция в настоящее время не может быть выполнена вследствие временно занятых ресурсов [SWS_CRYPT_30405].

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

Функция действует непосредственно на экземпляре ara::crypto::cryp::WriteableKeySlot для очистки криптографических ключей [SWS_CRYPT_30405]. От этого следует отличать управление сертификатами в ara::crypto::x509::X509Provider, где очистка слотов сертификатов выполняется через метод ClearCertificateSlot() с указанием InstanceSpecifier [SWS_CRYPT_40622].

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

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >an empty result if the keyslot was already empty or successfully cleared

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the KeySlot does not support clearing
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_30405
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_30405@rel:R25-11#4eb20e9c
Content hash
4eb20e9c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_30405
Status: valid/unmigrated Version: rel:R25-11#f254660d 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_30405@rel:R25-11#f254660d
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#3b03ed2b2026-09-30
  • R20-11rel:R20-11#9d3696442026-10-14
  • R21-11rel:R21-11#bda76d622026-10-14
  • R22-11rel:R22-11#006988182026-10-14
  • R23-11rel:R23-11#e7cea4b12026-10-14
  • R24-11rel:R24-11#490dfcff2026-10-14
  • R25-11rel:R25-11#f254660d2026-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

функция WriteableKeySlot [SWS_CRYPT_50170] Upstream: RS_CRYPTO_02004

WriteableKeySlot (const WriteableKeySlot &)=delete;

Copy-Constructor.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50170
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50170@rel:R25-11#b912af30
Content hash
b912af30
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50170
Status: valid/unmigrated Version: rel:R25-11#9a69e3b3 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_50170@rel:R25-11#9a69e3b3
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

функция WriteableKeySlot [SWS_CRYPT_50171] Upstream: RS_CRYPTO_02004

WriteableKeySlot (WriteableKeySlot &&)=delete;

Move-Constructor.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50171
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50171@rel:R25-11#09c73b23
Content hash
09c73b23
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50171
Status: valid/unmigrated Version: rel:R25-11#1a7fb0b7 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_50171@rel:R25-11#1a7fb0b7
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

функция operator= [SWS_CRYPT_50168] Upstream: RS_CRYPTO_02004

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

Copy-assign another WriteableKeySlot to this instance.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50168
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50168@rel:R25-11#68e72c8e
Content hash
68e72c8e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50168
Status: valid/unmigrated Version: rel:R25-11#51e3ecf9 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_50168@rel:R25-11#51e3ecf9
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

функция operator= [SWS_CRYPT_50169] Upstream: RS_CRYPTO_02004

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

Move-assign another WriteableKeySlot to this instance.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50169
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50169@rel:R25-11#53e60aa3
Content hash
53e60aa3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50169
Status: valid/unmigrated Version: rel:R25-11#05bfa0a2 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_50169@rel:R25-11#05bfa0a2
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

функция ~WriteableKeySlot [SWS_CRYPT_50167] Upstream: RS_CRYPTO_02405

virtual ~WriteableKeySlot () noexcept=default;

Destructor.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50167
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50167@rel:R25-11#44cc20d4
Content hash
44cc20d4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50167
Status: valid/unmigrated Version: rel:R25-11#651255bc 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_50167@rel:R25-11#651255bc
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

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

псевдоним типа Sptr [SWS_CRYPT_50172] Upstream: RS_CRYPTO_02405

using Sptr = std::shared_ptr<WriteableKeySlot>;

Smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/writeable_keyslot.h"
Scopeclass ara::crypto::cryp::WriteableKeySlot
SymbolSptr

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50172
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50172@rel:R25-11#f1f676da
Content hash
f1f676da
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50172
Status: valid/unmigrated Version: rel:R25-11#afe92846 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_50172@rel:R25-11#afe92846
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