нл:: Переплетение:: Профили:: Безопасность:: СертПровисионинг:: WeaveNodeOpAuthDelegate

Это абстрактный класс.

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

Абстрактный интерфейс, которому делегируются действия, специфичные для платформы, во время операционной аутентификации узла Weave.

Краткое содержание

Общественные функции

EncodeOpCert ( TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Закодируйте рабочий сертификат Weave для локального узла.
EncodeOpRelatedCerts ( TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Закодируйте массив сертификатов, связанных с рабочим сертификатом узла.
GenerateAndEncodeOpSig (const uint8_t *hash, uint8_t hashLen, TLVWriter & writer, uint64_t tag)=0
virtual WEAVE_ERROR
Сгенерируйте и закодируйте рабочую подпись, используя рабочий секретный ключ локального узла.

Общественные функции

КодироватьОпЦерт

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

Закодируйте рабочий сертификат Weave для локального узла.

При вызове реализация должна записать рабочий сертификат локального узла. Затем рабочий сертификат следует записать в форме структуры WeaveCertificate в предоставленный модуль записи TLV с использованием указанного тега.

EncodeOpRelatedCerts

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

Закодируйте массив сертификатов, связанных с рабочим сертификатом узла.

При вызове реализация должна записать сертификаты, связанные с рабочим сертификатом локального узла. Соответствующие сертификаты затем следует записать в виде массива структур WeaveCertificate в предоставленный модуль записи TLV с использованием указанного тега.

ГенерироватьИкодироватьОпСиг

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

Сгенерируйте и закодируйте рабочую подпись, используя рабочий секретный ключ локального узла.

При вызове реализации должны вычислить подпись по заданному значению хеш-функции, используя операционный закрытый ключ узла. Сгенерированная подпись затем должна быть записана в форме структуры ECDSASignature в предоставленный модуль записи TLV с использованием указанного тега.

Примечание. В тех случаях, когда соответствующий закрытый ключ эллиптической кривой узла хранится в локальном буфере, служебная функция GenerateAndEncodeWeaveECDSASignature() может быть полезна для реализации этого метода.