нл:: Переплетение:: Профили:: Безопасность:: КлючЭкспорт:: WeaveKeyExport
#include <src/lib/profiles/security/WeaveKeyExport.h>
Реализует основную логику протокола экспорта ключей Weave.
Краткое содержание
Публичные типы | |
---|---|
@260 { | перечисление Текущее состояние объекта WeaveKeyExport . |
Публичные атрибуты | |
---|---|
ECDHPrivateKey [kMaxECDHPrivateKeySize] | uint8_t |
ECDHPrivateKeyLen | uint16_t |
ECDHPublicKey [kMaxECDHPublicKeySize] | uint8_t |
EncryptionAndAuthenticationKey [kEncryptionAndAuthenticationKeySize] | uint8_t |
GroupKeyStore | Указатель на объект хранилища ключей группы платформы. |
KeyExportDelegate | Указатель на ключевой объект делегата экспорта. |
SharedSecret [kMaxECDHSharedSecretSize] | uint8_t |
SharedSecretLen | uint16_t |
Общественные функции | |
---|---|
AllowedConfigs () const | uint8_t |
GenerateKeyExportReconfigure (uint8_t *buf, uint16_t bufSize, uint16_t & msgLen) | |
GenerateKeyExportRequest (uint8_t *buf, uint16_t bufSize, uint16_t & msgLen, uint8_t proposedConfig, uint32_t keyId, bool signMessages) | |
GenerateKeyExportResponse (uint8_t *buf, uint16_t bufSize, uint16_t & msgLen, const WeaveMessageInfo *msgInfo) | |
Init ( WeaveKeyExportDelegate *keyExportDelegate, GroupKeyStoreBase *groupKeyStore) | void |
IsAllowedConfig (uint8_t config) const | bool |
IsInitiator () const | bool |
KeyId () const | uint32_t |
MessageInfo () const | const WeaveMessageInfo * |
ProcessKeyExportReconfigure (const uint8_t *buf, uint16_t msgSize, uint8_t & config) | |
ProcessKeyExportRequest (const uint8_t *buf, uint16_t msgSize, const WeaveMessageInfo *msgInfo) | |
ProcessKeyExportResponse (const uint8_t *buf, uint16_t msgSize, const WeaveMessageInfo *msgInfo, uint8_t *exportedKeyBuf, uint16_t exportedKeyBufSize, uint16_t & exportedKeyLen, uint32_t & exportedKeyId) | |
ProtocolConfig () const | uint8_t |
Reset (void) | void |
SetAllowedConfigs (uint8_t allowedConfigs) | void |
Shutdown (void) | void |
SignMessages () const | bool |
State () const | uint8_t |
Публичные типы
@260
@260
Текущее состояние объекта WeaveKeyExport .
Характеристики | |
---|---|
kState_InitiatorDone | Состояние инициатора, указывающее, что ответ на ключевой экспорт был обработан. |
kState_InitiatorGeneratingRequest | Состояние инициатора, указывающее, что создается сообщение с запросом на экспорт ключа. |
kState_InitiatorReconfigureProcessed | Состояние инициатора, указывающее, что сообщение о перенастройке экспорта ключа было обработано. |
kState_InitiatorRequestGenerated | Состояние инициатора, указывающее, что сообщение с запросом на экспорт ключа создано. |
kState_Reset | Начальное (и конечное) состояние объекта WeaveKeyExport . |
kState_ResponderDone | Состояние ответчика, указывающее, что было создано ответное сообщение экспорта ключа. |
kState_ResponderProcessingRequest | Состояние ответчика, указывающее, что сообщение с запросом на экспорт ключа обрабатывается. |
kState_ResponderRequestProcessed | Состояние ответчика, указывающее, что сообщение с запросом на экспорт ключа обработано. |
Публичные атрибуты
ECDHЧастный ключ
uint8_t ECDHPrivateKey[kMaxECDHPrivateKeySize]
ECDHPrivateKeyLen
uint16_t ECDHPrivateKeyLen
ECDHPublicKey
uint8_t ECDHPublicKey[kMaxECDHPublicKeySize]
ШифрованиеИАутентификацияКлюч
uint8_t EncryptionAndAuthenticationKey[kEncryptionAndAuthenticationKeySize]
Групповое хранилище ключей
GroupKeyStoreBase * GroupKeyStore
Указатель на объект хранилища ключей группы платформы.
KeyExportDelegate
WeaveKeyExportDelegate * KeyExportDelegate
Указатель на ключевой объект делегата экспорта.
Общийсекрет
uint8_t SharedSecret[kMaxECDHSharedSecretSize]
SharedSecretLen
uint16_t SharedSecretLen
Общественные функции
Разрешенные конфигурации
uint8_t AllowedConfigs() const
ГенератеКейЭкспортРеконфигуре
WEAVE_ERROR GenerateKeyExportReconfigure( uint8_t *buf, uint16_t bufSize, uint16_t & msgLen )
GenerateKeyExportRequest
WEAVE_ERROR GenerateKeyExportRequest( uint8_t *buf, uint16_t bufSize, uint16_t & msgLen, uint8_t proposedConfig, uint32_t keyId, bool signMessages )
ГенератеКейЭкспортОтклик
WEAVE_ERROR GenerateKeyExportResponse( uint8_t *buf, uint16_t bufSize, uint16_t & msgLen, const WeaveMessageInfo *msgInfo )
Инициализировать
void Init( WeaveKeyExportDelegate *keyExportDelegate, GroupKeyStoreBase *groupKeyStore )
Исалловедконфиг
bool IsAllowedConfig( uint8_t config ) const
Исинициатор
bool IsInitiator() const
идентификатор ключа
uint32_t KeyId() const
Информация о сообщении
const WeaveMessageInfo * MessageInfo() const
ПроцессКейЭкспортРеконфигуре
WEAVE_ERROR ProcessKeyExportReconfigure( const uint8_t *buf, uint16_t msgSize, uint8_t & config )
Процесскэйэкспортрекуест
WEAVE_ERROR ProcessKeyExportRequest( const uint8_t *buf, uint16_t msgSize, const WeaveMessageInfo *msgInfo )
ПроцессКейЭкспортОтклик
WEAVE_ERROR ProcessKeyExportResponse( const uint8_t *buf, uint16_t msgSize, const WeaveMessageInfo *msgInfo, uint8_t *exportedKeyBuf, uint16_t exportedKeyBufSize, uint16_t & exportedKeyLen, uint32_t & exportedKeyId )
ПротоколКонфигурация
uint8_t ProtocolConfig() const
Перезагрузить
void Reset( void )
SetAllowedConfigs
void SetAllowedConfigs( uint8_t allowedConfigs )
Неисправность
void Shutdown( void )
ВойтиСообщения
bool SignMessages() const
Состояние
uint8_t State() const