DEENESPTFRRUARHIKOZHNL

clase 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

Guía del usuarioGENERADO POR IA

Actúa como interfaz escribible para la gestión y el borrado seguro de claves en un CryptoProvider.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 5dc02afa7972 Procedencia Preguntas abiertas (3)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Actúa como interfaz escribible para la gestión y el borrado seguro de claves en un CryptoProvider.

La interfaz ara::crypto::cryp::WriteableKeySlot sirve en AUTOSAR Adaptive como abstracción escribible para ubicaciones de almacenamiento de claves en un CryptoProvider. Las instancias no se pueden copiar ni mover ([SWS_CRYPT_50170], [SWS_CRYPT_50168]), sino que se referencian a través del tipo de puntero inteligente Sptr [SWS_CRYPT_50172]. Mediante el método seguro para subprocesos Clear() se borra el contenido de la ranura de clave, aplicándose una semántica de reversión (rollback) en casos de error tales como kBusyResource o kUnsupported [SWS_CRYPT_30405].

Contexto

La interfaz ara::crypto::cryp::WriteableKeySlot define dentro de AUTOSAR Adaptive Platform un espacio de almacenamiento escribible para claves criptográficas en el contexto de un CryptoProvider. Se deriva directamente de la interfaz base KeySlot y representa una abstracción estandarizada para borrar selectivamente ranuras de claves gestionadas y controlar su ciclo de vida. Como interlocutores de interacción esenciales actúan las aplicaciones de la pila criptográfica como consumidores, así como el CryptoProvider concreto, el cual gestiona la vinculación con el almacenamiento físico o lógico de claves. La creación de instancias concretas presumiblemente se lleva a cabo mediante métodos de fábrica o de proveedor de nivel superior, dado que la interfaz actúa como clase base abstracta pura. Pregunta Q-5c3b13bb35c3ff53 (abierta)

Ciclo de vida

El modelo de recursos y propiedad de ara::crypto::cryp::WriteableKeySlot impide estrictamente la duplicación de referencias a claves mediante semántica por valor. Para este fin, tanto el constructor de copia [SWS_CRYPT_50170] como el constructor de movimiento [SWS_CRYPT_50171] están explícitamente eliminados (=delete). Del mismo modo, las declaraciones eliminadas del operador de asignación por copia [SWS_CRYPT_50168] y del operador de asignación por movimiento [SWS_CRYPT_50169] impiden cualquier asignación posterior.

En su lugar, la transmisión por referencia y la gestión compartida se efectúan mediante el alias de tipo de puntero inteligente definido Sptr, materializado como std::shared_ptr<WriteableKeySlot> [SWS_CRYPT_50172]. La destrucción de la instancia está protegida por un destructor virtual estándar, especificado como seguro frente a excepciones (exception safe) y que no emite excepciones (noexcept=default) [SWS_CRYPT_50167]. Esto permite la liberación polimórfica segura mediante punteros a la interfaz. En cuanto al estado, una ranura puede estar ocupada o vacía. La ocupación de la ranura probablemente tenga lugar mediante interfaces independientes del CryptoProvider, mientras que el vaciado se materializa a través del método seguro para subprocesos Clear() [SWS_CRYPT_30405]. Pregunta Q-72dfcb17eb3e2d25 (abierta)

keyslot_zustand Leer Leer Leer->Leer Clear() [ya vacío] Leer->Leer Clear() [kBusyResource / kUnsupported] Belegt Belegt Belegt->Leer Clear() [Erfolg] Belegt->Belegt Clear() [kBusyResource / kUnsupported]

Diagrama de estados: transiciones de estado del contenido de la clave mediante Clear() y tratamiento de errores. Fuentes: [SWS_CRYPT_30405]

Ruta de uso

La ruta de uso principal se centra en el restablecimiento o borrado controlado del material de clave almacenado:

  • Referenciación: el invocador accede a la instancia a través de un puntero compartido del tipo WriteableKeySlot::Sptr [SWS_CRYPT_50172].
  • Llamada de borrado: mediante la llamada al método puramente virtual Clear() se inicia el proceso de borrado para el contenido actual de la ranura de clave [SWS_CRYPT_30405]. Dado que el método es seguro para subprocesos, la llamada también puede realizarse en contextos concurrentes [SWS_CRYPT_30405].
  • Comprobación del resultado: la operación devuelve un ara::core::Result<void> [SWS_CRYPT_30405]. Si la ranura de clave ya estaba vacía anteriormente o el contenido se eliminó sin errores, el resultado representa un estado satisfactorio con valor vacío [SWS_CRYPT_30405].

