nl::Weave::Profiles::Security::CertProvisioning::WeaveNodeOpAuthDelegate

Questa è una classe astratta.

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

Interfaccia astratta a cui vengono delegati le azioni specifiche della piattaforma durante l'autenticazione operativa del nodo Weave.

Riepilogo

Funzioni pubbliche

EncodeOpCert(TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Codifica il certificato operativo Weave per il nodo locale.
EncodeOpRelatedCerts(TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Codifica l'array di certificati relativi al certificato operativo del nodo.
GenerateAndEncodeOpSig(const uint8_t *hash, uint8_t hashLen, TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Genera e codifica la firma operativa utilizzando la chiave privata operativa del nodo locale.

Funzioni pubbliche

EncodeOpCert

virtual WEAVE_ERROR EncodeOpCert(
  TLVWriter & writer,
  uint64_t tag
)=0

Codifica il certificato operativo Weave per il nodo locale.

Se richiamata, l'implementazione deve scrivere un certificato operativo del nodo locale. Il certificato operativo deve quindi essere scritto sotto forma di struttura WeaveCertificate allo scrittore TLV fornito utilizzando il tag specificato.

EncodeOpRelatedCerts

virtual WEAVE_ERROR EncodeOpRelatedCerts(
  TLVWriter & writer,
  uint64_t tag
)=0

Codifica l'array di certificati relativi al certificato operativo del nodo.

Quando viene richiamata, l'implementazione deve scrivere certificati relativi al certificato operativo del nodo locale. I relativi certificati dovrebbero quindi essere scritti sotto forma di array di strutture WeaveCertificate nello scrittore TLV fornito utilizzando il tag specificato.

GenerateAndEncodeOpSig

virtual WEAVE_ERROR GenerateAndEncodeOpSig(
  const uint8_t *hash,
  uint8_t hashLen,
  TLVWriter & writer,
  uint64_t tag
)=0

Genera e codifica la firma operativa utilizzando la chiave privata operativa del nodo locale.

Se richiamato, le implementazioni devono calcolare una firma sul valore hash specificato usando la chiave privata operativa del nodo. La firma generata deve quindi essere scritta sotto forma di struttura ECDSASignature all'autore TLV fornito utilizzando il tag specificato.

Nota: nei casi in cui la chiave privata della curva ellittica corrispondente al nodo si trova in un buffer locale, la funzione di utilità GenerateAndEncodeWeaveECDSASignature() può essere utile per implementare questo metodo.