DEENESPTFRRUARHIKOZHNL

classe 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

Guia do utilizadorGERADO POR IA

Serve como uma interface gravável para o gerenciamento e a exclusão segura de chaves em um CryptoProvider.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5dc02afa7972 Procedência Perguntas em aberto (3)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Serve como uma interface gravável para o gerenciamento e a exclusão segura de chaves em um CryptoProvider.

A interface ara::crypto::cryp::WriteableKeySlot serve no AUTOSAR Adaptive como uma abstração gravável para locais de armazenamento de chaves em um CryptoProvider. As instâncias não podem ser copiadas nem movidas ([SWS_CRYPT_50170], [SWS_CRYPT_50168]), sendo referenciadas através do tipo de ponteiro inteligente Sptr [SWS_CRYPT_50172]. Por meio do método thread-safe Clear(), o conteúdo do slot de chave é limpo, aplicando-se uma semântica de rollback em caso de falha como kBusyResource ou kUnsupported [SWS_CRYPT_30405].

Contexto

A interface ara::crypto::cryp::WriteableKeySlot define, no âmbito do AUTOSAR Adaptive Platform, um local de armazenamento gravável para chaves criptográficas no contexto de um CryptoProvider. Ela deriva diretamente da interface base KeySlot e representa uma abstração padronizada para limpar de forma direcionada slots de chave gerenciados e controlar o seu ciclo de vida. Aplicações da pilha criptográfica atuam como consumidores e como parceiros essenciais de interação, assim como o CryptoProvider concreto, que gerencia a vinculação ao armazenamento físico ou lógico de chaves. A criação de instâncias concretas deve ocorrer por meio de métodos de fábrica ou de provedor de nível superior, visto que a interface atua como uma classe base puramente abstrata. Pergunta Q-5c3b13bb35c3ff53 (aberta)

Ciclo de vida

O modelo de recursos e posse de ara::crypto::cryp::WriteableKeySlot impede estritamente a duplicação de referências de chave por meio de semântica de valor. Para essa finalidade, tanto o construtor de cópia [SWS_CRYPT_50170] quanto o construtor de movimentação [SWS_CRYPT_50171] foram explicitamente excluídos (=delete). Do mesmo modo, as declarações excluídas do operador de atribuição por cópia [SWS_CRYPT_50168] e do operador de atribuição por movimentação [SWS_CRYPT_50169] impedem qualquer atribuição subsequente.

O repasse referencial e o gerenciamento compartilhado ocorrem, em vez disso, através do alias de tipo de ponteiro inteligente definido Sptr, que é materializado como std::shared_ptr<WriteableKeySlot> [SWS_CRYPT_50172]. A destruição da instância é assegurada por um destrutor padrão virtual, especificado como seguro para exceções (exception safe) e que não emite exceções (noexcept=default) [SWS_CRYPT_50167]. Isso permite a liberação polimórfica segura por meio de ponteiros para a interface. Em termos de estado, um slot pode estar ocupado ou vazio. A ocupação do slot deve ocorrer por meio de interfaces separadas do CryptoProvider, enquanto o esvaziamento é implementado através do método thread-safe Clear() [SWS_CRYPT_30405]. Pergunta Q-72dfcb17eb3e2d25 (aberta)

keyslot_zustand Leer Leer Leer->Leer Clear() [já vazio] Leer->Leer Clear() [kBusyResource / kUnsupported] Belegt Belegt Belegt->Leer Clear() [Erfolg] Belegt->Belegt Clear() [kBusyResource / kUnsupported]

Diagrama de estados: transições de estado do conteúdo da chave através de Clear() e tratamento de erros. Fontes: [SWS_CRYPT_30405]

Caminho de utilização

O caminho de uso central concentra-se na redefinição ou exclusão controlada do material de chave armazenado:

  • Referenciação: o chamador acessa a instância por meio de um ponteiro compartilhado do tipo WriteableKeySlot::Sptr [SWS_CRYPT_50172].
  • Chamada de exclusão: ao chamar o método puramente virtual Clear(), inicia-se o processo de exclusão do conteúdo atual do slot de chave [SWS_CRYPT_30405]. Como o método é thread-safe, a chamada também pode ocorrer em contextos concorrentes [SWS_CRYPT_30405].
  • Verificação do resultado: a operação retorna um ara::core::Result<void> [SWS_CRYPT_30405]. Se o slot de chave já estivesse previamente vazio ou se o conteúdo tiver sido removido sem erros, o resultado representa um estado de sucesso com valor vazio [SWS_CRYPT_30405].

Cenários de erro

