nl:: Weave:: Perfiles:: Seguridad::Exportación de clave: WeaveKeyExportDelegate
Esta es una clase abstracta.
#include <src/lib/profiles/security/WeaveKeyExport.h>
Clase delegada abstracta llamada por el motor KeyExport para realizar varias acciones relacionadas con la autenticación durante la exportación de claves.
Resumen
Herencia
Subclases conocidas directas: nl::Weave::Profiles::Security::KeyExport::WeaveStandAloneKeyExportClient
Funciones públicas |
|
---|---|
BeginCertValidation(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet)=0
|
virtual WEAVE_ERROR
Prepárate para validar el certificado de intercambio de tráfico.
|
EndCertValidation(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet)=0
|
virtual WEAVE_ERROR
Libera los recursos asociados con la validación del certificado de par.
|
GenerateNodeSignature(WeaveKeyExport *keyExport, const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Genera una firma para un mensaje de exportación de claves.
|
GetNodeCertSet(WeaveKeyExport *keyExport, WeaveCertificateSet & certSet)=0
|
virtual WEAVE_ERROR
Obtén el conjunto de certificados de exportación de claves para el nodo local.
|
HandleCertValidationResult(WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet, uint32_t requestedKeyId)=0
|
virtual WEAVE_ERROR
Procesa los resultados de la validación del certificado de intercambio de tráfico.
|
ReleaseNodeCertSet(WeaveKeyExport *keyExport, WeaveCertificateSet & certSet)=0
|
virtual WEAVE_ERROR
Libera el conjunto de certificados del nodo.
|
ValidateUnsignedKeyExportMessage(WeaveKeyExport *keyExport, uint32_t requestedKeyId)=0
|
virtual WEAVE_ERROR
Verifica la seguridad de un mensaje de exportación de claves sin firma.
|
Funciones públicas
ComenzarCertValidación
virtual WEAVE_ERROR BeginCertValidation( WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet )=0
Prepárate para validar el certificado de intercambio de tráfico.
Se llama al inicio de la validación del certificado. Este método es responsable de preparar el conjunto de certificados proporcionado y el contexto de validación para usarlo en la validación del certificado del par. Las implementaciones deben inicializar el objeto WeaveCertificateSet proporcionado con recursos suficientes para administrar la próxima validación de certificados. La implementación también debe cargar cualquier certificado raíz o de CA de confianza necesario en el conjunto de certificados.
El contexto de validación proporcionado se inicializará con un conjunto de criterios de validación predeterminados, que la implementación puede modificar según sea necesario. La implementación debe establecer el campo effectiveTime o configurar las marcas de validación apropiadas para suprimir la validación del ciclo de vida del certificado.
La implementación se requiere para mantener cualquier recurso asignado durante beginCertValidation() hasta que se llame al EndCertValidation() correspondiente. Las implementaciones se garantizan que se llame a EndCertValidation() exactamente una vez por cada llamada exitosa a beginCertValidation().
EndCertValidation
virtual WEAVE_ERROR EndCertValidation( WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet )=0
Libera los recursos asociados con la validación del certificado de par.
Se llama cuando se completa la validación del certificado de par y la verificación de la solicitud.
GenerateNodeSignature
virtual WEAVE_ERROR GenerateNodeSignature( WeaveKeyExport *keyExport, const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer )=0
GetNodeCertSet
virtual WEAVE_ERROR GetNodeCertSet( WeaveKeyExport *keyExport, WeaveCertificateSet & certSet )=0
Obtén el conjunto de certificados de exportación de claves para el nodo local.
Se llama cuando el motor de exportación de claves se está preparando para firmar un mensaje de exportación de claves. Este método es responsable de inicializar el conjunto de certificados y cargar todos los certificados que se incluirán o se harán referencia en la firma del mensaje. El último certificado que se cargue debe ser el certificado de firma.
HandleCertValidationResult
virtual WEAVE_ERROR HandleCertValidationResult( WeaveKeyExport *keyExport, ValidationContext & validCtx, WeaveCertificateSet & certSet, uint32_t requestedKeyId )=0
Procesa los resultados de la validación del certificado de intercambio de tráfico.
Se llama cuando se completa la validación del certificado del nodo de intercambio de tráfico. Solo se llama a este método si la validación del certificado se completa correctamente. Las implementaciones pueden usar esta llamada para inspeccionar los resultados de la validación y posiblemente anular el resultado con un error.
Para un nodo que responde, se espera que el método verifique la autoridad del solicitante para exportar la clave solicitada.
En el caso de un nodo inicial, se espera que el método verifique que el certificado validado identifique de manera correcta el par al que se envió la solicitud de exportación de la clave.
Certificado de lanzamiento de Node
virtual WEAVE_ERROR ReleaseNodeCertSet( WeaveKeyExport *keyExport, WeaveCertificateSet & certSet )=0
Libera el conjunto de certificados del nodo.
Se llama cuando el motor de exportación de claves se completa con el conjunto de certificados que muestra GetNodeCertSet().
ValidateUnsignedKeyExportMessage
virtual WEAVE_ERROR ValidateUnsignedKeyExportMessage( WeaveKeyExport *keyExport, uint32_t requestedKeyId )=0
Verifica la seguridad de un mensaje de exportación de claves sin firma.
Se llama cuando el nodo recibe un mensaje de exportación de claves que no está firmado. Se espera que el método verifique la seguridad de un mensaje de exportación de claves sin firmar según el contexto de su comunicación, p.ej., a través de los atributos de una sesión de seguridad que se usa para enviar el mensaje.
Para un nodo que responde, se espera que el método verifique la autoridad del iniciador a fin de exportar la clave solicitada.
En el caso de un nodo inicial, se espera que el método verifique el mensaje que se originó legítimamente desde el par al que se envió la solicitud de exportación de claves.