nl:: Weave:: Profiles:: Security:: CertProvisioning:: WeaveNodeMfrAttestDelegate
Dies ist eine abstrakte Klasse.
#include <src/lib/profiles/security/WeaveCertProvisioning.h>
Abstrakte Schnittstelle, an die plattformspezifische Aktionen während der Attestierung des Weave-Knotenherstellers delegiert werden.
Zusammenfassung
Öffentliche Funktionen |
|
---|---|
EncodeMAInfo(TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Codieren Sie die Attestierungsinformationen des Weave-Herstellers für den lokalen Knoten.
|
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
|
virtual WEAVE_ERROR
Generieren und codieren Sie die Herstellerattestierungssignatur mit dem privaten Schlüssel der Herstellerattestierung des lokalen Knotens.
|
Öffentliche Funktionen
EncodeMAInfo
virtual WEAVE_ERROR EncodeMAInfo( TLVWriter & writer )=0
Codieren Sie die Attestierungsinformationen des Weave-Herstellers für den lokalen Knoten.
Wenn die Implementierung aufgerufen wird, sollte sie eine Struktur schreiben, die Informationen für die Attestierung des Knotenherstellers enthält. Die Informationen zur Herstellerbescheinigung sollten in Form einer TLV an den angegebenen TLV-Autor gesendet werden. Verwenden Sie dazu das Tag für das Sicherheitsprofil.
GenerateAndEncodeMASig
virtual WEAVE_ERROR GenerateAndEncodeMASig( const uint8_t *data, uint16_t dataLen, TLVWriter & writer )=0
Generieren und codieren Sie die Herstellerattestierungssignatur mit dem privaten Schlüssel der Herstellerattestierung des lokalen Knotens.
Wenn Implementierungen aufgerufen werden, müssen sie eine Signatur für den angegebenen Hashwert mithilfe des privaten Schlüssels der Herstellerattestierung des Knotens berechnen.
Zunächst sollte der Aufzählungswert, der den Algorithmus für die Attestierungssignatur des Herstellers identifiziert, in Form einer nicht signierten Ganzzahl in den bereitgestellten TLV-Schreiber geschrieben werden. Verwenden Sie dazu das folgende Tag: kTag_GetCertReqMsg_MfrAttestSigAlgo Legal Die Aufzählungswerte stammen aus dem Konstanten-Namespace kOID_SigAlgo_*.
Die generierte Signatur sollte dann in Form einer ECDSASignature, RSASignature, HMACSignature oder benutzerdefinierten Struktur an den bereitgestellten TLV-Autor gesendet werden. Verwenden Sie dazu eines der folgenden Tags: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSigCertReqMsg_MfrAttestSigCertReqMsg_MfrAttestSigCertReqMsg_MfrAttestSigCertReqMsg_MfrAttestSigCertReqMsg_MfrAttestSigCertReqMsg_MfrAttestSig_RStMsg_HMACReqTest
Hinweis: In Fällen, in denen der entsprechende private Schlüssel für elliptische Kurven des Knotens in einem lokalen Zwischenspeicher gespeichert ist, kann die Dienstfunktion GenerateAndEncodeWeaveECDSASignature() für die Implementierung dieser Methode nützlich sein.