nl:: Weave:: Profiles:: Security:: KeyExport:: 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
ECDH 公钥
uint8_t ECDHPublicKey[kMaxECDHPublicKeySize]
加密和身份验证密钥
uint8_t EncryptionAndAuthenticationKey[kEncryptionAndAuthenticationKeySize]
共享密钥
uint8_t SharedSecret[kMaxECDHSharedSecretSize]
SharedSecretLen
uint16_t SharedSecretLen
公共函数
允许的配置
uint8_t AllowedConfigs() const
GenerateKeyExportReconfigure
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 )
GenerateKeyExportResponse
WEAVE_ERROR GenerateKeyExportResponse( uint8_t *buf, uint16_t bufSize, uint16_t & msgLen, const WeaveMessageInfo *msgInfo )
Init
void Init( WeaveKeyExportDelegate *keyExportDelegate, GroupKeyStoreBase *groupKeyStore )
已允许配置
bool IsAllowedConfig( uint8_t config ) const
启动程序
bool IsInitiator() const
KeyId
uint32_t KeyId() const
邮件信息
const WeaveMessageInfo * MessageInfo() const
ProcessKeyExportReconfigure
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 )
SignMessages
bool SignMessages() const
状态
uint8_t State() const