nl::Weave::Profiles::Security::WeaveSignatureGeneratorBase

This is an abstract class.

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

Provides generic functionality for generating WeaveSignatures.

Summary

This is an abstract base class that can be used encode WeaveSignature TLV structures. This class provides the common functionality for encoding such signatures but delegates to the subclass to compute and encode the signature data field.

Inheritance

Direct Known Subclasses:
  nl::Weave::Profiles::Security::KeyExport::__FINAL
  nl::Weave::Profiles::Security::WeaveSignatureGenerator

Public types

@290 enum

Public attributes

CertSet
Flags
uint16_t
SigAlgoOID
OID
SigningCert

Public functions

GenerateSignature(const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer)
GenerateSignature(const uint8_t *msgHash, uint8_t msgHashLen, uint8_t *sigBuf, uint16_t sigBufSize, uint16_t & sigLen)
GenerateSignature(const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer, uint64_t tag)
virtual WEAVE_ERROR

Protected functions

GenerateSignatureData(const uint8_t *msgHash, uint8_t msgHashLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
WeaveSignatureGeneratorBase(WeaveCertificateSet & certSet)

Public types

@290

 @290

Public attributes

CertSet

WeaveCertificateSet & CertSet

Flags

uint16_t Flags

SigAlgoOID

OID SigAlgoOID

SigningCert

WeaveCertificateData * SigningCert

Public functions

GenerateSignature

WEAVE_ERROR GenerateSignature(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  TLVWriter & writer
)

GenerateSignature

WEAVE_ERROR GenerateSignature(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  uint8_t *sigBuf,
  uint16_t sigBufSize,
  uint16_t & sigLen
)

GenerateSignature

virtual WEAVE_ERROR GenerateSignature(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  TLVWriter & writer,
  uint64_t tag
)

Protected functions

GenerateSignatureData

virtual WEAVE_ERROR GenerateSignatureData(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  TLVWriter & writer
)=0

WeaveSignatureGeneratorBase

 WeaveSignatureGeneratorBase(
  WeaveCertificateSet & certSet
)