O método Clear() está declarado como seguro contra exceções e noexcept; as situações de erro são transportadas através de ara::core::Result de acordo com o modelo de erros da AUTOSAR Adaptive [SWS_CRYPT_30405]. Os possíveis códigos de erro incluem:

  • ara::crypto::CryptoErrc::kUnsupported: Ocorre quando a variante concreta do slot de chave não suporta a eliminação [SWS_CRYPT_30405]. Para este caso, a interface garante uma semântica de rollback, de modo que o estado permanece inalterado [SWS_CRYPT_30405].
  • ara::crypto::CryptoErrc::kBusyResource: É retornado caso a operação de eliminação temporariamente não possa ser executada [SWS_CRYPT_30405]. Isto deve ser tipicamente causado por acessos concorrentes a recursos de memória vinculados a hardware. Pergunta (aberta) Também aqui uma semântica de rollback assegura que não permaneçam alterações parciais [SWS_CRYPT_30405].

Este guia baseia-se na especificação AUTOSAR Adaptive R25-11 para o módulo crypto e foi gerado automaticamente.

Mapa de membros

Construtores e destrutor

2

Métodos

1

Operadores

1

Aliases de tipo

1

Diagrama de classes

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

Vista de detalhes

Selecione uma entrada no índice.

Construtores e destrutor

WriteableKeySlot função 2

Copy-Constructor.

Sobrecargas WriteableKeySlot 2
WriteableKeySlot (const WriteableKeySlot &)=delete; SWS_CRYPT_50170
WriteableKeySlot (WriteableKeySlot &&)=delete; SWS_CRYPT_50171

Destructor.

virtual ~WriteableKeySlot () noexcept=default;

Métodos

Clear função

The interface shall delete the current content of the KeySlot.

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

Operadores

operator= função 2

Copy-assign another WriteableKeySlot to this instance.

Sobrecargas = 2
WriteableKeySlot & operator= (const WriteableKeySlot &other)=delete; SWS_CRYPT_50168
WriteableKeySlot & operator= (WriteableKeySlot &&other)=delete; SWS_CRYPT_50169

Aliases de tipo

Sptr alias de tipo

Smart pointer of the interface.

Documentação dos métodos

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 9f91b0070fcf Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

O método Clear() da interface ara::crypto::cryp::WriteableKeySlot serve para excluir o conteúdo atual do armazenamento de chave referenciado [SWS_CRYPT_30405]. A função é declarada através do arquivo de cabeçalho ara/crypto/cryp/writeable_keyslot.h e chamada sem parâmetros como uma operação constante [SWS_CRYPT_30405]. Ela retorna sincronicamente um ara::core::Result<void> vazio se o KeySlot tiver sido esvaziado com sucesso ou se já estivesse vazio antes da chamada [SWS_CRYPT_30405].

Tratamento de erros e simultaneidade

A interface é definida como noexcept e garante tanto segurança contra exceções quanto segurança para threads em chamadas concorrentes [SWS_CRYPT_30405]. Em caso de falha, aplica-se uma semântica de rollback que mantém inalterado o estado do KeySlot [SWS_CRYPT_30405]. Os seguintes códigos de erro podem ocorrer no resultado [SWS_CRYPT_30405]:

  • ara::crypto::CryptoErrc::kUnsupported: Ocorre com semântica de rollback quando o KeySlot concreto não suporta a exclusão [SWS_CRYPT_30405].
  • ara::crypto::CryptoErrc::kBusyResource: É reportado caso a operação não possa ser executada atualmente em decorrência de recursos temporariamente ocupados [SWS_CRYPT_30405].

Interação

A função atua diretamente sobre a instância de ara::crypto::cryp::WriteableKeySlot para a limpeza de chaves criptográficas [SWS_CRYPT_30405]. Diferencia-se disso o gerenciamento de certificados em ara::crypto::x509::X509Provider, no qual a limpeza de slots de certificado ocorre através do método ClearCertificateSlot() com a indicação de um InstanceSpecifier [SWS_CRYPT_40622].

Esta nota de uso foi gerada automaticamente e baseia-se na especificação AUTOSAR para o Release 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#0706e70d
Content hash
0706e70d
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

função 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#045f15a4
Content hash
045f15a4
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

função 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#7c4cd3f2
Content hash
7c4cd3f2
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

função 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#b27244d6
Content hash
b27244d6
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

função 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#e120cd5c
Content hash
e120cd5c
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

função ~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#779b8958
Content hash
779b8958
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

Documentação dos aliases de tipo

alias de tipo 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#45c34013
Content hash
45c34013
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