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

這是抽象類別。

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

這個抽象介面用於在 Weave 節點製造商認證期間,委派特定平台專屬動作。

摘要

公開函式

EncodeMAInfo(TLVWriter & writer)=0
virtual WEAVE_ERROR
為本機節點的 Weave 製造商認證資訊進行編碼。
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
使用本機節點製造商認證私密金鑰,產生製造商認證簽章並為其編碼。

公開函式

EncodeMAInfo

virtual WEAVE_ERROR EncodeMAInfo(
  TLVWriter & writer
)=0

為本機節點的 Weave 製造商認證資訊進行編碼。

叫用時,實作應編寫一個結構,其中包含節點製造商認證使用的資訊。製造商認證資訊應以 TLV 結構的形式編寫給提供的 TLV 作者,並使用安全性設定檔專屬標記。

GenerateAndEncodeMASig

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

使用本機節點製造商認證私密金鑰,產生製造商認證簽章並為其編碼。

叫用時,實作必須使用節點的製造商認證私密金鑰,計算指定雜湊值的簽名。

首先,識別製造商認證簽章演算法的列舉值應以未定義整數的形式,寫入提供的 TLV 寫入器,並使用以下標記:kTag_GetCertReqMsg_MfrAttestSigAlgo 法律列舉值取自 kOID_SigAlgo_* 常數命名空間。

接著,產生的簽章應以 ECDSA 簽名、RSASignature、HMACSignature 或自訂結構的形式,編寫成提供的 TLV 寫入者,請使用下列其中一個標記:kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqM.

注意:如果節點的對應橢圓曲線私密金鑰保存在本機緩衝區中,GenerateAndEncodeWeaveECDSASignature() 公用程式函式就能派上用場。