DEENESPTFRRUARHIKOZHNL

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

[SWS_CRYPT_50145] Upstream: RS_CRYPTO_02405

class KeySlot {...};

KeySlot interface representing a storage location for a key in a CryptoProvider.

Header-Datei#include "ara/crypto/cryp/keyslot.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::cryp

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

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

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

Интерфейс инкапсулирует постоянный или энергозависимый слот хранения для криптографических ключей и позволяет запрашивать метаданные ключа, а также ответственный CryptoProvider [SWS_CRYPT_30403]. Приложения могут отслеживать изменения содержимого с помощью регистрируемого обратного вызова наблюдателя [SWS_CRYPT_30404]. При пустом слоте обращения к типу ключа или его алгоритму завершаются с кодом ошибки ara::crypto::CryptoErrc::kEmptyKeySlot [SWS_CRYPT_50055]. Поскольку копирование и перемещение запрещены, доступ осуществляется потокобезопасно через Shared-Pointer.

Контекст

Интерфейс ara::crypto::cryp::KeySlot представляет собой выделенный слот хранения для криптографических ключей в рамках AUTOSAR Adaptive Platform. Являясь инкапсуляцией логического слота ключа, он управляет метаданными, информацией о типе и сопоставлением поддерживаемых алгоритмов для размещенного в нем ключа. Экземпляр обычно взаимодействует с тремя сторонами: использующим программным обеспечением, соответствующим cryp::CryptoProvider, на который через [SWS_CRYPT_30403] может быть получена разделяемая ссылка, а также прикладным обратным вызовом для отслеживания содержимого согласно [SWS_CRYPT_30404].

KeySlotContext App Applikation KeySlot KeySlot App->KeySlot fragt ab / registriert CryptoProvider CryptoProvider KeySlot->CryptoProvider referenziert Observer Update-Observer KeySlot->Observer benachrichtigt

Контекстная диаграмма: партнеры по взаимодействию интерфейса KeySlot. Источники: [SWS_CRYPT_30403], [SWS_CRYPT_30404]

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

KeySlot жестко привязан к представляемому им хранилищу ключей. Соответственно интерфейс предотвращает дублирование и перемещение экземпляра: как конструктор копирования [SWS_CRYPT_50149], так и конструктор перемещения [SWS_CRYPT_50150] явно удалены. То же самое относится к оператору присваивания копированием [SWS_CRYPT_50147] и оператору присваивания перемещением [SWS_CRYPT_50148].

Для управления отношениями владения и ссылок класс определяет псевдоним типа интеллектуального указателя Sptr как std::shared_ptr<KeySlot> [SWS_CRYPT_50151]. Освобождение осуществляется через виртуальный стандартный деструктор [SWS_CRYPT_50146]. Интерпретация: поскольку интерфейс не определяет открытых конструкторов, конкретные экземпляры, вероятно, создаются ответственным CryptoProvider и предоставляются как Sptr. Вопрос Q-baef4cb1493c96cd (открытый) Все предоставляемые методы объявлены потокобезопасными, благодаря чему одновременный доступ для чтения и мониторинга из нескольких контекстов выполнения допустим.

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

Типичное взаимодействие с KeySlot подразделяется на конфигурацию мониторинга содержимого и опрос сохраненных метаданных ключа:

  1. Регистрация наблюдателя: приложение регистрирует с помощью RegisterUpdateObserver функцию обратного вызова, а также прикладной идентификатор keySlotIdentifier [SWS_CRYPT_30404]. При повторном вызове при обновлениях или удалениях содержимого слота всегда вызывается только последний переданный callback.
  2. Запрос поддерживаемых алгоритмов: через GetPossibleAlgIds приложение получает список всех идентификаторов алгоритмов, поддерживаемых слотом [SWS_CRYPT_50056].
  3. Проверка текущего ключа: если в слоте находится ключ, GetCryptoObjectType возвращает тип объекта ключа [SWS_CRYPT_50054], а GetAlgId — его конкретный идентификатор алгоритма [SWS_CRYPT_50055].
  4. Определение ответственного провайдера: при необходимости через GetCryptoProvider можно запросить управляющий CryptoProvider в виде Shared-Pointer [SWS_CRYPT_30403].
  5. Отмена регистрации наблюдателя: после завершения мониторинга регистрация отменяется через UnregisterUpdateObserver [SWS_CRYPT_30406].
Типичный путь использования KeySlotApplikationKeySlotRegisterUpdateObserver(callback, id)Result<void>GetPossibleAlgIds()Result<Vector<AlgIdString>>GetCryptoObjectType()Result<CryptoObjectType>GetAlgId()Result<AlgIdString>UnregisterUpdateObserver()Result<void>

