NL::编织::简介::安全::编织证书集

概括

构造函数和析构函数

WeaveCertificateSet (void)

公共类型

AllocFunct )(size_t size)类型定义
void *(*
FreeFunct )(void *p)类型定义
void(*

公共属性

CertCount
uint8_t
Certs
MaxCerts
uint8_t

受保护的属性

mAllocFunct
AllocFunct
mDecodeBuf
uint8_t *
mDecodeBufSize
uint16_t
mFreeFunct
FreeFunct

公共职能

AddTrustedKey (uint64_t caId, uint32_t curveId, const EncodedECPublicKey & pubKey, const uint8_t *pubKeyId, uint16_t pubKeyIdLen)
Clear (void)
void
FindCert (const CertificateKeyId & subjectKeyId) const
FindValidCert (const WeaveDN & subjectDN, const CertificateKeyId & subjectKeyId, ValidationContext & context, WeaveCertificateData *& cert)
GenerateECDSASignature (const uint8_t *msgHash, uint8_t msgHashLen, WeaveCertificateData & cert, const EncodedECPrivateKey & privKey, EncodedECDSASignature & encodedSig)
Init (uint8_t maxCerts, uint16_t decodeBufSize)
Init (uint8_t maxCerts, uint16_t decodeBufSize, AllocFunct allocFunct, FreeFunct freeFunct)
Init ( WeaveCertificateData *certBuf, uint8_t certBufSize, uint8_t *decodeBuf, uint16_t decodeBufSize)
LastCert (void) const
LoadCert (const uint8_t *weaveCert, uint32_t weaveCertLen, uint16_t decodeFlags, WeaveCertificateData *& cert)
LoadCert (TLVReader & reader, uint16_t decodeFlags, WeaveCertificateData *& cert)
LoadCerts (const uint8_t *encodedCerts, uint32_t encodedCertsLen, uint16_t decodeFlags)
LoadCerts (TLVReader & reader, uint16_t decodeFlags)
Release (void)
void
SaveCerts (TLVWriter & writer, WeaveCertificateData *firstCert, bool includeTrusted)
ValidateCert ( WeaveCertificateData & cert, ValidationContext & context)
VerifyECDSASignature (const uint8_t *msgHash, uint8_t msgHashLen, const EncodedECDSASignature & encodedSig, WeaveCertificateData & cert)

受保护的功能

FindValidCert (const WeaveDN & subjectDN, const CertificateKeyId & subjectKeyId, ValidationContext & context, uint16_t validateFlags, uint8_t depth, WeaveCertificateData *& cert)
ValidateCert ( WeaveCertificateData & cert, ValidationContext & context, uint16_t validateFlags, uint8_t depth)

公共类型

分配函数

void *(* AllocFunct)(size_t size)

自由函数

void(* FreeFunct)(void *p)

公共属性

证书计数

uint8_t CertCount

证书

WeaveCertificateData * Certs

最大证书数

uint8_t MaxCerts

受保护的属性

分配函数

AllocFunct mAllocFunct

解码缓冲区

uint8_t * mDecodeBuf

解码缓冲区大小

uint16_t mDecodeBufSize

自由函数

FreeFunct mFreeFunct

公共职能

添加可信密钥

WEAVE_ERROR AddTrustedKey(
  uint64_t caId,
  uint32_t curveId,
  const EncodedECPublicKey & pubKey,
  const uint8_t *pubKeyId,
  uint16_t pubKeyIdLen
)

清除

void Clear(
  void
)

查找证书

WeaveCertificateData * FindCert(
  const CertificateKeyId & subjectKeyId
) const 

查找有效证书

WEAVE_ERROR FindValidCert(
  const WeaveDN & subjectDN,
  const CertificateKeyId & subjectKeyId,
  ValidationContext & context,
  WeaveCertificateData *& cert
)

生成ECDSA签名

WEAVE_ERROR GenerateECDSASignature(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  WeaveCertificateData & cert,
  const EncodedECPrivateKey & privKey,
  EncodedECDSASignature & encodedSig
)

在里面

WEAVE_ERROR Init(
  uint8_t maxCerts,
  uint16_t decodeBufSize
)

在里面

WEAVE_ERROR Init(
  uint8_t maxCerts,
  uint16_t decodeBufSize,
  AllocFunct allocFunct,
  FreeFunct freeFunct
)

在里面

WEAVE_ERROR Init(
  WeaveCertificateData *certBuf,
  uint8_t certBufSize,
  uint8_t *decodeBuf,
  uint16_t decodeBufSize
)

最后证书

WeaveCertificateData * LastCert(
  void
) const 

加载证书

WEAVE_ERROR LoadCert(
  const uint8_t *weaveCert,
  uint32_t weaveCertLen,
  uint16_t decodeFlags,
  WeaveCertificateData *& cert
)

加载证书

WEAVE_ERROR LoadCert(
  TLVReader & reader,
  uint16_t decodeFlags,
  WeaveCertificateData *& cert
)

加载证书

WEAVE_ERROR LoadCerts(
  const uint8_t *encodedCerts,
  uint32_t encodedCertsLen,
  uint16_t decodeFlags
)

加载证书

WEAVE_ERROR LoadCerts(
  TLVReader & reader,
  uint16_t decodeFlags
)

释放

void Release(
  void
)

保存证书

WEAVE_ERROR SaveCerts(
  TLVWriter & writer,
  WeaveCertificateData *firstCert,
  bool includeTrusted
)

验证证书

WEAVE_ERROR ValidateCert(
  WeaveCertificateData & cert,
  ValidationContext & context
)

验证ECDSA签名

WEAVE_ERROR VerifyECDSASignature(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const EncodedECDSASignature & encodedSig,
  WeaveCertificateData & cert
)

编织证书集

 WeaveCertificateSet(
  void
)

受保护的功能

查找有效证书

WEAVE_ERROR FindValidCert(
  const WeaveDN & subjectDN,
  const CertificateKeyId & subjectKeyId,
  ValidationContext & context,
  uint16_t validateFlags,
  uint8_t depth,
  WeaveCertificateData *& cert
)

验证证书

WEAVE_ERROR ValidateCert(
  WeaveCertificateData & cert,
  ValidationContext & context,
  uint16_t validateFlags,
  uint8_t depth
)