nl :: Tejido:: Perfiles: Seguridad:: Aprovisionamiento de certificados :: WeaveNodeMfrAttestDelegate
Esto 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 Weave.
Resumen
Funciones publicas | |
---|---|
EncodeMAInfo (TLVWriter & writer)=0 | virtual WEAVE_ERROR Codifique 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 Genere y codifique la firma de certificación del fabricante utilizando la clave privada de certificación del fabricante del nodo local. |
Funciones publicas
EncodeMAInfo
virtual WEAVE_ERROR EncodeMAInfo( TLVWriter & writer )=0
Codifique 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 la información utilizada para la certificación del fabricante del nodo. La información del fabricante certificación debe ser escrito en la forma de un TLV estructura a la suministrada TLV escritor utilizando la Seguridad etiqueta perfil específico.
GenerateAndEncodeMASig
virtual WEAVE_ERROR GenerateAndEncodeMASig( const uint8_t *data, uint16_t dataLen, TLVWriter & writer )=0
Genere y codifique la firma de certificación del fabricante utilizando la clave privada de certificación del fabricante del nodo local.
Cuando se invoca, las implementaciones deben calcular una firma en el valor hash dado utilizando la clave privada de atestación del fabricante del nodo.
En primer lugar, el valor enumerado que identifica el algoritmo de firma de atestación del fabricante debe escribirse en forma de entero sin clasificar en el escritor de TLV proporcionado utilizando la siguiente etiqueta: kTag_GetCertReqMsg_MfrAttestSigAlgo Los valores enumerados legales se toman del espacio de nombres constante kOID_SigAlgo_ *.
A continuación, la firma generada debe escribirse en forma de ECDSASignature, RSASignature, HMACSignature o estructura personalizada en el escritor de TLV suministrado utilizando una de las siguientes etiquetas: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestagtte_gst_GsgCert_RSA custom security profile
Nota: en los casos en que la clave privada de la curva elíptica correspondiente del nodo se mantenga en un búfer local, la función de utilidad GenerateAndEncodeWeaveECDSASignature () puede ser útil para implementar este método.