Диаграмма последовательности: типичный процесс регистрации, запроса метаданных и отмены регистрации в KeySlot. Источники: [SWS_CRYPT_30404], [SWS_CRYPT_50056], [SWS_CRYPT_50054], [SWS_CRYPT_50055], [SWS_CRYPT_30406]

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

Опрашивающие методы защищают состояния ошибок через тип результата ara::core::Result. Если KeySlot не содержит ключа, вызовы GetCryptoObjectType [SWS_CRYPT_50054] и GetAlgId [SWS_CRYPT_50055] возвращают стандартизированный код ошибки ara::crypto::CryptoErrc::kEmptyKeySlot с семантикой отката. Методы GetPossibleAlgIds [SWS_CRYPT_50056] и GetCryptoProvider [SWS_CRYPT_30403] не специфицируют стандартизированных кодов ошибок. Для управления наблюдателем с помощью RegisterUpdateObserver [SWS_CRYPT_30404], а также UnregisterUpdateObserver [SWS_CRYPT_30406] в случае сбоя в объекте результата предусмотрены ошибки, зависящие от реализации.

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

Карта членов

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

2

Операторы

1

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

1

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

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

G nara__crypto__cryp__KeySlot637 KeySlot + KeySlot() + operator=() + ~KeySlot() + GetAlgId() + GetCryptoObjectType() + GetCryptoProvider() + GetPossibleAlgIds() + RegisterUpdateObserver() + UnregisterUpdateObserver() nara__crypto__cryp__WriteableKeySlot529 WriteableKeySlot nara__crypto__cryp__WriteableKeySlot529->nara__crypto__cryp__KeySlot637

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

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

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

KeySlot функция 2

Copy-Constructor.

Перегрузки KeySlot 2
KeySlot (const KeySlot &)=delete; SWS_CRYPT_50149
KeySlot (KeySlot &&)=delete; SWS_CRYPT_50150
~KeySlot функция

Destructor.

virtual ~KeySlot () noexcept=default;

Методы

GetAlgId функция

The interface shall return the AlgId of the currently stored key.

virtual ara::core::Result< ara::crypto::AlgIdString > GetAlgId () const noexcept=0;
GetCryptoObjectType функция

The interface shall return the CryptoObjectType of the currently stored key.

virtual ara::core::Result< CryptoObjectType > GetCryptoObjectType () const noexcept=0;
GetCryptoProvider функция

The interface shall return an instance of the CryptoProvider that is responsible for this KeySlot.

virtual ara::core::Result< std::shared_ptr< cryp::CryptoProvider > > GetCryptoProvider () const noexcept=0;
GetPossibleAlgIds функция

The interface shall return a vector of AlgIds supported by this KeySlot.

virtual ara::core::Result< ara::core::Vector< ara::crypto::AlgIdString > > GetPossibleAlgIds () const noexcept=0;
RegisterUpdateObserver функция

The interface shall register an application callback function to be called when the content of the KeySlot is updated (i.e., modified or cleared). If this function is called multiple times, only the most recently registered callback of an application will be called.

virtual ara::core::Result< void > RegisterUpdateObserver (std::function< void(ara::core::StringView)> callback, ara::core::StringView keySlotIdentifier) const noexcept=0;

Unregisters any previously UpdateObserver callback that has been registered previously by the application.

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

Операторы

operator= функция 2

Copy-assign another KeySlot to this instance.

Перегрузки = 2
KeySlot & operator= (const KeySlot &other)=delete; SWS_CRYPT_50147
KeySlot & operator= (KeySlot &&other)=delete; SWS_CRYPT_50148

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

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

Smart pointer of the interface.

using Sptr = std::shared_ptr<KeySlot>;

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

функция GetAlgId [SWS_CRYPT_50055] Upstream: RS_CRYPTO_02009

virtual ara::core::Result< ara::crypto::AlgIdString > GetAlgId () const noexcept=0;

The interface shall return the AlgId of the currently stored key.

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

Rückgabewert

TypBeschreibung
ara::core::Result<ara::crypto::AlgIdString >A result containing the AlgId of the current key slot content

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if the KeySlot does not contain a key.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50055
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50055@rel:R25-11#37d5cc14
Content hash
37d5cc14
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50055
Status: valid/unmigrated Version: rel:R25-11#24c0bae9 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_50055@rel:R25-11#24c0bae9
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

функция GetCryptoObjectType [SWS_CRYPT_50054] Upstream: RS_CRYPTO_02009

virtual ara::core::Result< CryptoObjectType > GetCryptoObjectType () const noexcept=0;

The interface shall return the CryptoObjectType of the currently stored key.

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

Rückgabewert

TypBeschreibung
ara::core::Result< CryptoObjectType >A result containing the CryptoObjectType of the currently stored key.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if the KeySlot does not contain a key.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50054
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50054@rel:R25-11#19332d9b
Content hash
19332d9b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50054
Status: valid/unmigrated Version: rel:R25-11#4fb87b0b 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_50054@rel:R25-11#4fb87b0b
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

