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

Essa é 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
Codificar 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
Gerar e codificar 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

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

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

GenerateAndEncodeMASig

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

Gerar e codificar 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 escrito na forma de um número inteiro não assinado no gravador TLV fornecido usando a seguinte tag: os valores enumerados de kTag_GetCertReqMsg_MfrAttestSigAlgo Legal são extraídos do namespace constante kOID_SigAlgo_*.

A assinatura gerada deve ser escrita na forma de uma ECDSASignature, RSASignature, HMACSignature ou de estrutura personalizada para o gravador TLV fornecido, usando uma das tags a seguir: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqMsg_RSig security

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