nl::Weave::Profiles::Security::CertProvisioning::WeaveNodeMfrAttestDelegate

Esta é uma classe abstrata.

#include <src/lib/profiles/security/WeaveCertProvisioning.h>

Interface abstrata para a qual ações específicas da plataforma são delegadas durante o atestado do fabricante do nó do Weave.

Resumo

Funções públicas

EncodeMAInfo(TLVWriter & writer)=0
virtual WEAVE_ERROR
Codifique as informações de atestado do fabricante do Weave para o nó local.
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
Gere e codifique a assinatura de atestado do fabricante usando a chave privada de atestado do fabricante do nó local.

Funções públicas

EncodeMAInfo

virtual WEAVE_ERROR EncodeMAInfo(
  TLVWriter & writer
)=0

Codifique as informações de atestado do fabricante do Weave para o nó local.

Quando invocada, a implementação precisa gravar uma estrutura que contenha informações usadas para o atestado do fabricante do nó. As informações de atestado do fabricante precisam ser gravadas na forma de uma estrutura TLV para o gravador TLV fornecido usando a tag específica do perfil Segurança.

GenerateAndEncodeMASig

virtual WEAVE_ERROR GenerateAndEncodeMASig(
  const uint8_t *data,
  uint16_t dataLen,
  TLVWriter & writer
)=0

Gere e codifique a assinatura de atestado do fabricante usando a chave privada de atestado do fabricante do nó local.

Quando invocadas, as implementações precisam calcular uma assinatura no valor de hash fornecido usando a chave privada de atestado do fabricante do nó.

Primeiro, o valor enumerado que identifica o algoritmo de assinatura de atestado do fabricante precisa ser gravado na forma de número inteiro não assinado no gravador TLV fornecido usando a seguinte tag: os valores enumerados legais kTag_GetCertReqMsg_MfrAttestSigAlgo são retirados do namespace de constantes kOID_SigAlgo_*.

A assinatura gerada precisa ser gravada na forma de uma ECDSASignature, RSASignature, HMACSignature ou estrutura personalizada para o gravador de TLV fornecido usando uma das seguintes tags: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqMsg_MfrAttestSig_HMAC tag específica do perfil de segurança personalizado

Observação: nos casos em que a chave privada de curva elíptica correspondente do nó é mantida em um buffer local, a função de utilitário GenerateAndEncodeWeaveECDSASignature() pode ser útil para implementar esse método.