функция GetCryptoProvider [SWS_CRYPT_30403] Upstream: RS_CRYPTO_02401

virtual ara::core::Result< std::shared_ptr< cryp::CryptoProvider > > GetCryptoProvider () const noexcept=0;

The interface shall return an instance of the CryptoProvider that is responsible for this KeySlot.

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

Rückgabewert

TypBeschreibung
ara::core::Result<std::shared_ptr<cryp::CryptoProvider > >a result containing a shared pointer to the CryptoProvider to be used with this KeySlot

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_30403
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_30403@rel:R25-11#b7ba2bcf
Content hash
b7ba2bcf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_30403
Status: valid/unmigrated Version: rel:R25-11#5cab9276 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_30403@rel:R25-11#5cab9276
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#521de99b2026-09-30
  • R20-11rel:R20-11#26f02eba2026-10-14
  • R21-11rel:R21-11#9fc6a2d12026-10-14
  • R22-11rel:R22-11#c2239d192026-10-14
  • R23-11rel:R23-11#c19ad2fa2026-10-14
  • R24-11rel:R24-11#5558cd092026-10-14
  • R25-11rel:R25-11#5cab92762026-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

функция GetPossibleAlgIds [SWS_CRYPT_50056] Upstream: RS_CRYPTO_02009

virtual ara::core::Result< ara::core::Vector< ara::crypto::AlgIdString > > GetPossibleAlgIds () const noexcept=0;

The interface shall return a vector of AlgIds supported by this KeySlot.

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

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::Vector<ara::crypto::AlgIdString > >A result containing the possible AlgIds of the key slot

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

функция KeySlot [SWS_CRYPT_50149] Upstream: RS_CRYPTO_02004

KeySlot (const KeySlot &)=delete;

Copy-Constructor.

Header-Datei#include "ara/crypto/cryp/keyslot.h"
Scopeclass ara::crypto::cryp::KeySlot

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

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

функция KeySlot [SWS_CRYPT_50150] Upstream: RS_CRYPTO_02004

KeySlot (KeySlot &&)=delete;

Move-Constructor.

Header-Datei#include "ara/crypto/cryp/keyslot.h"
Scopeclass ara::crypto::cryp::KeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50150
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50150@rel:R25-11#66e5fc94
Content hash
66e5fc94
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50150
Status: valid/unmigrated Version: rel:R25-11#4bc5a8dd 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_50150@rel:R25-11#4bc5a8dd
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

функция RegisterUpdateObserver [SWS_CRYPT_30404] Upstream: RS_CRYPTO_02401

virtual ara::core::Result< void > RegisterUpdateObserver (std::function< void(ara::core::StringView)> callback, ara::core::StringView keySlotIdentifier) const noexcept=0;

The interface shall register an application callback function to be called when the content of the KeySlot is updated (i.e., modified or cleared). If this function is called multiple times, only the most recently registered callback of an application will be called.

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

Метод RegisterUpdateObserver класса ara::crypto::cryp::KeySlot служит для регистрации зависящей от приложения callback-функции, которая получает уведомление при каждом обновлении содержимого слота ключа [SWS_CRYPT_30404]. При этом обновлением считаются как изменения содержимого, так и полная очистка слота [SWS_CRYPT_30404].

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

Функция подключается через заголовочный файл ara/crypto/cryp/keyslot.h и принимает callback callback, а также идентификатор keySlotIdentifier [SWS_CRYPT_30404]. Функциональный объект callback при вызове получает в качестве аргумента строку keySlotIdentifier для однозначного сопоставления соответствующего слота в логике приложения [SWS_CRYPT_30404]. При повторных вызовах RegisterUpdateObserver тем же приложением сохраняется и выполняется исключительно последняя зарегистрированная callback-функция [SWS_CRYPT_30404].

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

Интерфейс является потокобезопасным (thread-safe) и специфицирован как noexcept без выброса исключений [SWS_CRYPT_30404]. Он возвращает ara::core::Result<void> [SWS_CRYPT_30404]. Стандартизированных ошибок не существует; в случае ошибки возвращается специфичный для реализации код ошибки [SWS_CRYPT_30404]. Интерпретация: фактический вызов callback-функции, по-видимому, происходит асинхронно в контексте криптодрайвера, как только обновление вступит в силу в хранилище ключей. Вопрос Q-cfbcc1ddcbe88062 (открытый)

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

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

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

Parameter (in)

ParameterBeschreibung
callbackthe registered callback function to be called when the KeySlot content is modified
keySlotIdentifieran application-specific identified of the KeySlot which will be used as a parameter of the callback function

Rückgabewert

