нл:: Переплетение:: Профили:: Безопасность:: СертПровисионинг:: 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
Создайте и закодируйте подпись подтверждения производителя, используя закрытый ключ подтверждения производителя локального узла.

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

КодироватьMAInfo

virtual WEAVE_ERROR EncodeMAInfo(
  TLVWriter & writer
)=0

Закодируйте информацию о аттестации производителя Weave для локального узла.

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

ГенерироватьИкодироватьMASig

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

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

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

Во-первых, перечисляемое значение, идентифицирующее алгоритм подписи аттестации производителя, должно быть записано в виде целого числа без знака в предоставленный модуль записи TLV с использованием следующего тега: kTag_GetCertReqMsg_MfrAttestSigAlgo Допустимые перечислимые значения берутся из пространства имен констант kOID_SigAlgo_*.

Сгенерированную подпись затем следует записать в форме ECDSASignature, RSASignature, HMACSignature или пользовательской структуры в предоставленный модуль записи TLV с использованием одного из следующих тегов: конкретный тег

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