nl:: Weave:: Perfiles:: Seguridad: CertProvisioning:: WeaveNodeMfrAttestDelegate
Esta es una clase abstracta.
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
Interfaz abstracta a la que se delegan acciones específicas de la plataforma durante la certificación del fabricante del nodo de Weave.
Resumen
Funciones públicas |
|
---|---|
EncodeMAInfo(TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Codifica la información de certificación del fabricante de Weave para el nodo local.
|
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Genera y codifica la firma de certificación del fabricante con la clave privada de certificación del fabricante local del nodo.
|
Funciones públicas
EncodeMAInfo
virtual WEAVE_ERROR EncodeMAInfo( TLVWriter & writer )=0
Codifica la información de certificación del fabricante de Weave para el nodo local.
Cuando se invoca, la implementación debe escribir una estructura que contenga información utilizada para la certificación del fabricante del nodo. La información de la certificación del fabricante se debe escribir en la forma de una estructura TLV para el escritor TLV proporcionado con la etiqueta específica del perfil de seguridad.
Generar y codificar
virtual WEAVE_ERROR GenerateAndEncodeMASig( const uint8_t *data, uint16_t dataLen, TLVWriter & writer )=0
Genera y codifica la firma de certificación del fabricante con la clave privada de certificación del fabricante local del nodo.
Cuando se invocan, las implementaciones deben calcular una firma en el valor de hash determinado con la clave privada de certificación del fabricante del nodo.
Primero, el valor enumerado que identifica el algoritmo de firma de certificación de fabricante se debe escribir en forma de número entero sin acceder al escritor TLV proporcionado con la siguiente etiqueta: los valores enumerados de kTag_GetCertReqMsg_MfrAttestSigAlgo Legal se toman del espacio de nombres constante kOID_SigAlgo_*.
La firma generada se debe escribir en el formato de una ECDSAFirma, RSASignature, HMACSignature o una estructura personalizada para el escritor TLV proporcionado usando una de las siguientes etiquetas: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqM
Nota: En los casos en que la clave privada de curva elíptica correspondiente al nodo se mantiene en un búfer local, la función de utilidad GenerateAndEncodeWeaveECDSASignature() puede ser útil para implementar este método.