nl:: Weave:: Profiles:: Security:: 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
Generar y codificar la firma de certificación del fabricante con la clave privada de certificación del fabricante del nodo local
|
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 la información utilizada para la certificación del fabricante del nodo. La información de certificación del fabricante se debe escribir en una estructura TLV al escritor TLV proporcionado con la etiqueta específica del perfil de seguridad.
GenerateAndEncodeMASig
virtual WEAVE_ERROR GenerateAndEncodeMASig( const uint8_t *data, uint16_t dataLen, TLVWriter & writer )=0
Generar y codificar la firma de certificación del fabricante con la clave privada de certificación del fabricante del nodo local
Cuando se invocan, las implementaciones deben calcular una firma para el valor de hash determinado usando la clave privada de certificación del fabricante del nodo.
Primero, el valor enumerado que identifica el algoritmo de firma de certificación del fabricante se debe escribir como un número entero no registrado en el escritor TLV proporcionado con la siguiente etiqueta: Los valores enumerados de kTag_GetCertReqMsg_MfrAttestSigAlgo Legal se toman del espacio de nombres de la constante kOID_SigAlgo_*.
La firma generada se debe escribir en el formato de una firma ECDSA, RSASignature, HMACSignature o una estructura personalizada para el escritor TLV proporcionado con una de las siguientes etiquetas: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqMtestSig_specific_RSA
Nota: En los casos en que la clave privada de 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.