Escenarios de error

El método Clear() está declarado como seguro frente a excepciones y noexcept; según el modelo de errores de AUTOSAR Adaptive, las situaciones de error se transmiten a través de ara::core::Result [SWS_CRYPT_30405]. Los posibles códigos de error comprenden:

  • ara::crypto::CryptoErrc::kUnsupported: se produce cuando la variante concreta de la ranura de clave no admite el borrado [SWS_CRYPT_30405]. En este caso, la interfaz garantiza una semántica de reversión (rollback), de modo que el estado permanece inalterado [SWS_CRYPT_30405].
  • ara::crypto::CryptoErrc::kBusyResource: se devuelve si la operación de borrado no puede llevarse a cabo temporalmente [SWS_CRYPT_30405]. Es probable que esto esté causado típicamente por accesos concurrentes a recursos de memoria vinculados al hardware. Pregunta (abierta) También en este caso, una semántica de reversión (rollback) garantiza que no permanezcan cambios parciales [SWS_CRYPT_30405].

Esta guía se basa en la especificación de AUTOSAR Adaptive R25-11 para el módulo crypto y ha sido elaborada de forma automatizada.

Mapa de miembros

Constructores y destructor

2

Métodos

1

Operadores

1

Alias de tipo

1

Diagrama de clases

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 detalle

Selecciona una entrada en el índice.

Constructores y destructor

WriteableKeySlot función 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 función

The interface shall delete the current content of the KeySlot.

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

Operadores

operator= función 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

Alias de tipo

Sptr alias de tipo

Smart pointer of the interface.

Documentación de los métodos

función 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.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 9f91b0070fcf Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Uso y semántica

El método Clear() de la interfaz ara::crypto::cryp::WriteableKeySlot sirve para borrar el contenido actual del almacenamiento de claves referenciado [SWS_CRYPT_30405]. La función se declara a través del archivo de cabecera ara/crypto/cryp/writeable_keyslot.h y se invoca sin parámetros como una operación constante [SWS_CRYPT_30405]. Devuelve de forma síncrona un ara::core::Result<void> vacío si el KeySlot se pudo vaciar con éxito o si ya estaba vacío antes de la llamada [SWS_CRYPT_30405].

Tratamiento de errores y concurrencia

La interfaz está definida como noexcept y garantiza tanto la seguridad frente a excepciones como la seguridad para subprocesos ante llamadas concurrentes [SWS_CRYPT_30405]. En caso de error, se aplica una semántica de reversión que mantiene inalterado el estado del KeySlot [SWS_CRYPT_30405]. En el resultado pueden presentarse los siguientes códigos de error [SWS_CRYPT_30405]:

  • ara::crypto::CryptoErrc::kUnsupported: Se produce con semántica de reversión si el KeySlot concreto no admite el borrado [SWS_CRYPT_30405].
  • ara::crypto::CryptoErrc::kBusyResource: Se notifica siempre que la operación no pueda ejecutarse en el momento debido a recursos ocupados temporalmente [SWS_CRYPT_30405].

Interacción

La función opera directamente sobre la instancia de ara::crypto::cryp::WriteableKeySlot para la depuración de claves criptográficas [SWS_CRYPT_30405]. Debe distinguirse de la gestión de certificados en ara::crypto::x509::X509Provider, en la que la depuración de slots de certificados se realiza mediante el método ClearCertificateSlot() especificando un InstanceSpecifier [SWS_CRYPT_40622].

Esta nota de uso se generó automáticamente y se basa en la especificación AUTOSAR para la versión 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#b59c04b8
Content hash
b59c04b8
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

función 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#669b9b73
Content hash
669b9b73
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

función 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#970aa36a
Content hash
970aa36a
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

función 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#08f48c8f
Content hash
08f48c8f
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

función 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#40d4dde3
Content hash
40d4dde3
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

función ~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#ff8d65c9
Content hash
ff8d65c9
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

Documentación de los alias 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