Proporciona la interfaz general y el puntero compartido para claves públicas asimétricas.
GENERADO POR IAno revisadoModelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 49ae23e669f8ProcedenciaPreguntas abiertas (3)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán
Proporciona la interfaz general y el puntero compartido para claves públicas asimétricas.
La interfaz ara::crypto::cryp::PublicKey representa un objeto de clave pública asimétrica general en el módulo crypto y se deriva de CryptoObject. Para la referenciación y transferencia, la clase proporciona el alias de tipo Sptr como std::shared_ptr<PublicKey>, que se incluye mediante la cabecera "ara/crypto/cryp/cryobj/public_key.h"[SWS_CRYPT_22701]. Interpretación: Es de suponer que las aplicaciones pasen instancias de PublicKey::Sptr[SWS_CRYPT_22701] a clases de contexto criptográfico para la verificación asimétrica o el cifrado. Pregunta (abierta) La vida útil y liberación de la clave pública se controlan en este caso completamente mediante el contador de referencias del puntero inteligente compartido.
Contexto
La clase ara::crypto::cryp::PublicKey define la interfaz general para claves públicas asimétricas (General Asymmetric Public Key interface) dentro del módulo crypto de la AUTOSAR Adaptive Platform. Conforme a su declaración sintáctica, la clase hereda públicamente de CryptoObject. En esta función actúa como tipo base y contrato de interfaz uniforme para todas las estructuras de clave pública asimétrica que se emplean en operaciones criptográficas. Como clave pública, un objeto de esta clase representa la parte matemáticamente abierta de un par de claves asimétricas, la cual está destinada a fines de verificación o cifrado y no contiene parámetros de clave privada sensibles. El acceso a la definición de la interfaz se realiza a través del archivo de cabecera #include "ara/crypto/cryp/cryobj/public_key.h" conforme a [SWS_CRYPT_22701]. Interpretación: Dado que PublicKey se deriva directamente de CryptoObject, es de suponer que la interfaz comparta propiedades y convenciones comunes para objetos criptográficos de la plataforma, a la vez que proporciona la abstracción específica de una clave asimétrica. Pregunta Q-83979c7ba039e328 (abierta)
Ciclo de vida
Para la gestión y transferencia de instancias, la clase proporciona el alias de tipo Sptr, definido como std::shared_ptr<PublicKey>[SWS_CRYPT_22701]. Por tanto, las relaciones de propiedad de una clave pública se basan en la propiedad compartida (Shared Ownership). Esto permite que diferentes componentes del sistema e invocadores referencien la misma instancia de clave en paralelo, sin que deba determinarse obligatoriamente un propietario exclusivo. El ciclo de vida de una instancia de clave concreta se controla mediante el contador de referencias del puntero inteligente estándar. Tan pronto como se libera la última referencia y el contador alcanza cero, se produce la destrucción controlada del objeto. Interpretación: El hecho de proporcionar explícitamente el alias Sptr[SWS_CRYPT_22701] probablemente indique que las instancias de PublicKey se crean habitualmente mediante factorías o rutinas de carga del módulo criptográfico y se transfieren directamente a los usuarios como Shared Pointer, en lugar de gestionarse como punteros en bruto u objetos por valor. Pregunta Q-0cdb961ab357bc3b (abierta) En cuanto a la concurrencia, la referenciación mediante std::shared_ptr permite la transferencia del puntero entre distintos hilos, no produciéndose típicamente modificaciones paralelas en una clave pública pura, ya que esta sirve prioritariamente como parámetro de referencia inmutable.
Ruta de uso
Una ruta de uso típica para ara::crypto::cryp::PublicKey comienza con la inclusión del archivo de cabecera correspondiente "ara/crypto/cryp/cryobj/public_key.h"[SWS_CRYPT_22701]. A continuación, la aplicación obtiene una referencia al objeto de clave en forma del puntero inteligente tipificado ara::crypto::cryp::PublicKey::Sptr[SWS_CRYPT_22701]. Este puntero representa el objeto de clave asimétrica listo para su uso. Interpretación: La instancia de Sptr obtenida [SWS_CRYPT_22701] probablemente se transfiera en pasos posteriores a clases de contexto criptográfico, por ejemplo para verificar firmas digitales o cifrar datos asimétricamente. Pregunta Q-b4800044ca9f058a (abierta) Una vez finalizadas las operaciones de verificación o cálculo criptográficas, el objeto de clave o bien permanece en propiedad compartida para futuros procesos de comprobación, o bien se libera automáticamente en cuanto se sale del ámbito del Sptr local. Gracias a la encapsulación como interfaz abstracta, los invocadores no necesitan conocer los detalles algorítmicos internos de la clave, sino que interactúan a través de la interfaz uniforme de PublicKey.
Esta guía se basa en la especificación AUTOSAR Adaptive R25-11 y se ha generado de forma automatizada.
Diagrama de clases UML
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · Original en alemán