TypBeschreibung
ara::core::Result< void >an empty result 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_30404
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_30404@rel:R25-11#6e034727
Content hash
6e034727
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_30404
Status: valid/unmigrated Version: rel:R25-11#00db85c0 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_30404@rel:R25-11#00db85c0
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#6cb45e062026-09-30
  • R20-11rel:R20-11#68122f052026-10-14
  • R21-11rel:R21-11#68122f052026-10-14
  • R22-11rel:R22-11#4bd4986b2026-10-14
  • R23-11rel:R23-11#b0d1e1432026-10-14
  • R24-11rel:R24-11#d83bf7342026-10-14
  • R25-11rel:R25-11#00db85c02026-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

функция UnregisterUpdateObserver [SWS_CRYPT_30406] Upstream: RS_CRYPTO_02401

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

Unregisters any previously UpdateObserver callback that has been registered previously by the application.

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

Метод UnregisterUpdateObserver класса ara::crypto::cryp::KeySlot служит для отмены регистрации ранее зарегистрированного приложением callback-вызова наблюдателя (UpdateObserver) [SWS_CRYPT_30406]. Функция объявлена в заголовке ara/crypto/cryp/keyslot.h, спроектирована как чисто виртуальный метод (=0) и не ожидает входных параметров [SWS_CRYPT_30406].

В отношении контекста вызова и параллелизма действуют следующие граничные условия:

  • Синхронная семантика и потокобезопасность: отмена регистрации выполняется синхронно и явно специфицирована как thread-safe [SWS_CRYPT_30406]. Таким образом, вызовы могут выполняться потокобезопасно и параллельно другим операциям над тем же экземпляром KeySlot.
  • Безопасность исключений: метод имеет спецификацию noexcept и считается exception-safe [SWS_CRYPT_30406]. Поэтому ошибочные состояния ни в коем случае не приводят к исключениям C++, а корректно обрабатываются через объект возвращаемого значения.

В качестве возвращаемого значения функция возвращает ara::core::Result<void>, которое при успешной отмене регистрации является пустым или в случае ошибки инкапсулирует код ошибки [SWS_CRYPT_30406]. Спецификация намеренно не определяет стандартизированных кодов ошибок AUTOSAR для этого вызова; возможные ошибки поэтому специфичны для производителя или реализации [SWS_CRYPT_30406]. Вызывающие стороны должны проверять результат на наличие ошибки, однако не могут выполнять проверку на соответствие стандартизированным константам ошибок.

Во взаимодействии с управлением ключами отмена регистрации надежно предотвращает получение приложением дальнейших уведомлений об изменениях содержимого ключа. Если на момент вызова callback зарегистрирован не был, функция, согласно интерпретации, должна либо успешно завершиться без каких-либо действий, либо вернуть специфичную для реализации ошибку. Вопрос Q-7a1e7e0db0691ce6 (открытый)

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

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

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

Rückgabewert

TypBeschreibung
ara::core::Result< void >an empty result 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_30406
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_30406@rel:R25-11#d2bfe369
Content hash
d2bfe369
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_30406
Status: valid/unmigrated Version: rel:R25-11#bbacdbfa 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_30406@rel:R25-11#bbacdbfa
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#7a49fb252026-09-30
  • R20-11rel:R20-11#d23bfef12026-10-14
  • R21-11rel:R21-11#146b6c222026-10-14
  • R22-11rel:R22-11#34a2bb242026-10-14
  • R23-11rel:R23-11#c39da02b2026-10-14
  • R24-11rel:R24-11#28d79d9d2026-10-14
  • R25-11rel:R25-11#bbacdbfa2026-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

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

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

Copy-assign another KeySlot to this instance.

Header-Datei#include "ara/crypto/cryp/keyslot.h"
Scopeclass ara::crypto::cryp::KeySlot

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50147
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50147@rel:R25-11#081bcdca
Content hash
081bcdca
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50147
Status: valid/unmigrated Version: rel:R25-11#4184cb45 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_50147@rel:R25-11#4184cb45
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_50148] Upstream: RS_CRYPTO_02004

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

Move-assign another KeySlot to this instance.

Header-Datei#include "ara/crypto/cryp/keyslot.h"
Scopeclass ara::crypto::cryp::KeySlot

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

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

функция ~KeySlot [SWS_CRYPT_50146] Upstream: RS_CRYPTO_02405

virtual ~KeySlot () noexcept=default;

Destructor.

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

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50146
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50146@rel:R25-11#322b0907
Content hash
322b0907
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50146
Status: valid/unmigrated Version: rel:R25-11#b9fe0bea 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_50146@rel:R25-11#b9fe0bea
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_50151] Upstream: RS_CRYPTO_02405

using Sptr = std::shared_ptr<KeySlot>;

Smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/keyslot.h"
Scopeclass ara::crypto::cryp::KeySlot
SymbolSptr

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

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